Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0+
0002 /*
0003  * Copyright (C) 2012 Hauke Mehrtens <hauke@hauke-m.de>
0004  */
0005 
0006 #ifndef __USB_CORE_OHCI_PDRIVER_H
0007 #define __USB_CORE_OHCI_PDRIVER_H
0008 
0009 /**
0010  * struct usb_ohci_pdata - platform_data for generic ohci driver
0011  *
0012  * @big_endian_desc:    BE descriptors
0013  * @big_endian_mmio:    BE registers
0014  * @no_big_frame_no:    no big endian frame_no shift
0015  * @num_ports:      number of ports
0016  *
0017  * These are general configuration options for the OHCI controller. All of
0018  * these options are activating more or less workarounds for some hardware.
0019  */
0020 struct usb_ohci_pdata {
0021     unsigned    big_endian_desc:1;
0022     unsigned    big_endian_mmio:1;
0023     unsigned    no_big_frame_no:1;
0024     unsigned int    num_ports;
0025 
0026     /* Turn on all power and clocks */
0027     int (*power_on)(struct platform_device *pdev);
0028     /* Turn off all power and clocks */
0029     void (*power_off)(struct platform_device *pdev);
0030     /* Turn on only VBUS suspend power and hotplug detection,
0031      * turn off everything else */
0032     void (*power_suspend)(struct platform_device *pdev);
0033 };
0034 
0035 #endif /* __USB_CORE_OHCI_PDRIVER_H */