xref: /linux/drivers/usb/cdns3/host-export.h (revision 3d82904559f4f5a2622db1b21de3edf2eded7664)
17733f6c3SPawel Laszczak /* SPDX-License-Identifier: GPL-2.0 */
27733f6c3SPawel Laszczak /*
3*3d829045SPawel Laszczak  * Cadence USBSS and USBSSP DRD Driver - Host Export APIs
47733f6c3SPawel Laszczak  *
57733f6c3SPawel Laszczak  * Copyright (C) 2017-2018 NXP
67733f6c3SPawel Laszczak  *
77733f6c3SPawel Laszczak  * Authors: Peter Chen <peter.chen@nxp.com>
87733f6c3SPawel Laszczak  */
97733f6c3SPawel Laszczak #ifndef __LINUX_CDNS3_HOST_EXPORT
107733f6c3SPawel Laszczak #define __LINUX_CDNS3_HOST_EXPORT
117733f6c3SPawel Laszczak 
12*3d829045SPawel Laszczak #if IS_ENABLED(CONFIG_USB_CDNS_HOST)
13*3d829045SPawel Laszczak 
14ed227648SPeter Chen struct usb_hcd;
157733f6c3SPawel Laszczak 
160b490046SPawel Laszczak int cdns_host_init(struct cdns *cdns);
17ed227648SPeter Chen int xhci_cdns3_suspend_quirk(struct usb_hcd *hcd);
187733f6c3SPawel Laszczak 
197733f6c3SPawel Laszczak #else
207733f6c3SPawel Laszczak 
210b490046SPawel Laszczak static inline int cdns_host_init(struct cdns *cdns)
227733f6c3SPawel Laszczak {
237733f6c3SPawel Laszczak 	return -ENXIO;
247733f6c3SPawel Laszczak }
257733f6c3SPawel Laszczak 
260b490046SPawel Laszczak static inline void cdns_host_exit(struct cdns *cdns) { }
27ed227648SPeter Chen static inline int xhci_cdns3_suspend_quirk(struct usb_hcd *hcd)
28ed227648SPeter Chen {
29ed227648SPeter Chen 	return 0;
30ed227648SPeter Chen }
317733f6c3SPawel Laszczak 
32*3d829045SPawel Laszczak #endif /* USB_CDNS_HOST */
337733f6c3SPawel Laszczak 
347733f6c3SPawel Laszczak #endif /* __LINUX_CDNS3_HOST_EXPORT */
35