⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 device.h

📁 source code of armboot for s3c4510
💻 H
📖 第 1 页 / 共 4 页
字号:

#define HUBRD_RATE_9600     0x00001B00
#define HUBRD_RATE_19200    0x00000D70
#define HUBRD_RATE_38400    0x000006B0
#define HUBRD_RATE_57600    0x00000470
#define HUBRD_RATE_115200   0x00000230
#define HUBRD_RATE_230400   0x00000110
#define HUBRD_RATE_460800   0x00000080
#define HUBRD_RATE_921600   0x00000040


//--------------------------------------
// DES/3DES Special Registers
//--------------------------------------
#define ASIC_ENC_DESCON     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90000)) // DES/3DES control register
#define ASIC_ENC_DESSTA     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90004)) // DES/3DES status register
#define ASIC_ENC_DESINT     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90008)) // DES/3DES interrupt enable register
#define ASIC_ENC_DESRUN     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x9000C)) // DES/3DES run enable register
#define ASIC_ENC_DESKEY1L   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90010)) // Key 1 left half
#define ASIC_ENC_DESKEY1R   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90014)) // Key 1 right half
#define ASIC_ENC_DESKEY2L   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90018)) // Key 2 left half
#define ASIC_ENC_DESKEY2R   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x9001C)) // Key 2 right half
#define ASIC_ENC_DESKEY3L   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90020)) // Key 3 left half
#define ASIC_ENC_DESKEY3R   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90024)) // Key 3 right half
#define ASIC_ENC_DESIVL     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90028)) // IV left half
#define ASIC_ENC_DESIVR     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x9002C)) // IV right half
#define ASIC_ENC_DESINFIFO  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90030)) // DES/3DES input FIFO
#define ASIC_ENC_DESOUTFIFO (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x90034)) // DES/3DES output FIFO

//--------------------------------------
// ETHERNET 0 Special Registers
//--------------------------------------
#define ASIC_EM_BDMATXCON0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0000)) // Buffered DMA transmit control register
#define ASIC_EM_BDMARXCON0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0004)) // Buffered DMA receive control register
#define ASIC_EM_BDMATXDPTR0 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0008)) // Transmit buffer descriptor start address
#define ASIC_EM_BDMARXDPTR0 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA000C)) // Receive buffer descriptor start address
#define ASIC_EM_BTXBDCNT0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0010)) // BDMA Tx buffer descriptor counter
#define ASIC_EM_BRXBDCNT0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0014)) // BDMA Rx buffer descriptor counter
#define ASIC_EM_BMTXINTEN0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0018)) // BDMA/MAC Tx Interrupt enable register
#define ASIC_EM_BMRXINTEN0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA001C)) // BDMA/MAC Rx Interrupt enable register
#define ASIC_EM_BMTXSTAT0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0020)) // BDMA/MAC Tx Status register
#define ASIC_EM_BMRXSTAT0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0024)) // BDMA/MAC Rx Status register
#define ASIC_EM_BDMARXLEN0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0028)) // Receive Frame Size
//  Reserved                0xF00A002C
#define ASIC_EM_CFTXSTAT0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xA0030)) // Transmit control frame status

#define ASIC_EM_MACCON0     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0000)) // MAC control
#define ASIC_EM_CAMCON0     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0004)) // CAM control
#define ASIC_EM_MACTXCON0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0008)) // Transmit control
#define ASIC_EM_MACTXSTAT0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB000C)) // Transmit status
#define ASIC_EM_MACRXCON0   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0010)) // Receive control
#define ASIC_EM_MACRXSTAT0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0014)) // Receive status

