Re: [PATCH v2 3/3] usb: misc: onboard_usb_hub: Add TI USB8041 hub support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 15, 2022 at 09:33:00AM +0200, Alexander Stein wrote:
> This is a 4-port 3.0 USB hub.
> 
> Signed-off-by: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>
> ---
> Changes in v2:
> * Add devtype data containing waiting times
> 
>  drivers/usb/misc/onboard_usb_hub.c | 3 +++
>  drivers/usb/misc/onboard_usb_hub.h | 7 +++++++
>  2 files changed, 10 insertions(+)
> 
> diff --git a/drivers/usb/misc/onboard_usb_hub.c b/drivers/usb/misc/onboard_usb_hub.c
> index 1dd7f4767def..319b4b1748fb 100644
> --- a/drivers/usb/misc/onboard_usb_hub.c
> +++ b/drivers/usb/misc/onboard_usb_hub.c
> @@ -339,6 +339,7 @@ static struct platform_driver onboard_hub_driver = {
>  /************************** USB driver **************************/
>  
>  #define VENDOR_ID_REALTEK	0x0bda
> +#define VENDOR_ID_TI		0x0451
>  
>  /*
>   * Returns the onboard_hub platform device that is associated with the USB
> @@ -416,6 +417,8 @@ static const struct usb_device_id onboard_hub_id_table[] = {
>  	{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5411) }, /* RTS5411 USB 2.1 */
>  	{ USB_DEVICE(VENDOR_ID_REALTEK, 0x0414) }, /* RTS5414 USB 3.2 */
>  	{ USB_DEVICE(VENDOR_ID_REALTEK, 0x5414) }, /* RTS5414 USB 2.1 */
> +	{ USB_DEVICE(VENDOR_ID_TI, 0x8140) }, /* TI USB8041 3.0 */
> +	{ USB_DEVICE(VENDOR_ID_TI, 0x8142) }, /* TI USB8041 2.0 */
>  	{}
>  };
>  MODULE_DEVICE_TABLE(usb, onboard_hub_id_table);
> diff --git a/drivers/usb/misc/onboard_usb_hub.h b/drivers/usb/misc/onboard_usb_hub.h
> index 7e743f4c8aaa..fcb6a9024bbd 100644
> --- a/drivers/usb/misc/onboard_usb_hub.h
> +++ b/drivers/usb/misc/onboard_usb_hub.h
> @@ -11,7 +11,14 @@ struct onboard_hub_devtype_data {
>  	unsigned long reset_duration;		/* reset pulse width in us */
>  };
>  
> +static const struct onboard_hub_devtype_data ti_tusb8041_data = {
> +	.power_stable_time = 3000,
> +	.reset_duration = 3000,

Aren't these two values actually the same thing, i.e. the minimum
duration of the reset?

>From the data sheet:

  A minimum reset duration of 3 ms is required

  td2: VDD and VDD33 stable before de-assertion of GRSTz (>= 3ms)

My understanding is that td2 is just another expression of the first
requirement.

> +};
> +
>  static const struct of_device_id onboard_hub_match[] = {
> +	{ .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
> +	{ .compatible = "usb451,8142", .data = &ti_tusb8041_data, },
>  	{ .compatible = "usbbda,411" },
>  	{ .compatible = "usbbda,5411" },
>  	{ .compatible = "usbbda,414" },

Ah, now I see why the struct is defined in the .h file, never mind my comment
on the other patch.



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux