1
0
Fork 0
forked from len0rd/rockbox
foxbox/firmware/export/as3525v2.h
Rafaël Carré 18bee1bafb usb-drv-as3525v2.h: remove
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31507 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 21:15:10 +00:00

87 lines
3.2 KiB
C

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
* $Id$
*
* Copyright © 2009 Rafaël Carré
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
#ifndef __AS3525V2_H__
#define __AS3525V2_H__
#include "as3525.h"
/* insert differences here */
#define CACHEALIGN_BITS (5)
#ifndef IRAM_SIZE /* protect in case the define name changes */
# error IRAM_SIZE not defined !
#endif
#undef IRAM_SIZE
#define IRAM_SIZE 0x100000
#define CGU_SDSLOT (*(volatile unsigned long *)(CGU_BASE + 0x3C))
#undef USB_NUM_ENDPOINTS
#define USB_NUM_ENDPOINTS 6
#define CCU_USB (*(volatile unsigned long *)(CCU_BASE + 0x20))
#undef USB_DEVBSS_ATTR
#define USB_DEVBSS_ATTR __attribute__((aligned(32)))
#define USBPHY_REG(offset) (*(volatile uint32_t*)(OTGBASE + offset))
/** User HW Config1 Register */
#define GHWCFG1 USBPHY_REG(0x044)
#define GHWCFG1_epdir_bitp(ep) (2 * (ep))
#define GHWCFG1_epdir_bits 0x3
#define GHWCFG1_EPDIR_BIDIR 0
#define GHWCFG1_EPDIR_IN 1
#define GHWCFG1_EPDIR_OUT 2
/** User HW Config2 Register */
#define GHWCFG2 USBPHY_REG(0x048)
#define GHWCFG2_arch_bitp 3 /** Architecture */
#define GHWCFG2_arch_bits 0x3
#define GHWCFG2_hs_phy_type_bitp 6 /** High speed PHY type */
#define GHWCFG2_hs_phy_type_bits 0x3
#define GHWCFG2_fs_phy_type_bitp 8 /** Full speed PHY type */
#define GHWCFG2_fs_phy_type_bits 0x3
#define GHWCFG2_num_ep_bitp 10 /** Number of endpoints */
#define GHWCFG2_num_ep_bits 0xf
#define GHWCFG2_dyn_fifo (1 << 19) /** Dynamic FIFO */
/* For GHWCFG2_HS_PHY_TYPE and GHWCFG2_FS_PHY_TYPE */
#define GHWCFG2_PHY_TYPE_UNSUPPORTED 0
#define GHWCFG2_PHY_TYPE_UTMI 1
#define GHWCFG2_ARCH_INTERNAL_DMA 2
/** User HW Config3 Register */
#define GHWCFG3 USBPHY_REG(0x04C)
#define GHWCFG3_dfifo_len_bitp 16 /** Total fifo size */
#define GHWCFG3_dfifo_len_bits 0xffff
/** User HW Config4 Register */
#define GHWCFG4 USBPHY_REG(0x050)
#define GHWCFG4_utmi_phy_data_width_bitp 14 /** UTMI+ data bus width */
#define GHWCFG4_utmi_phy_data_width_bits 0x3
#define GHWCFG4_ded_fifo_en (1 << 25) /** Dedicated Tx FIFOs */
#define GHWCFG4_num_in_ep_bitp 26 /** Number of IN endpoints */
#define GHWCFG4_num_in_ep_bits 0xf
#endif /* __AS3525V2_H__ */