1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright (C) 2012 Hauke Mehrtens <hauke@hauke-m.de>
4 */
5
6#ifndef __USB_CORE_OHCI_PDRIVER_H
7#define __USB_CORE_OHCI_PDRIVER_H
8
9/**
10 * struct usb_ohci_pdata - platform_data for generic ohci driver
11 *
12 * @big_endian_desc: BE descriptors
13 * @big_endian_mmio: BE registers
14 * @no_big_frame_no: no big endian frame_no shift
15 * @num_ports: number of ports
16 *
17 * These are general configuration options for the OHCI controller. All of
18 * these options are activating more or less workarounds for some hardware.
19 */
20struct usb_ohci_pdata {
21 unsigned big_endian_desc:1;
22 unsigned big_endian_mmio:1;
23 unsigned no_big_frame_no:1;
24 unsigned int num_ports;
25
26 /* Turn on all power and clocks */
27 int (*power_on)(struct platform_device *pdev);
28 /* Turn off all power and clocks */
29 void (*power_off)(struct platform_device *pdev);
30 /* Turn on only VBUS suspend power and hotplug detection,
31 * turn off everything else */
32 void (*power_suspend)(struct platform_device *pdev);
33};
34
35#endif /* __USB_CORE_OHCI_PDRIVER_H */
36

source code of linux/include/linux/usb/ohci_pdriver.h