sl811.h 838 B

123456789101112131415161718192021222324252627282930
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * board initialization should put one of these into dev->platform_data
  4. * and place the sl811hs onto platform_bus named "sl811-hcd".
  5. */
  6. #ifndef __LINUX_USB_SL811_H
  7. #define __LINUX_USB_SL811_H
  8. struct sl811_platform_data {
  9. unsigned can_wakeup:1;
  10. /* given port_power, msec/2 after power on till power good */
  11. u8 potpg;
  12. /* mA/2 power supplied on this port (max = default = 250) */
  13. u8 power;
  14. /* sl811 relies on an external source of VBUS current */
  15. void (*port_power)(struct device *dev, int is_on);
  16. /* pulse sl811 nRST (probably with a GPIO) */
  17. void (*reset)(struct device *dev);
  18. /* some boards need something like these: */
  19. /* int (*check_overcurrent)(struct device *dev); */
  20. /* void (*clock_enable)(struct device *dev, int is_on); */
  21. };
  22. #endif /* __LINUX_USB_SL811_H */