idt79rc233x.h

来自「eCos操作系统源码」· C头文件 代码 · 共 575 行 · 第 1/2 页

H
575
字号
#define FP_EXC_I        0x1000          /* inexact operation */#define FP_EXC_U        0x2000          /* underflow */#define FP_EXC_O        0x4000          /* overflow */#define FP_EXC_Z        0x8000          /* divide by zero */#define FP_EXC_V        0x10000         /* invalid operation */#define FP_EXC_E        0x20000         /* unimplemented operation */							  #define C0_INX        $0              /* Index into TLB Array - 4Kc core */#define C0_RANDOM       $1              /* Randomly generated index into TLB Array - 4Kc core */#define C0_TLBLO0     $2              /* Low-order portion of the TLB entry for even-numbered virtual pages - 4Kc core */#define C0_TLBLO1     $3              /* Low-order portion of the TLB entry for odd-numbered virtual pages - 4Kc core */#define C0_PAGEMASK     $5              /* Pointer to page table entry in memory - 4Kc core */#define C0_WIRED        $6              /* Number of fixed TLB entries - 4Kc core */#define C0_TLBHI      $10             /* High-order portion of the TLB entry - 4Kc core */#define C0_PRId         $15             /* Processor Identification and Revision */#define C0_CONFIG       $16             /* Configuration Register */#define C0_LLADDR       $17             /* Load linked address */#define C0_LLADDR       $17             /* Load linked address */#define C0_DEBUG        $23             /* Debug control and exception status */#define C0_DEPC         $24             /* Program counter at last debug exception */#define C0_TAGLO        $28             /* Low-order portion of cache tag interface */#define C0_TAGHI        $29             /* High-order portion of cache tag interface (not implemented in 4K cores */#define C0_DESAVE       $31             /* Debug handler scratch pad register */#define TARGET_S334#define BUS		                 0#define PORT_WIDTH_CNTL_REG     0xffffe200#define BUS_TURN_AROUND_REG     0xffffe204#define BUS_TURN_AROUND_CNTRL_REG     0xb8000000#define BUS_TURN_AROUND_VAL     0x00000000 #define ADDRESS_LATCH_TIMING_REG	0xB8000004#define ADDRESS_LATCH_TIMING_VAL	0x00000007#define PORT_WIDTH_CNTL_VAL     0xaa822aaa#define SDRAM_TEST_PATTERN      0xaa55aa55/* RC32134 Register Settings               */#define MEM_BASE_BASE           0xb8000080#define MBA_REG0                0x1fc00000#define MBM_REG0                0xffC00000#define MEM_CTL_BASE            0xb8000200#define MCR_CS0_BS              0x23ef23ef#define MCR_CS1_BS              0x28632863#define MCR_CS2_BS              0x60e760e7#define MCR_CS3_BS              0x60e760e7  /* NVRAM    */#define MCR_CS4_BS              0x60e760e7  /* S334 LED */#define MCR_CS5_BS              0x60e760e7#define RHEA_IREG_BASE          0xb8000000#define SODIMM                     1#define DRAM_BNK0_BASE          0x00000000#define DRAM_BNK1_BASE          0x01000000#define DRAM_BNK2_BASE          0x02000000#define DRAM_BNK3_BASE          0x03000000#define DRAM_BNK0_MASK          0xff000000#define DRAM_BNK1_MASK          0xff000000#define DRAM_BNK2_MASK          0xff000000#define DRAM_BNK3_MASK          0xff000000#define MBA_REG1                0x04000000#define MBM_REG1                0xffff0000#define SDRAM_CR_BS             0x8955c0ff#define SDRAM_PC_VAL            0x8955c0a0#define SDRAM_RFRSH_CMD         0x8955c090#define SDRAM_MODE_REG          0x8955c080#define SDRAM_CSEL_PARK         0x8955c0ff#define TIMER_BASE              0xb8000700#define DRAM_RF_CMPR_BS         0x00000040#define DRAM_RF_CMPR_SE_BS      0x00000200#define CPU_BERR_BS             0xff#define IP_BERR_BS              0xff#define DISABLE_TIMER           0x0#define ENABLE_TIMER            0x1#define CPU_CLOCK_RATE	        75000000/* define macro so drivers will call sysWbFlush() */#define SYS_WB_FLUSH/* task default status register */#define INT_LVL_PCI        INT_LVL_IORQ1 #define INT_LVL_SR_IMASK  (INT_LVL_PCI | INT_LVL_IORQ3 |\                           INT_LVL_SW0 | INT_LVL_SW1 )#define RC32364_SR        (SR_CU0| INT_LVL_SR_IMASK |\                           INT_LVL_TIMER | SR_IE)/* interrupt priority */#define INT_PRIO_MSB       TRUE            /* interrupt priority msb highest *//* Miscellaneous */#define PIO_DATA_REG0         0xb8000600#define PIO_FUNC_SELECT_REG0  0xb8000608#define PIO_DATA_REG1         0xb8000610#define PIO_DIRCNTL_REG1      0xb8000614#define PIO_FUNC_SELECT_REG1  0xb8000618#define CYG_MGMT_LED_MASK     0x00000008#define CYG_STATUS_LED_MASK   0x00000003#define CYG_TEST_LED1_MASK    0x00000002#define CYG_TEST_LED2_MASK    0x00000004#define CYG_STATUS_LED_GREEN  0x00000001#define CYG_STATUS_LED_ORANGE 0x00000002/* PIO definition for Internal Uart   */#define PIO_DIRCNTL_REG         0xb8000604#define PIO_FUNCSEL_MASK        0xf0#define PIO_DIRCNTL_MASK        0xffffff0f#define PIO_DIRCNTL_VAL         0x50/* Serial grouping */#define SERIAL_PORT0_GROUP		5#define SERIAL_PORT1_GROUP		6/* Rc32134 Interrupt controller settings for Uart */#define INTR_STATUS_PTR         0xb8000500#define INTR_MASK_REG           0xb8000504#define INTR_CLEAR_REG          0xb8000508#define INTR_COM0_REG           0xb8000554#define INTR_COM1_REG           0xb8000564#define INTR_CLEAR_COM0         0xb8000558#define INTR_PEND_COM0          0xb8000550#define INTR_CLEAR_COM1         0xb8000568#define INTR_PEND_COM1          0xb8000560#define INTR_CLEAR_MASTER       0xb8000508#define INTR_PEND_MASTER        0xb8000500#define INTR_MASTERMASK_COM1    0x0020#define INTR_MASTERMASK_COM2    0x0040#define INTR_MASTERMASK_UART    ( INTR_MASTERMASK_COM1 | INTR_MASTERMASK_COM2 )/* Rc32134 Timer0(used as Auxiliary clock)interrupts */#define AUX_TIMER_INTR_PEND     0xb8000540#define AUX_TIMER_INTR_MASK     0xb8000544#define AUX_TIMER_INTR_CLEAR    0xb8000548#define INTR_MASTERMASK_TIMER0  0x0010#define AUX_TIMER_CNTL_REG      0xb8000700#define AUX_TIMER_CNT_REG       0xb8000704#define AUX_TIMER_CMP_REG       0xb8000708#define AUX_CLOCK_FREQ          (2 * NS16550_XTAL_FREQ)   /* Rc32364 Tlb attributes for PCI transactions */#define PCI_MMU_PAGEMASK         0x00000fff#define MMU_PAGE_UNCACHED        0x00000010#define MMU_PAGE_DIRTY           0x00000004#define MMU_PAGE_VALID           0x00000002#define MMU_PAGE_GLOBAL          0x00000001#define PCI_MMU_PAGEATTRIB       (MMU_PAGE_UNCACHED|MMU_PAGE_DIRTY|\                                  MMU_PAGE_VALID|MMU_PAGE_GLOBAL)#define PCI_MEMORY_SPACE1        0x40000000#define PCI_MEMORY_SPACE2        0x60000000#define PCI_IO_SPACE             0x18000000#define PCI_PAGE_SIZE            0x01000000#define TLB_HI_MASK              0xffffe000#define TLB_LO_MASK              0x3fffffff#define PAGEMASK_SHIFT                   13#define TLB_LO_SHIFT                      6/* RC32134 PCI definitions */#define PCI_CONFIG_ADDR_REG      0xb8002cf8#define PCI_CONFIG_DATA_REG      0xb8002cfc/* Rhea's Configuration Address*/#define RHEA_CONFIG0_ADDR        0x80000000#define RHEA_CONFIG1_ADDR        0x80000004#define RHEA_CONFIG2_ADDR        0x80000008#define RHEA_CONFIG3_ADDR        0x8000000c#define RHEA_CONFIG4_ADDR        0x80000010#define RHEA_CONFIG5_ADDR        0x80000014#define RHEA_CONFIG6_ADDR        0x80000018#define RHEA_CONFIG7_ADDR        0x8000001c#define RHEA_CONFIG8_ADDR        0x80000020#define RHEA_CONFIG9_ADDR        0x80000024#define RHEA_CONFIG10_ADDR       0x80000028#define RHEA_CONFIG11_ADDR       0x8000002c#define RHEA_CONFIG12_ADDR       0x80000030#define RHEA_CONFIG13_ADDR       0x80000034#define RHEA_CONFIG14_ADDR       0x80000038#define RHEA_CONFIG15_ADDR       0x8000003c#define RHEA_CONFIG16_ADDR       0x80000040/* Rhea's configuration Header */#define RHEA_PCI_CONFIG0       0x032410b5   /* Device ID & Vendor ID                        */#define RHEA_PCI_CONFIG1       0x02a00157   /* Status & Command                             */#define RHEA_PCI_CONFIG2       0x06800001   /* Class Code & Revision ID                     */#define RHEA_PCI_CONFIG3       0x0000ff04   /* BIST, Header Type, Latency, & Cacheline Size */#define RHEA_PCI_CONFIG4       0xa0000000   /* PCI Memory Address that Rhea responds to.    */#define RHEA_PCI_CONFIG5       0x60000000   /* PCI Dual Cycle Address that Rhea responds to.*/#define RHEA_PCI_CONFIG6       0x00800001   /* PCI I/O Address that Rhea responds to.       */#define RHEA_PCI_CONFIG7       0x00000000#define RHEA_PCI_CONFIG8       0x00000000#define RHEA_PCI_CONFIG9       0x00000000#define RHEA_PCI_CONFIG10      0x00000000#define RHEA_PCI_CONFIG11      0x013410b5#define RHEA_PCI_CONFIG12      0x00000000#define RHEA_PCI_CONFIG13      0x00000000#define RHEA_PCI_CONFIG14      0x00000000#define RHEA_PCI_CONFIG15      0x38080101/* Because of an errata in Rc32134 Pci Bridge, Scanning does not work properly.   The device number is selected based on which pci slot on S134 board is being   used */#define PCI_BUS                         0#define PCI_DEVICE_U28                  2      /* PCI Slot U28 */#define PCI_DEVICE_U29                  3      /* PCI Slot U29 */#define PCI_DEVICE_U20                  4      /* PCI Slot U20 */#define PCI_FUNC                        0/* Latency for the Pci/Ethernet Card   */#define PCI_DEVICE_MAX_LATENCY          0x0000ff00/* BusErrCntReg is used to disable/Enable BusError thrown on PCI   bus on scanning */#define BUS_ERR_CNTL_REG_ADDR           0xb8000010/* FEI PCI bus resources */#define FEI_IO_MAP_USE#define FEI_OFFSET_ADD#define FEI0_MEMBASE0           0x40800000      /* memory base for CSR */#define FEI0_MEMSIZE0           0x00001000      /* memory size for CSR, 4KB */#define FEI0_MEMBASE1           0x40a00000      /* memory base for Flash */#define FEI0_MEMSIZE1           0x00100000      /* memory size for Flash, 1MB */#define FEI0_IOBASE0            0x18800000      /* IO base for CSR, 32Bytes */#define FEI0_INT_LVL            0x1             /* IRQ 1                    */#define PCI_CFG_TYPE  		PCI_CFG_FORCE/* Redefine PCI_CONFIG_ADDR & PCI_CONFIG_DATA */#define CPU_TO_PCI_MEM_BASE	0x40000001#define CPU_TO_PCI_IO_BASE	0x18800001#define PCI_TO_CPU_MEM_BASE	0x00000000#define PCI_TO_CPU_IO_BASE      0x00800001#define IDT134_PCI_BASE		0xb8000000#define IDT134_PCI_MEM_BAR1    	(IDT134_PCI_BASE + 0x20B0)#define IDT134_PCI_MEM_BAR2 	(IDT134_PCI_BASE + 0x20B8)#define IDT134_PCI_MEM_BAR3	(IDT134_PCI_BASE + 0x20C0)#define IDT134_PCI_IO_BAR	(IDT134_PCI_BASE + 0x20C8)#define IDT134_PCI_ARB_REG	(IDT134_PCI_BASE + 0x20E0)#define IDT134_PCI_CPU_BAR1	(IDT134_PCI_BASE + 0x20E8)#define IDT134_PCI_CPU_IO_BAR	(IDT134_PCI_BASE + 0x2100)#define IDT134_PCI_CONFIG_ADDR  (IDT134_PCI_BASE + 0x2CF8)#define IDT134_PCI_CONFIG_DATA  (IDT134_PCI_BASE + 0x2CFC)#define IDT134_BAR_MEM_SWAP	0x00000001							  #endif /* CYGONCE_HAL_IDT79RC233X_H *//*---------------------------------------------------------------------------*//* end of idt79rc233x.h                                                      */

⌨️ 快捷键说明

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