Add the usb5744/usb2744 hub driver which does the reset gpio toggling and the i2c initialization sequence.
Tested the USB5744/USB2744 usb hub for usb0, usb1 with the DT nodes on KR260 board. Changes in v2: - Added the power_on_reset_us variable, for post-reset time. - Removed the DM_REGULATOR ifdef around the regulator API's. - Rename the i2c_init and fixed the return for the API's. Changes in v3: - Rename i2c_init to init. - Fixed the return values for the dev_read_phandle_with_args API. - Removed the unneccessary cast uint8_t *. Changes in v4: - Fixed the indentation issues. - Fixed the Reverse xmas tree for indentation. - Replaced dev_dbg to dev_err in all places. Changes in v5: - Add new API for usb_onboard_hub_reset. Changes in v6: - Add return for usb_onboard_hub_reset in probe. Changes in v7: - Sort the structure onboard_hub_data data. - Remove the variable gpio_desc * for dm_gpio_free(). Changes in v8: - Sort the list for usb5744_data. Changes in v9: - Added the Reviewer tag for patches 1/4, which got missed in v8. Changes in v10: - Removed the GPIOD_ACTIVE_LOW flag in the devm_gpiod_get_optional. Changes in v11: - Added the usb2514_hub_data and updated the reset_us to 1. Venkatesh Yadav Abbarapu (7): usb: onboard-hub: Add reset-gpio support usb: onboard-hub: Fix the return values of regulator APIs usb: onboard-hub: add support for Microchip USB5744 usb: onboard-hub: Add i2c initialization for usb5744 hub usb: onboard-hub: Bail out if peer hub is already probed configs: zynqmp_kria: Enable the USB onboard hub arm64: zynqmp: Update the usb5744 hub node as per binding arch/arm/dts/zynqmp-sck-kr-g-revA.dtso | 48 ++++++ arch/arm/dts/zynqmp-sck-kr-g-revB.dtso | 48 ++++++ arch/arm/dts/zynqmp-sck-kv-g-revA.dtso | 18 +++ arch/arm/dts/zynqmp-sck-kv-g-revB.dtso | 25 +++- common/usb_onboard_hub.c | 194 ++++++++++++++++++++++++- configs/xilinx_zynqmp_kria_defconfig | 3 +- 6 files changed, 329 insertions(+), 7 deletions(-) -- 2.17.1