#define ASIC_EM_STADATA     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0018)) // Station management data
#define ASIC_EM_STACON      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB001C)) // Station management control and address
//  Reserved                0xF00B0020 ~ 0xF00B0024
#define ASIC_EM_CAMEN0      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0028)) // CAM enable
//  Reserved                0xF00B002C ~ 0xF00B0038
#define ASIC_EM_MISSCNT0    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB003C)) // Missed error count
#define ASIC_EM_PZCNT0      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0040)) // Pause count
#define ASIC_EM_RMPZCNT0    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0044)) // Remote pause count
//  Reserved                0xF00B0048 ~ 0xF00B007C
#define ASIC_EM_CAM0        (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0080)) // CAM content (32 words) 0xF00B0080-0xF00B00FC
#define ASIC_EM_CAM0_REG(x) (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xB0080 + (x*0x4))) // CAM content Reg0~31

//--------------------------------------
// ETHERNET 1 Special Registers
//--------------------------------------
#define ASIC_EM_BDMATXCON1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0000)) // Buffered DMA transmit control register
#define ASIC_EM_BDMARXCON1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0004)) // Buffered DMA receive control register
#define ASIC_EM_BDMATXDPTR1 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0008)) // Transmit buffer descriptor start address
#define ASIC_EM_BDMARXDPTR1 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC000C)) // Receive buffer descriptor start address
#define ASIC_EM_BTXBDCNT1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0010)) // BDMA Tx buffer descriptor counter
#define ASIC_EM_BRXBDCNT1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0014)) // BDMA Rx buffer descriptor counter
#define ASIC_EM_BMTXINTEN1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0018)) // BDMA/MAC Tx Interrupt enable register
#define ASIC_EM_BMRXINTEN1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC001C)) // BDMA/MAC Rx Interrupt enable register
#define ASIC_EM_BMTXSTAT1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0020)) // BDMA/MAC Tx Status register
#define ASIC_EM_BMRXSTAT1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0024)) // BDMA/MAC Rx Status register
#define ASIC_EM_BDMARXLEN1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0028)) // Receive Frame Size
//  Reserved                0xF00C002C ~ 0xF00C002C
#define ASIC_EM_CFTXSTAT1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xC0030)) // Transmit control frame status

#define ASIC_EM_MACCON1     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0000)) // MAC control
#define ASIC_EM_CAMCON1     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0004)) // CAM control
#define ASIC_EM_MACTXCON1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0008)) // Transmit control
#define ASIC_EM_MACTXSTAT1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD000C)) // Transmit status
#define ASIC_EM_MACRXCON1   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0010)) // Receive control
#define ASIC_EM_MACRXSTAT1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0014)) // Receive status
//  Reserved                0xF00D0018 ~ 0xF00B0024
#define ASIC_EM_CAMEN1      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0028)) // CAM enable
//  Reserved                0xF00D002C ~ 0xF00D0038
#define ASIC_EM_MISSCNT1    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD003C)) // Missed error count
#define ASIC_EM_PZCNT1      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0040)) // Pause count
#define ASIC_EM_RMPZCNT1    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0044)) // Remote pause count
//  Reserved                0xF00D0048 ~ 0xF00D007C
#define ASIC_EM_CAM1        (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0080)) // CAM content (32 words) 0xF00D0080-0xF00D00FC
#define ASIC_EM_CAM1_REG(x) (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xD0080 + (x*0x4))) // CAM content Reg0~31

