129 lines
7.8 KiB
C
129 lines
7.8 KiB
C
|
/***************************************************************************
|
||
|
* __________ __ ___.
|
||
|
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||
|
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||
|
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||
|
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||
|
* \/ \/ \/ \/ \/
|
||
|
* $Id$
|
||
|
*
|
||
|
* Copyright (C) 2006 by Barry Wardelll
|
||
|
*
|
||
|
* All files in this archive are subject to the GNU General Public License.
|
||
|
* See the file COPYING in the source tree root for full license agreement.
|
||
|
*
|
||
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||
|
* KIND, either express or implied.
|
||
|
*
|
||
|
****************************************************************************/
|
||
|
#ifndef USB_TARGET_H
|
||
|
#define USB_TARGET_H
|
||
|
|
||
|
/* The PortalPlayer USB controller is compatible with Freescale i.MX31 */
|
||
|
|
||
|
/* Register addresses */
|
||
|
/* OTG */
|
||
|
#define UOG_ID (*(volatile unsigned long *)(0xc5000000))
|
||
|
#define UOG_HWGENERAL (*(volatile unsigned long *)(0xc5000004))
|
||
|
#define UOG_HWHOST (*(volatile unsigned long *)(0xc5000008))
|
||
|
#define UOG_HWTXBUF (*(volatile unsigned long *)(0xc5000010))
|
||
|
#define UOG_HWRXBUF (*(volatile unsigned long *)(0xc5000014))
|
||
|
#define UOG_CAPLENGTH (*(volatile unsigned char *)(0xc5000100))
|
||
|
#define UOG_HCIVERSION (*(volatile unsigned short *)(0xc5000102))
|
||
|
#define UOG_HCSPARAMS (*(volatile unsigned long *)(0xc5000104))
|
||
|
#define UOG_HCCPARAMS (*(volatile unsigned long *)(0xc5000108))
|
||
|
#define UOG_DCIVERSION (*(volatile unsigned short *)(0xc5000120))
|
||
|
#define UOG_DCCPARAMS (*(volatile unsigned long *)(0xc5000124))
|
||
|
#define UOG_USBCMD (*(volatile unsigned long *)(0xc5000140))
|
||
|
#define UOG_USBSTS (*(volatile unsigned long *)(0xc5000144))
|
||
|
#define UOG_USBINTR (*(volatile unsigned long *)(0xc5000148))
|
||
|
#define UOG_FRINDEX (*(volatile unsigned long *)(0xc500014c))
|
||
|
#define UOG_PERIODICLISTBASE (*(volatile unsigned long *)(0xc5000154))
|
||
|
#define UOG_ASYNCLISTADDR (*(volatile unsigned long *)(0xc5000158))
|
||
|
#define UOG_BURSTSIZE (*(volatile unsigned long *)(0xc5000160))
|
||
|
#define UOG_TXFILLTUNING (*(volatile unsigned long *)(0xc5000164))
|
||
|
#define UOG_ULPIVIEW (*(volatile unsigned long *)(0xc5000170))
|
||
|
#define UOG_CFGFLAG (*(volatile unsigned long *)(0xc5000180))
|
||
|
#define UOG_PORTSC1 (*(volatile unsigned long *)(0xc5000184))
|
||
|
/*#define UOG_PORTSC2 (*(volatile unsigned long *)(0xc5000188))
|
||
|
#define UOG_PORTSC3 (*(volatile unsigned long *)(0xc500018c))
|
||
|
#define UOG_PORTSC4 (*(volatile unsigned long *)(0xc5000190))
|
||
|
#define UOG_PORTSC5 (*(volatile unsigned long *)(0xc5000194))
|
||
|
#define UOG_PORTSC6 (*(volatile unsigned long *)(0xc5000198))
|
||
|
#define UOG_PORTSC7 (*(volatile unsigned long *)(0xc500019c))
|
||
|
#define UOG_PORTSC8 (*(volatile unsigned long *)(0xc50001a0))*/
|
||
|
#define UOG_OTGSC (*(volatile unsigned long *)(0xc50001a4))
|
||
|
#define UOG_USBMODE (*(volatile unsigned long *)(0xc50001a8))
|
||
|
#define UOG_ENDPTSETUPSTAT (*(volatile unsigned long *)(0xc50001ac))
|
||
|
#define UOG_ENDPTPRIME (*(volatile unsigned long *)(0xc50001b0))
|
||
|
#define UOG_ENDPTFLUSH (*(volatile unsigned long *)(0xc50001b4))
|
||
|
#define UOG_ENDPTSTAT (*(volatile unsigned long *)(0xc50001b8))
|
||
|
#define UOG_ENDPTCOMPLETE (*(volatile unsigned long *)(0xc50001bc))
|
||
|
#define ENDPTCRTL0 (*(volatile unsigned long *)(0xc50001c0))
|
||
|
#define ENDPTCRTL1 (*(volatile unsigned long *)(0xc50001c4))
|
||
|
#define ENDPTCRTL2 (*(volatile unsigned long *)(0xc50001c8))
|
||
|
#define ENDPTCRTL3 (*(volatile unsigned long *)(0xc50001cc))
|
||
|
#define ENDPTCRTL4 (*(volatile unsigned long *)(0xc50001d0))
|
||
|
#define ENDPTCRTL5 (*(volatile unsigned long *)(0xc50001d4))
|
||
|
#define ENDPTCRTL6 (*(volatile unsigned long *)(0xc50001d8))
|
||
|
#define ENDPTCRTL7 (*(volatile unsigned long *)(0xc50001dc))
|
||
|
/*#define ENDPTCRTL8 (*(volatile unsigned long *)(0xc50001e0))
|
||
|
#define ENDPTCRTL9 (*(volatile unsigned long *)(0xc50001e4))
|
||
|
#define ENDPTCRTL10 (*(volatile unsigned long *)(0xc50001e8))
|
||
|
#define ENDPTCRTL11 (*(volatile unsigned long *)(0xc50001ec))
|
||
|
#define ENDPTCRTL12 (*(volatile unsigned long *)(0xc50001f0))
|
||
|
#define ENDPTCRTL13 (*(volatile unsigned long *)(0xc50001f4))
|
||
|
#define ENDPTCRTL14 (*(volatile unsigned long *)(0xc50001f8))
|
||
|
#define ENDPTCRTL15 (*(volatile unsigned long *)(0xc50001fc))*/
|
||
|
|
||
|
/* Host 1 */
|
||
|
#define UH1_ID (*(volatile unsigned long *)(0xc5000200))
|
||
|
#define UH1_HWGENERAL (*(volatile unsigned long *)(0xc5000204))
|
||
|
#define UH1_HWHOST (*(volatile unsigned long *)(0xc5000208))
|
||
|
#define UH1_HWTXBUF (*(volatile unsigned long *)(0xc5000210))
|
||
|
#define UH1_HWRXBUF (*(volatile unsigned long *)(0xc5000214))
|
||
|
#define UH1_CAPLENGTH (*(volatile unsigned long *)(0xc5000300))
|
||
|
#define UH1_HCIVERSION (*(volatile unsigned long *)(0xc5000302))
|
||
|
#define UH1_HCSPARAMS (*(volatile unsigned long *)(0xc5000304))
|
||
|
#define UH1_HCCPARAMS (*(volatile unsigned long *)(0xc5000308))
|
||
|
#define UH1_USBCMD (*(volatile unsigned long *)(0xc5000340))
|
||
|
#define UH1_USBSTS (*(volatile unsigned long *)(0xc5000344))
|
||
|
#define UH1_USBINTR (*(volatile unsigned long *)(0xc5000348))
|
||
|
#define UH1_FRINDEX (*(volatile unsigned long *)(0xc500034c))
|
||
|
#define UH1_PERIODICLISTBASE (*(volatile unsigned long *)(0xc5000354))
|
||
|
#define UH1_ASYNCLISTADDR (*(volatile unsigned long *)(0xc5000358))
|
||
|
#define UH1_BURSTSIZE (*(volatile unsigned long *)(0xc5000360))
|
||
|
#define UH1_TXFILLTUNING (*(volatile unsigned long *)(0xc5000364))
|
||
|
#define UH1_PORTSC1 (*(volatile unsigned long *)(0xc5000384))
|
||
|
#define UH1_USBMODE (*(volatile unsigned long *)(0xc50003a8))
|
||
|
|
||
|
/* Host 2 */
|
||
|
#define UH2_ID (*(volatile unsigned long *)(0xc5000400))
|
||
|
#define UH2_HWGENERAL (*(volatile unsigned long *)(0xc5000404))
|
||
|
#define UH2_HWHOST (*(volatile unsigned long *)(0xc5000408))
|
||
|
#define UH2_HWTXBUF (*(volatile unsigned long *)(0xc5000410))
|
||
|
#define UH2_HWRXBUF (*(volatile unsigned long *)(0xc5000414))
|
||
|
#define UH2_CAPLENGTH (*(volatile unsigned long *)(0xc5000500))
|
||
|
#define UH2_HCIVERSION (*(volatile unsigned long *)(0xc5000502))
|
||
|
#define UH2_HCSPARAMS (*(volatile unsigned long *)(0xc5000504))
|
||
|
#define UH2_HCCPARAMS (*(volatile unsigned long *)(0xc5000508))
|
||
|
#define UH2_USBCMD (*(volatile unsigned long *)(0xc5000540))
|
||
|
#define UH2_USBSTS (*(volatile unsigned long *)(0xc5000544))
|
||
|
#define UH2_USBINTR (*(volatile unsigned long *)(0xc5000548))
|
||
|
#define UH2_FRINDEX (*(volatile unsigned long *)(0xc500054c))
|
||
|
#define UH2_PERIODICLISTBASE (*(volatile unsigned long *)(0xc5000554))
|
||
|
#define UH2_ASYNCLISTADDR (*(volatile unsigned long *)(0xc5000558))
|
||
|
#define UH2_BURSTSIZE (*(volatile unsigned long *)(0xc5000560))
|
||
|
#define UH2_TXFILLTUNING (*(volatile unsigned long *)(0xc5000564))
|
||
|
#define UH2_ULPIVIEW (*(volatile unsigned long *)(0xc5000570))
|
||
|
#define UH2_PORTSC1 (*(volatile unsigned long *)(0xc5000584))
|
||
|
#define UH2_USBMODE (*(volatile unsigned long *)(0xc50005a8))
|
||
|
|
||
|
/* General */
|
||
|
#define USB_CTRL (*(volatile unsigned long *)(0xc5000600))
|
||
|
#define USB_OTG_MIRROR (*(volatile unsigned long *)(0xc5000604))
|
||
|
|
||
|
void usb_init_device(void);
|
||
|
|
||
|
#endif
|