mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-01-31 23:32:17 +00:00
2a709f28fa
* 0day explit mitigation * Memory corruption prevention * Privilege escalation prevention * Buffer over flow prevention * File System corruption defense * Thread escape prevention This may very well be the most intensive inclusion to BrooklynR. This will not be part of an x86 suite nor it will be released as tool kit. The security core toolkit will remain part of kernel base.
89 lines
2.8 KiB
C
89 lines
2.8 KiB
C
/*
|
|
* usb-omap.h - Platform data for the various OMAP USB IPs
|
|
*
|
|
* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com
|
|
*
|
|
* 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.
|
|
*/
|
|
|
|
#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
|
|
};
|