forked from mirrors/linux
Based on the normalized pattern:
this software is distributed under the terms of the gnu general public
license ( gpl ) version 2 as published by the free software foundation
this software is provided by the copyright holders and contributors as
is and any express or implied warranties including but not limited to
the implied warranties of merchantability and fitness for a particular
purpose are disclaimed in no event shall the copyright owner or
contributors be liable for any direct indirect incidental special
exemplary or consequential damages (including but not limited to
procurement of substitute goods or services loss of use data or
profits or business interruption) however caused and on any theory of
liability whether in contract strict liability or tort (including
negligence or otherwise) arising in any way out of the use of this
software even if advised of the possibility of such damage
extracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference.
Reviewed-by: Allison Randal <allison@lohutok.net>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
74 lines
1.9 KiB
C
74 lines
1.9 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* usb-omap.h - Platform data for the various OMAP USB IPs
|
|
*
|
|
* Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com
|
|
*/
|
|
|
|
#define OMAP3_HS_USB_PORTS 3
|
|
|
|
enum usbhs_omap_port_mode {
|
|
OMAP_USBHS_PORT_MODE_UNUSED,
|
|
OMAP_EHCI_PORT_MODE_PHY,
|
|
OMAP_EHCI_PORT_MODE_TLL,
|
|
OMAP_EHCI_PORT_MODE_HSIC,
|
|
OMAP_OHCI_PORT_MODE_PHY_6PIN_DATSE0,
|
|
OMAP_OHCI_PORT_MODE_PHY_6PIN_DPDM,
|
|
OMAP_OHCI_PORT_MODE_PHY_3PIN_DATSE0,
|
|
OMAP_OHCI_PORT_MODE_PHY_4PIN_DPDM,
|
|
OMAP_OHCI_PORT_MODE_TLL_6PIN_DATSE0,
|
|
OMAP_OHCI_PORT_MODE_TLL_6PIN_DPDM,
|
|
OMAP_OHCI_PORT_MODE_TLL_3PIN_DATSE0,
|
|
OMAP_OHCI_PORT_MODE_TLL_4PIN_DPDM,
|
|
OMAP_OHCI_PORT_MODE_TLL_2PIN_DATSE0,
|
|
OMAP_OHCI_PORT_MODE_TLL_2PIN_DPDM
|
|
};
|
|
|
|
struct usbtll_omap_platform_data {
|
|
enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
|
|
};
|
|
|
|
struct ehci_hcd_omap_platform_data {
|
|
enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
|
|
int reset_gpio_port[OMAP3_HS_USB_PORTS];
|
|
struct regulator *regulator[OMAP3_HS_USB_PORTS];
|
|
unsigned phy_reset:1;
|
|
};
|
|
|
|
struct ohci_hcd_omap_platform_data {
|
|
enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
|
|
unsigned es2_compatibility:1;
|
|
};
|
|
|
|
struct usbhs_omap_platform_data {
|
|
int nports;
|
|
enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
|
|
int reset_gpio_port[OMAP3_HS_USB_PORTS];
|
|
struct regulator *regulator[OMAP3_HS_USB_PORTS];
|
|
|
|
struct ehci_hcd_omap_platform_data *ehci_data;
|
|
struct ohci_hcd_omap_platform_data *ohci_data;
|
|
|
|
/* OMAP3 <= ES2.1 have a single ulpi bypass control bit */
|
|
unsigned single_ulpi_bypass:1;
|
|
unsigned es2_compatibility:1;
|
|
unsigned phy_reset:1;
|
|
};
|
|
|
|
/*-------------------------------------------------------------------------*/
|
|
|
|
struct omap_musb_board_data {
|
|
u8 interface_type;
|
|
u8 mode;
|
|
u16 power;
|
|
unsigned extvbus:1;
|
|
void (*set_phy_power)(u8 on);
|
|
void (*clear_irq)(void);
|
|
void (*set_mode)(u8 mode);
|
|
void (*reset)(void);
|
|
};
|
|
|
|
enum musb_interface {
|
|
MUSB_INTERFACE_ULPI,
|
|
MUSB_INTERFACE_UTMI
|
|
};
|