Hi Johan, On 5/31/2026 11:03 PM, Johan Jonker wrote: > Remove rockchip_usb2_phy.c and replace it by phy-rockchip-usb2.c > Adjust defconfigs. Enable CONFIG_DM_RESET where needed to compile > the phy driver. Add grf bind function for usbphy node. > Remove a variable no longer needed from an include file.
This patch is trying to do too much at once, please split this into something like: - Add .bind = dm_scan_fdt_dev to syscon_rk drivers - Adjust defconfigs to use the new phy driver - Remove old code > > Signed-off-by: Johan Jonker <[email protected]> > --- > > Changed V3: > rebase > use CONFIG_IS_ENABLED > > Changed V2 RESEND: > Add include > Add grf bind function > Restyle > --- > arch/arm/mach-rockchip/board.c | 28 ----- > arch/arm/mach-rockchip/rk3066/syscon_rk3066.c | 26 ++++ > arch/arm/mach-rockchip/rk3188/syscon_rk3188.c | 27 +++++ > arch/arm/mach-rockchip/rk3288/syscon_rk3288.c | 27 +++++ > configs/chromebit_mickey_defconfig | 2 +- > configs/chromebook_jerry_defconfig | 2 +- > configs/chromebook_minnie_defconfig | 2 +- > configs/chromebook_speedy_defconfig | 2 +- > configs/evb-rk3288-rk808_defconfig | 2 +- > configs/firefly-rk3288_defconfig | 4 +- > configs/miqi-rk3288_defconfig | 4 +- > configs/mk808_defconfig | 2 +- > configs/phycore-rk3288_defconfig | 3 +- > configs/popmetal-rk3288_defconfig | 3 +- > configs/rock-pi-n8-rk3288_defconfig | 2 +- > configs/rock2_defconfig | 3 +- > configs/rock_defconfig | 3 +- > configs/tinker-rk3288_defconfig | 4 +- > configs/tinker-s-rk3288_defconfig | 4 +- > configs/vyasa-rk3288_defconfig | 2 +- > drivers/usb/phy/Kconfig | 3 - > drivers/usb/phy/Makefile | 1 - > drivers/usb/phy/rockchip_usb2_phy.c | 113 ------------------ > include/usb/dwc2_udc.h | 1 - > 24 files changed, 104 insertions(+), 166 deletions(-) > delete mode 100644 drivers/usb/phy/rockchip_usb2_phy.c [snip] > diff --git a/arch/arm/mach-rockchip/rk3066/syscon_rk3066.c > b/arch/arm/mach-rockchip/rk3066/syscon_rk3066.c > index ff269b53b542..27628b6749fe 100644 > --- a/arch/arm/mach-rockchip/rk3066/syscon_rk3066.c > +++ b/arch/arm/mach-rockchip/rk3066/syscon_rk3066.c > @@ -5,10 +5,33 @@ > */ > > #include <dm.h> > +#include <dm/lists.h> > #include <log.h> > #include <syscon.h> > #include <asm/arch-rockchip/clock.h> > > +#if CONFIG_IS_ENABLED(OF_REAL) && CONFIG_IS_ENABLED(PHY_ROCKCHIP_USB2) > +static int rk3066_syscon_bind(struct udevice *dev) > +{ > + if (dev->driver_data == ROCKCHIP_SYSCON_GRF) { > + ofnode subnode = ofnode_find_subnode(dev_ofnode(dev), "usbphy"); > + > + if (ofnode_valid(subnode)) { > + struct udevice *usbphy_dev; > + int ret; > + > + ret = device_bind_driver_to_node(dev, > "rockchip_usbphy", "usbphy", > + subnode, &usbphy_dev); > + if (ret) > + return ret; > + > + usbphy_dev->driver_data = > usbphy_dev->driver->of_match->data; > + } > + } > + > + return 0; > +} > +#endif > static const struct udevice_id rk3066_syscon_ids[] = { > { .compatible = "rockchip,rk3066-noc", .data = ROCKCHIP_SYSCON_NOC }, > { .compatible = "rockchip,rk3066-grf", .data = ROCKCHIP_SYSCON_GRF }, > @@ -20,6 +43,9 @@ U_BOOT_DRIVER(syscon_rk3066) = { > .name = "rk3066_syscon", > .id = UCLASS_SYSCON, > .of_match = rk3066_syscon_ids, > +#if CONFIG_IS_ENABLED(OF_REAL) && CONFIG_IS_ENABLED(PHY_ROCKCHIP_USB2) > + .bind = rk3066_syscon_bind, > +#endif Please use what the other rk syscon drivers are using: #if CONFIG_IS_ENABLED(OF_REAL) .bind = dm_scan_fdt_dev, #endif Or are there any reason why you try to restrict this to just usbphy? Regards, Jonas > }; > > #if CONFIG_IS_ENABLED(OF_PLATDATA) [snip]

