onboard_usb_hub.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (c) 2022, Google LLC
  4. */
  5. #ifndef _USB_MISC_ONBOARD_USB_HUB_H
  6. #define _USB_MISC_ONBOARD_USB_HUB_H
  7. struct onboard_hub_pdata {
  8. unsigned long reset_us; /* reset pulse width in us */
  9. };
  10. static const struct onboard_hub_pdata microchip_usb424_data = {
  11. .reset_us = 1,
  12. };
  13. static const struct onboard_hub_pdata realtek_rts5411_data = {
  14. .reset_us = 0,
  15. };
  16. static const struct onboard_hub_pdata ti_tusb8041_data = {
  17. .reset_us = 3000,
  18. };
  19. static const struct onboard_hub_pdata genesys_gl850g_data = {
  20. .reset_us = 3,
  21. };
  22. static const struct onboard_hub_pdata genesys_gl852g_data = {
  23. .reset_us = 50,
  24. };
  25. static const struct of_device_id onboard_hub_match[] = {
  26. { .compatible = "usb424,2412", .data = &microchip_usb424_data, },
  27. { .compatible = "usb424,2514", .data = &microchip_usb424_data, },
  28. { .compatible = "usb424,2517", .data = &microchip_usb424_data, },
  29. { .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
  30. { .compatible = "usb451,8142", .data = &ti_tusb8041_data, },
  31. { .compatible = "usb5e3,608", .data = &genesys_gl850g_data, },
  32. { .compatible = "usb5e3,610", .data = &genesys_gl852g_data, },
  33. { .compatible = "usb5e3,620", .data = &genesys_gl852g_data, },
  34. { .compatible = "usbbda,411", .data = &realtek_rts5411_data, },
  35. { .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
  36. { .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
  37. { .compatible = "usbbda,5414", .data = &realtek_rts5411_data, },
  38. {}
  39. };
  40. #endif /* _USB_MISC_ONBOARD_USB_HUB_H */