[PATCH v11 3/7] usb: onboard-hub: add support for Microchip USB5744
Marek Vasut
marex at denx.de
Tue Nov 12 06:58:28 CET 2024
On 11/12/24 6:07 AM, Venkatesh Yadav Abbarapu wrote:
> Add support for the Microchip USB5744 USB3.0 and USB2.0 Hub.
> The usb5744 driver trigger hub reset signal after soft reset.
> The usb5744 hub need to reset after the phy initialization,
> which toggles the gpio.
> Also update the usb2514 hub_data with the reset delay as 1us.
>
> Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu at amd.com>
> Reviewed-by: Marek Vasut <marex at denx.de>
> ---
> common/usb_onboard_hub.c | 20 ++++++++++++++++++--
> 1 file changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/common/usb_onboard_hub.c b/common/usb_onboard_hub.c
> index 827ecf9b02..1d146eccee 100644
> --- a/common/usb_onboard_hub.c
> +++ b/common/usb_onboard_hub.c
> @@ -88,10 +88,26 @@ static int usb_onboard_hub_remove(struct udevice *dev)
> return ret;
> }
>
> +static const struct onboard_hub_data usb2514_data = {
> + .reset_us = 1,
> +};
> +
> +static const struct onboard_hub_data usb5744_data = {
> + .power_on_delay_us = 10000,
> + .reset_us = 10000,
> +};
> +
> static const struct udevice_id usb_onboard_hub_ids[] = {
> /* Use generic usbVID,PID dt-bindings (usb-device.yaml) */
> - { .compatible = "usb424,2514" }, /* USB2514B USB 2.0 */
> - { }
> + { .compatible = "usb424,2514", /* USB2514B USB 2.0 */
> + .data = (ulong)&usb2514_data,
This ^ hub has to be updated in 1/7 , otherwise if only 1/7 is applied
(e.g. during bisect), this hub reset will be operated out of specification.
Also, looking at the USB2514 datasheet figure 5-3, it seems the hub
needs t4=500us recovery time in SMBus mode. Does that mean usb2514_data
.power_on_delay_us = 500 is missing too ?
Also, it seems t_rstio is 5us in USB5477 datasheet figure 10-4 , where
do these 10000us figures above come from ?
More information about the U-Boot
mailing list