.. | .. |
---|
1 | | -// SPDX-License-Identifier: GPL-2.0 |
---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0 */ |
---|
2 | 2 | /* |
---|
3 | 3 | * xhci-plat.h - xHCI host controller driver platform Bus Glue. |
---|
4 | 4 | * |
---|
.. | .. |
---|
12 | 12 | |
---|
13 | 13 | struct xhci_plat_priv { |
---|
14 | 14 | const char *firmware_name; |
---|
| 15 | + unsigned long long quirks; |
---|
| 16 | + struct xhci_vendor_data *vendor_data; |
---|
| 17 | + int (*plat_setup)(struct usb_hcd *); |
---|
15 | 18 | void (*plat_start)(struct usb_hcd *); |
---|
16 | 19 | int (*init_quirk)(struct usb_hcd *); |
---|
| 20 | + int (*suspend_quirk)(struct usb_hcd *); |
---|
17 | 21 | int (*resume_quirk)(struct usb_hcd *); |
---|
18 | 22 | }; |
---|
19 | 23 | |
---|
20 | 24 | #define hcd_to_xhci_priv(h) ((struct xhci_plat_priv *)hcd_to_xhci(h)->priv) |
---|
| 25 | +#define xhci_to_priv(x) ((struct xhci_plat_priv *)(x)->priv) |
---|
| 26 | + |
---|
| 27 | +struct xhci_plat_priv_overwrite { |
---|
| 28 | + struct xhci_vendor_ops *vendor_ops; |
---|
| 29 | +}; |
---|
| 30 | + |
---|
| 31 | +int xhci_plat_register_vendor_ops(struct xhci_vendor_ops *vendor_ops); |
---|
| 32 | + |
---|
21 | 33 | #endif /* _XHCI_PLAT_H */ |
---|