--- zzzz-none-000/linux-3.10.107/include/linux/usb/ehci_pdriver.h 2017-06-27 09:49:32.000000000 +0000 +++ scorpion-7490-727/linux-3.10.107/include/linux/usb/ehci_pdriver.h 2021-02-04 17:41:59.000000000 +0000 @@ -19,6 +19,9 @@ #ifndef __USB_CORE_EHCI_PDRIVER_H #define __USB_CORE_EHCI_PDRIVER_H +struct platform_device; +struct usb_hcd; + /** * struct usb_ehci_pdata - platform_data for generic ehci driver * @@ -31,6 +34,8 @@ * after initialization. * @no_io_watchdog: set to 1 if the controller does not need the I/O * watchdog to run. + * @reset_on_resume: set to 1 if the controller needs to be reset after + * a suspend / resume cycle (but can't detect that itself). * * These are general configuration options for the EHCI controller. All of * these options are activating more or less workarounds for some hardware. @@ -42,6 +47,11 @@ unsigned big_endian_desc:1; unsigned big_endian_mmio:1; unsigned no_io_watchdog:1; + unsigned reset_on_resume:1; + unsigned dma_mask_64:1; + unsigned ignore_oc:1; + unsigned qca_force_host_mode:1; + unsigned qca_force_16bit_ptw:1; /* Turn on all power and clocks */ int (*power_on)(struct platform_device *pdev); @@ -50,6 +60,8 @@ /* Turn on only VBUS suspend power and hotplug detection, * turn off everything else */ void (*power_suspend)(struct platform_device *pdev); + int (*pre_setup)(struct usb_hcd *hcd); + void (*reset_notifier)(struct platform_device *pdev); }; #endif /* __USB_CORE_EHCI_PDRIVER_H */