diff options
Diffstat (limited to 'include/fsl_usb.h')
| -rw-r--r-- | include/fsl_usb.h | 80 | 
1 files changed, 80 insertions, 0 deletions
| diff --git a/include/fsl_usb.h b/include/fsl_usb.h new file mode 100644 index 000000000..88d6a1fda --- /dev/null +++ b/include/fsl_usb.h @@ -0,0 +1,80 @@ +/* + * Freescale USB Controller + * + * Copyright 2013 Freescale Semiconductor, Inc. + * + * This software may be used and distributed according to the + * terms of the GNU Public License, Version 2, incorporated + * herein by reference. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * Version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef _ASM_FSL_USB_H_ +#define _ASM_FSL_USB_H_ + +#ifdef CONFIG_SYS_FSL_USB_DUAL_PHY_ENABLE +struct ccsr_usb_port_ctrl { +	u32	ctrl; +	u32	drvvbuscfg; +	u32	pwrfltcfg; +	u32	sts; +	u8	res_14[0xc]; +	u32	bistcfg; +	u32	biststs; +	u32	abistcfg; +	u32	abiststs; +	u8	res_30[0x10]; +	u32	xcvrprg; +	u32	anaprg; +	u32	anadrv; +	u32	anasts; +}; + +struct ccsr_usb_phy { +	u32	id; +	struct ccsr_usb_port_ctrl port1; +	u8	res_50[0xc]; +	u32	tvr; +	u32	pllprg[4]; +	u8	res_70[0x4]; +	u32	anaccfg; +	u32	dbg; +	u8	res_7c[0x4]; +	struct ccsr_usb_port_ctrl port2; +	u8	res_dc[0x334]; +}; + +#define CONFIG_SYS_FSL_USB_CTRL_PHY_EN (1 << 0) +#define CONFIG_SYS_FSL_USB_DRVVBUS_CR_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PWRFLT_CR_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PLLPRG1_PHY_DIV (1 << 0) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PHY2_CLK_EN (1 << 0) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PHY1_CLK_EN (1 << 1) +#define CONFIG_SYS_FSL_USB_PLLPRG2_FRAC_LPF_EN (1 << 13) +#define CONFIG_SYS_FSL_USB_PLLPRG2_REF_DIV (1 << 4) +#define CONFIG_SYS_FSL_USB_PLLPRG2_MFI (5 << 16) +#define CONFIG_SYS_FSL_USB_PLLPRG2_PLL_EN (1 << 21) +#define CONFIG_SYS_FSL_USB_SYS_CLK_VALID (1 << 0) +#else +struct ccsr_usb_phy { +	u8	res0[0x18]; +	u32	usb_enable_override; +	u8	res[0xe4]; +}; +#define	CONFIG_SYS_FSL_USB_ENABLE_OVERRIDE	1 +#endif + +#endif /*_ASM_FSL_USB_H_ */ |