//--------------------------------------
// USB Function Registers
//--------------------------------------
#define ASIC_USBF_USBFA     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0000)) // USB function address register
#define ASIC_USBF_USBPM     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0004)) // USB power management register
#define ASIC_USBF_USBINTR   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0008)) // USB interrupt register
#define ASIC_USBF_USBINTRE  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE000C)) // USB interrupt enable register
#define ASIC_USBF_USBFN     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0010)) // USB frame number register
#define ASIC_USBF_USBDISCON (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0014)) // USB disconnect timer register
#define ASIC_USBF_USBEP0CSR (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0018)) // USB endpoint 0 common status register
#define ASIC_USBF_USBEP1CSR (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE001C)) // USB endpoint 1 common status register
#define ASIC_USBF_USBEP2CSR (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0020)) // USB endpoint 2 common status register
#define ASIC_USBF_USBEP3CSR (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0024)) // USB endpoint 3 common status register
#define ASIC_USBF_USBEP4CSR (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0028)) // USB endpoint 4 common status register
//  Reserved                0xF00E002C
#define ASIC_USBF_USBWCEP0  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0030)) // USB write count register for endpoint 0
#define ASIC_USBF_USBWCEP1  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0034)) // USB write count register for endpoint 1
#define ASIC_USBF_USBWCEP2  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0038)) // USB write count register for endpoint 2
#define ASIC_USBF_USBWCEP3  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE003C)) // USB write count register for endpoint 3
#define ASIC_USBF_USBWCEP4  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0040)) // USB write count register for endpoint 4
//  Reserved                0xF00E0044 ~ 0xF00E007C
#define ASIC_USBF_USBEP0    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0080)) // USB endpoint 0 FIFO
#define ASIC_USBF_USBEP1    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0084)) // USB endpoint 1 FIFO
#define ASIC_USBF_USBEP2    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0088)) // USB endpoint 2 FIFO
#define ASIC_USBF_USBEP3    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE008C)) // USB endpoint 3 FIFO
#define ASIC_USBF_USBEP4    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xE0090)) // USB endpoint 4 FIFO

//--------------------------------------
// I2C Controller Registers
//--------------------------------------
#define ASIC_I2C_IICCON     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xF0000)) // Control status register
#define ASIC_I2C_IICBUF     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xF0004)) // Shift buffer register
#define ASIC_I2C_IICPS      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xF0008)) // Prescaler register
#define ASIC_I2C_IICCNT     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xF000C)) // Prescaler counter register
#define ASIC_I2C_IICPND     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0xF0010)) // Interrupt pending register

//--------------------------------------
// USBHOST Controller Registers
//--------------------------------------
#define ASIC_USBHC_REV      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100000)) // HcRevision
#define ASIC_USBHC_CON      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100004)) // HcControl
#define ASIC_USBHC_CMDSTAT  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100008)) // HcCommandStatus
#define ASIC_USBHC_INTSTAT  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x10000C)) // HcInterruptStatus
#define ASIC_USBHC_INT      (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100010)) // HcInterruptEnable
#define ASIC_USBHC_INTDIS   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100014)) // HcInterruptDisable
#define ASIC_USBHC_HCCA     (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100018)) // HcHCCA
#define ASIC_USBHC_PRDCURED (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x10001C)) // HcPeriodCurrentED
#define ASIC_USBHC_CONHED   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100020)) // HcControlHeadED
#define ASIC_USBHC_CONCURED (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100024)) // HcControlCurrentED
#define ASIC_USBHC_BUKHED   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100028)) // HcBulkHeadED
#define ASIC_USBHC_BUKCURED (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x10002C)) // HcBulkCurrentED
#define ASIC_USBHC_DONEH    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100030)) // HcDoneHead
#define ASIC_USBHC_FMINTV   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100034)) // HcFmInterval
#define ASIC_USBHC_FMREM    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100038)) // HcFmRemaining
#define ASIC_USBHC_FMNUM    (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x10003C)) // HcFmNumber
#define ASIC_USBHC_PRDSTA   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100040)) // HcPeriodicStart
#define ASIC_USBHC_LSTHOD   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100044)) // HcLSThreshold
#define ASIC_USBHC_RHDESPA  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100048)) // HcRhDescriptorA
#define ASIC_USBHC_RHDESPB  (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x10004C)) // HcRhDescriptorB
#define ASIC_USBHC_RHSTAT   (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100050)) // HcRhStatus
#define ASIC_USBHC_RHPSTAT1 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100054)) // HcRhPortStatus1
#define ASIC_USBHC_RHPSTAT2 (*VPUINT32 (ASIC_SOC_BASE_ADDR + 0x100058)) // HcRhPortStatus2




//----------------------------------------------------------------------------------
// PCI (Mini-PCI) & PC Card Controller
// 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -