diff options
Diffstat (limited to 'include/linux/usb')
-rw-r--r-- | include/linux/usb/ehci_pdriver.h | 4 | ||||
-rw-r--r-- | include/linux/usb/gadget.h | 2 | ||||
-rw-r--r-- | include/linux/usb/hcd.h | 3 | ||||
-rw-r--r-- | include/linux/usb/phy.h | 4 | ||||
-rw-r--r-- | include/linux/usb/usb_phy_generic.h | 2 |
5 files changed, 13 insertions, 2 deletions
diff --git a/include/linux/usb/ehci_pdriver.h b/include/linux/usb/ehci_pdriver.h index 7eb4dcd0d386..db0431b39a63 100644 --- a/include/linux/usb/ehci_pdriver.h +++ b/include/linux/usb/ehci_pdriver.h | |||
@@ -34,6 +34,8 @@ struct usb_hcd; | |||
34 | * after initialization. | 34 | * after initialization. |
35 | * @no_io_watchdog: set to 1 if the controller does not need the I/O | 35 | * @no_io_watchdog: set to 1 if the controller does not need the I/O |
36 | * watchdog to run. | 36 | * watchdog to run. |
37 | * @reset_on_resume: set to 1 if the controller needs to be reset after | ||
38 | * a suspend / resume cycle (but can't detect that itself). | ||
37 | * | 39 | * |
38 | * These are general configuration options for the EHCI controller. All of | 40 | * These are general configuration options for the EHCI controller. All of |
39 | * these options are activating more or less workarounds for some hardware. | 41 | * these options are activating more or less workarounds for some hardware. |
@@ -45,6 +47,8 @@ struct usb_ehci_pdata { | |||
45 | unsigned big_endian_desc:1; | 47 | unsigned big_endian_desc:1; |
46 | unsigned big_endian_mmio:1; | 48 | unsigned big_endian_mmio:1; |
47 | unsigned no_io_watchdog:1; | 49 | unsigned no_io_watchdog:1; |
50 | unsigned reset_on_resume:1; | ||
51 | unsigned dma_mask_64:1; | ||
48 | 52 | ||
49 | /* Turn on all power and clocks */ | 53 | /* Turn on all power and clocks */ |
50 | int (*power_on)(struct platform_device *pdev); | 54 | int (*power_on)(struct platform_device *pdev); |
diff --git a/include/linux/usb/gadget.h b/include/linux/usb/gadget.h index 70ddb3943b62..e2f00fd8cd47 100644 --- a/include/linux/usb/gadget.h +++ b/include/linux/usb/gadget.h | |||
@@ -523,6 +523,7 @@ struct usb_gadget_ops { | |||
523 | * enabled HNP support. | 523 | * enabled HNP support. |
524 | * @quirk_ep_out_aligned_size: epout requires buffer size to be aligned to | 524 | * @quirk_ep_out_aligned_size: epout requires buffer size to be aligned to |
525 | * MaxPacketSize. | 525 | * MaxPacketSize. |
526 | * @is_selfpowered: if the gadget is self-powered. | ||
526 | * | 527 | * |
527 | * Gadgets have a mostly-portable "gadget driver" implementing device | 528 | * Gadgets have a mostly-portable "gadget driver" implementing device |
528 | * functions, handling all usb configurations and interfaces. Gadget | 529 | * functions, handling all usb configurations and interfaces. Gadget |
@@ -563,6 +564,7 @@ struct usb_gadget { | |||
563 | unsigned a_hnp_support:1; | 564 | unsigned a_hnp_support:1; |
564 | unsigned a_alt_hnp_support:1; | 565 | unsigned a_alt_hnp_support:1; |
565 | unsigned quirk_ep_out_aligned_size:1; | 566 | unsigned quirk_ep_out_aligned_size:1; |
567 | unsigned is_selfpowered:1; | ||
566 | }; | 568 | }; |
567 | #define work_to_gadget(w) (container_of((w), struct usb_gadget, work)) | 569 | #define work_to_gadget(w) (container_of((w), struct usb_gadget, work)) |
568 | 570 | ||
diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h index 086bf13307e6..68b1e836dff1 100644 --- a/include/linux/usb/hcd.h +++ b/include/linux/usb/hcd.h | |||
@@ -146,6 +146,8 @@ struct usb_hcd { | |||
146 | unsigned amd_resume_bug:1; /* AMD remote wakeup quirk */ | 146 | unsigned amd_resume_bug:1; /* AMD remote wakeup quirk */ |
147 | unsigned can_do_streams:1; /* HC supports streams */ | 147 | unsigned can_do_streams:1; /* HC supports streams */ |
148 | unsigned tpl_support:1; /* OTG & EH TPL support */ | 148 | unsigned tpl_support:1; /* OTG & EH TPL support */ |
149 | unsigned cant_recv_wakeups:1; | ||
150 | /* wakeup requests from downstream aren't received */ | ||
149 | 151 | ||
150 | unsigned int irq; /* irq allocated */ | 152 | unsigned int irq; /* irq allocated */ |
151 | void __iomem *regs; /* device memory/io */ | 153 | void __iomem *regs; /* device memory/io */ |
@@ -453,6 +455,7 @@ extern const struct dev_pm_ops usb_hcd_pci_pm_ops; | |||
453 | #endif /* CONFIG_PCI */ | 455 | #endif /* CONFIG_PCI */ |
454 | 456 | ||
455 | /* pci-ish (pdev null is ok) buffer alloc/mapping support */ | 457 | /* pci-ish (pdev null is ok) buffer alloc/mapping support */ |
458 | void usb_init_pool_max(void); | ||
456 | int hcd_buffer_create(struct usb_hcd *hcd); | 459 | int hcd_buffer_create(struct usb_hcd *hcd); |
457 | void hcd_buffer_destroy(struct usb_hcd *hcd); | 460 | void hcd_buffer_destroy(struct usb_hcd *hcd); |
458 | 461 | ||
diff --git a/include/linux/usb/phy.h b/include/linux/usb/phy.h index f499c23e6342..bc91b5d380fd 100644 --- a/include/linux/usb/phy.h +++ b/include/linux/usb/phy.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* USB OTG (On The Go) defines */ | ||
2 | /* | 1 | /* |
2 | * USB PHY defines | ||
3 | * | 3 | * |
4 | * These APIs may be used between USB controllers. USB device drivers | 4 | * These APIs may be used between USB controllers. USB device drivers |
5 | * (for either host or peripheral roles) don't use these calls; they | 5 | * (for either host or peripheral roles) don't use these calls; they |
@@ -106,7 +106,7 @@ struct usb_phy { | |||
106 | int (*set_power)(struct usb_phy *x, | 106 | int (*set_power)(struct usb_phy *x, |
107 | unsigned mA); | 107 | unsigned mA); |
108 | 108 | ||
109 | /* for non-OTG B devices: set transceiver into suspend mode */ | 109 | /* Set transceiver into suspend mode */ |
110 | int (*set_suspend)(struct usb_phy *x, | 110 | int (*set_suspend)(struct usb_phy *x, |
111 | int suspend); | 111 | int suspend); |
112 | 112 | ||
diff --git a/include/linux/usb/usb_phy_generic.h b/include/linux/usb/usb_phy_generic.h index 68adae83affc..c13632d5292e 100644 --- a/include/linux/usb/usb_phy_generic.h +++ b/include/linux/usb/usb_phy_generic.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define __LINUX_USB_NOP_XCEIV_H | 2 | #define __LINUX_USB_NOP_XCEIV_H |
3 | 3 | ||
4 | #include <linux/usb/otg.h> | 4 | #include <linux/usb/otg.h> |
5 | #include <linux/gpio/consumer.h> | ||
5 | 6 | ||
6 | struct usb_phy_generic_platform_data { | 7 | struct usb_phy_generic_platform_data { |
7 | enum usb_phy_type type; | 8 | enum usb_phy_type type; |
@@ -11,6 +12,7 @@ struct usb_phy_generic_platform_data { | |||
11 | unsigned int needs_vcc:1; | 12 | unsigned int needs_vcc:1; |
12 | unsigned int needs_reset:1; /* deprecated */ | 13 | unsigned int needs_reset:1; /* deprecated */ |
13 | int gpio_reset; | 14 | int gpio_reset; |
15 | struct gpio_desc *gpiod_vbus; | ||
14 | }; | 16 | }; |
15 | 17 | ||
16 | #if IS_ENABLED(CONFIG_NOP_USB_XCEIV) | 18 | #if IS_ENABLED(CONFIG_NOP_USB_XCEIV) |