[PATCH v4 00/22] ppc: qemu: Add eTSEC support
Bin Meng
bmeng.cn at gmail.com
Sun Mar 14 13:14:44 CET 2021
QEMU ppce500 machine can dynamically instantiate an eTSEC device
if "-device eTSEC" is given to QEMU.
This series updates the fixed-link ethernet PHY driver as well as
the Freescale eTSEC driver to support the QEMU ppce500 board.
3 patches related to fixed phy in v1 are dropped in v2 as the changes
were done by Vladimir's fixed phy & Sandbox DSA series [1]. Vladimir's
series is now included in v2 to avoid dependencies.
This cover letter is cc'ed to QEMU mailing list for a heads-up.
A future patch will be sent to QEMU mailing list to bring its in-tree
U-Boot source codes up-to-date.
Azure results: PASS
https://dev.azure.com/bmeng/GitHub/_build/results?buildId=343&view=results
This series is avaiable at u-boot-x86/eTSEC for testing.
[1] https://patchwork.ozlabs.org/project/uboot/patch/20210216224804.3355044-2-olteanv@gmail.com/
Changes in v4:
- describe "ranges" is required fo the alternate description
- make platform_bus_map_region() return void
Changes in v3:
- mention that U-Boot deliberately ignores the 'phy_id' and
unconditionally uses PHY_FIXED_ID
- update the code logic to prefer the new binding if both new and
old bindings exist
- sort variable definitions by line length
- reuse the sandbox dsa nodes for the fixed-link testing
- new patch: net: tsec: Use map_physmem() directly instead of dev_remap_addr()
- add "ranges" in the alternate example
- keep the variable definitions sorted
- invert the strncmp logic to reduce the indentation level
- add a comment to mention only the first "queue-group" is used
- call the same map_physmem() in the common code path
- extract platform bus virtual memory mapping codes to a new routine
- add a "break" in case multiple "qemu,platform" nodes exist
Changes in v2:
- move device tree parsing from xilinxgmiitorgmii_probe() to
xilinxgmiitorgmii_config() and use OF APIs
- new patch: split from <20210216224804.3355044-4-olteanv at gmail.com>
- include <asm/global_data.h>
- use a Kconfig option CONFIG_SIMPLE_BUS_CORRECT_RANGE to control the
new behavior for boards that want this
- default y if SANDBOX for CONFIG_SIMPLE_BUS_CORRECT_RANGE
- turn on CONFIG_SIMPLE_BUS_CORRECT_RANGE in qemu-ppce500_defconfig
Bin Meng (18):
dt-bindings: net: Add the old DT bindings for "fixed-link"
of: extra: Introduce ofnode_phy_is_fixed_link() API
dm: mdio: Use ofnode_phy_is_fixed_link() API
net: phy: xilinx: Be compatible with live OF tree
net: phy: xilinx: Drop #ifdef CONFIG_DM_ETH around
phy_connect_gmii2rgmii()
net: phy: Simplify the logic of phy_connect_fixed()
net: phy: fixed: Make driver ops static
net: phy: fixed: Add the missing ending newline
net: phy: fixed: Support the old DT binding
test: dm: Add a case to test ofnode_phy_is_fixed_link()
net: tsec: Use map_physmem() directly instead of dev_remap_addr()
dt-bindings: net: Update Freescale TSEC to support "queue-group"
net: tsec: Support <reg> property from the subnode "queue-group"
dm: core: Correctly read <ranges> of simple-bus
test: dm: Add a test case for simple-bus <ranges>
ppc: qemu: Create a virtual memory mapping of the platform bus
ppc: qemu: Enable eTSEC support
doc: board: qemu-ppce500: Document eTSEC usage
Claudiu Manoil (1):
sandbox: Add a DSA sandbox driver and unit test
Vladimir Oltean (3):
net: phy: fixed: Be compatible with live OF tree
net: phy: fixed: Drop #ifdef CONFIG_DM_ETH around phy_connect_fixed
net: tsec: Use dm_eth_phy_connect() directly for the DM case
arch/Kconfig | 2 +
arch/sandbox/dts/test.dts | 44 +++++
board/emulation/qemu-ppce500/Kconfig | 6 +
board/emulation/qemu-ppce500/qemu-ppce500.c | 29 +++
configs/qemu-ppce500_defconfig | 5 +
doc/board/emulation/qemu-ppce500.rst | 5 +
doc/device-tree-bindings/net/fixed-link.txt | 48 +++--
doc/device-tree-bindings/net/fsl-tsec-phy.txt | 19 +-
drivers/core/Kconfig | 14 ++
drivers/core/of_extra.c | 23 +++
drivers/core/simple-bus.c | 32 +++-
drivers/net/Kconfig | 9 +
drivers/net/Makefile | 1 +
drivers/net/dsa_sandbox.c | 179 ++++++++++++++++++
drivers/net/phy/Kconfig | 1 +
drivers/net/phy/fixed.c | 54 ++++--
drivers/net/phy/phy.c | 63 +++---
drivers/net/phy/xilinx_gmii2rgmii.c | 61 +++---
drivers/net/tsec.c | 36 +++-
include/configs/sandbox.h | 2 +
include/dm/of_extra.h | 20 ++
include/dm/simple_bus.h | 6 +-
net/mdio-uclass.c | 7 +-
test/dm/Makefile | 2 +
test/dm/dsa.c | 82 ++++++++
test/dm/eth.c | 10 +-
test/dm/of_extra.c | 18 ++
test/dm/simple-bus.c | 33 ++++
28 files changed, 691 insertions(+), 120 deletions(-)
create mode 100644 drivers/net/dsa_sandbox.c
create mode 100644 test/dm/dsa.c
create mode 100644 test/dm/simple-bus.c
--
2.25.1
More information about the U-Boot
mailing list