📄 bonito64.h
字号:
/* 6. PCI cache */#define BONITO_PCICACHECTRL BONITO(BONITO_REGBASE + 0x50)#define BONITO_PCICACHETAG BONITO(BONITO_REGBASE + 0x54)#define BONITO_PCIBADADDR BONITO(BONITO_REGBASE + 0x58)#define BONITO_PCIMSTAT BONITO(BONITO_REGBASE + 0x5c)/*#define BONITO_PCIRDPOST BONITO(BONITO_REGBASE + 0x60)#define BONITO_PCIDATA BONITO(BONITO_REGBASE + 0x64)*//* 7. IDE DMA & Copier */#define BONITO_CONFIGBASE 0x000#define BONITO_BONITOBASE 0x100#define BONITO_LDMABASE 0x200#define BONITO_COPBASE 0x300#define BONITO_REG_BLOCKMASK 0x300#define BONITO_LDMACTRL BONITO(BONITO_LDMABASE + 0x0)#define BONITO_LDMASTAT BONITO(BONITO_LDMABASE + 0x0)#define BONITO_LDMAADDR BONITO(BONITO_LDMABASE + 0x4)#define BONITO_LDMAGO BONITO(BONITO_LDMABASE + 0x8)#define BONITO_LDMADATA BONITO(BONITO_LDMABASE + 0xc)#define BONITO_COPCTRL BONITO(BONITO_COPBASE + 0x0)#define BONITO_COPSTAT BONITO(BONITO_COPBASE + 0x0)#define BONITO_COPPADDR BONITO(BONITO_COPBASE + 0x4)#define BONITO_COPDADDR BONITO(BONITO_COPBASE + 0x8)#define BONITO_COPGO BONITO(BONITO_COPBASE + 0xc)/* ###### Bit Definitions for individual Registers #### *//* Gen DMA. */#define BONITO_IDECOPDADDR_DMA_DADDR 0x0ffffffc#define BONITO_IDECOPDADDR_DMA_DADDR_SHIFT 2#define BONITO_IDECOPPADDR_DMA_PADDR 0xfffffffc#define BONITO_IDECOPPADDR_DMA_PADDR_SHIFT 2#define BONITO_IDECOPGO_DMA_SIZE 0x0000fffe#define BONITO_IDECOPGO_DMA_SIZE_SHIFT 0#define BONITO_IDECOPGO_DMA_WRITE 0x00010000#define BONITO_IDECOPGO_DMAWCOUNT 0x000f0000#define BONITO_IDECOPGO_DMAWCOUNT_SHIFT 16#define BONITO_IDECOPCTRL_DMA_STARTBIT 0x80000000#define BONITO_IDECOPCTRL_DMA_RSTBIT 0x40000000/* DRAM - sdCfg */#define BONITO_SDCFG_AROWBITS 0x00000003#define BONITO_SDCFG_AROWBITS_SHIFT 0#define BONITO_SDCFG_ACOLBITS 0x0000000c#define BONITO_SDCFG_ACOLBITS_SHIFT 2#define BONITO_SDCFG_ABANKBIT 0x00000010#define BONITO_SDCFG_ASIDES 0x00000020#define BONITO_SDCFG_AABSENT 0x00000040#define BONITO_SDCFG_AWIDTH64 0x00000080#define BONITO_SDCFG_BROWBITS 0x00000300#define BONITO_SDCFG_BROWBITS_SHIFT 8#define BONITO_SDCFG_BCOLBITS 0x00000c00#define BONITO_SDCFG_BCOLBITS_SHIFT 10#define BONITO_SDCFG_BBANKBIT 0x00001000#define BONITO_SDCFG_BSIDES 0x00002000#define BONITO_SDCFG_BABSENT 0x00004000#define BONITO_SDCFG_BWIDTH64 0x00008000#define BONITO_SDCFG_EXTRDDATA 0x00010000#define BONITO_SDCFG_EXTRASCAS 0x00020000#define BONITO_SDCFG_EXTPRECH 0x00040000#define BONITO_SDCFG_EXTRASWIDTH 0x00180000#define BONITO_SDCFG_EXTRASWIDTH_SHIFT 19/* Changed by RPF 11-9-00 */#define BONITO_SDCFG_DRAMMODESET 0x00200000/* --- */#define BONITO_SDCFG_DRAMEXTREGS 0x00400000#define BONITO_SDCFG_DRAMPARITY 0x00800000/* Added by RPF 11-9-00 */#define BONITO_SDCFG_DRAMBURSTLEN 0x03000000#define BONITO_SDCFG_DRAMBURSTLEN_SHIFT 24#define BONITO_SDCFG_DRAMMODESET_DONE 0x80000000/* --- *//* PCI Cache - pciCacheCtrl */#define BONITO_PCICACHECTRL_CACHECMD 0x00000007#define BONITO_PCICACHECTRL_CACHECMD_SHIFT 0#define BONITO_PCICACHECTRL_CACHECMDLINE 0x00000018#define BONITO_PCICACHECTRL_CACHECMDLINE_SHIFT 3#define BONITO_PCICACHECTRL_CMDEXEC 0x00000020#define BONITO_IODEVCFG_BUFFBIT_CS0 0x00000001#define BONITO_IODEVCFG_SPEEDBIT_CS0 0x00000002#define BONITO_IODEVCFG_MOREABITS_CS0 0x00000004#define BONITO_IODEVCFG_BUFFBIT_CS1 0x00000008#define BONITO_IODEVCFG_SPEEDBIT_CS1 0x00000010#define BONITO_IODEVCFG_MOREABITS_CS1 0x00000020#define BONITO_IODEVCFG_BUFFBIT_CS2 0x00000040#define BONITO_IODEVCFG_SPEEDBIT_CS2 0x00000080#define BONITO_IODEVCFG_MOREABITS_CS2 0x00000100#define BONITO_IODEVCFG_BUFFBIT_CS3 0x00000200#define BONITO_IODEVCFG_SPEEDBIT_CS3 0x00000400#define BONITO_IODEVCFG_MOREABITS_CS3 0x00000800#define BONITO_IODEVCFG_BUFFBIT_IDE 0x00001000#define BONITO_IODEVCFG_SPEEDBIT_IDE 0x00002000#define BONITO_IODEVCFG_WORDSWAPBIT_IDE 0x00004000#define BONITO_IODEVCFG_MODEBIT_IDE 0x00008000#define BONITO_IODEVCFG_DMAON_IDE 0x001f0000#define BONITO_IODEVCFG_DMAON_IDE_SHIFT 16#define BONITO_IODEVCFG_DMAOFF_IDE 0x01e00000#define BONITO_IODEVCFG_DMAOFF_IDE_SHIFT 21#define BONITO_IODEVCFG_EPROMSPLIT 0x02000000/* Added by RPF 11-9-00 */#define BONITO_IODEVCFG_CPUCLOCKPERIOD 0xfc000000#define BONITO_IODEVCFG_CPUCLOCKPERIOD_SHIFT 26/* --- *//* gpio */#define BONITO_GPIO_GPIOW 0x000003ff#define BONITO_GPIO_GPIOW_SHIFT 0#define BONITO_GPIO_GPIOR 0x01ff0000#define BONITO_GPIO_GPIOR_SHIFT 16#define BONITO_GPIO_GPINR 0xfe000000#define BONITO_GPIO_GPINR_SHIFT 25#define BONITO_GPIO_IOW(N) (1<<(BONITO_GPIO_GPIOW_SHIFT+(N)))#define BONITO_GPIO_IOR(N) (1<<(BONITO_GPIO_GPIOR_SHIFT+(N)))#define BONITO_GPIO_INR(N) (1<<(BONITO_GPIO_GPINR_SHIFT+(N)))/* ICU */#define BONITO_ICU_MBOXES 0x0000000f#define BONITO_ICU_MBOXES_SHIFT 0#define BONITO_ICU_DMARDY 0x00000010#define BONITO_ICU_DMAEMPTY 0x00000020#define BONITO_ICU_COPYRDY 0x00000040#define BONITO_ICU_COPYEMPTY 0x00000080#define BONITO_ICU_COPYERR 0x00000100#define BONITO_ICU_PCIIRQ 0x00000200#define BONITO_ICU_MASTERERR 0x00000400#define BONITO_ICU_SYSTEMERR 0x00000800#define BONITO_ICU_DRAMPERR 0x00001000#define BONITO_ICU_RETRYERR 0x00002000#define BONITO_ICU_GPIOS 0x01ff0000#define BONITO_ICU_GPIOS_SHIFT 16#define BONITO_ICU_GPINS 0x7e000000#define BONITO_ICU_GPINS_SHIFT 25#define BONITO_ICU_MBOX(N) (1<<(BONITO_ICU_MBOXES_SHIFT+(N)))#define BONITO_ICU_GPIO(N) (1<<(BONITO_ICU_GPIOS_SHIFT+(N)))#define BONITO_ICU_GPIN(N) (1<<(BONITO_ICU_GPINS_SHIFT+(N)))/* pcimap */#define BONITO_PCIMAP_PCIMAP_LO0 0x0000003f#define BONITO_PCIMAP_PCIMAP_LO0_SHIFT 0#define BONITO_PCIMAP_PCIMAP_LO1 0x00000fc0#define BONITO_PCIMAP_PCIMAP_LO1_SHIFT 6#define BONITO_PCIMAP_PCIMAP_LO2 0x0003f000#define BONITO_PCIMAP_PCIMAP_LO2_SHIFT 12#define BONITO_PCIMAP_PCIMAP_2 0x00040000#define BONITO_PCIMAP_WIN(WIN,ADDR) ((((ADDR)>>26) & BONITO_PCIMAP_PCIMAP_LO0) << ((WIN)*6))#define BONITO_PCIMAP_WINSIZE (1<<26)#define BONITO_PCIMAP_WINOFFSET(ADDR) ((ADDR) & (BONITO_PCIMAP_WINSIZE - 1))#define BONITO_PCIMAP_WINBASE(ADDR) ((ADDR) << 26)/* pcimembaseCfg */#define BONITO_PCIMEMBASECFG_MASK 0xf0000000#define BONITO_PCIMEMBASECFG_MEMBASE0_MASK 0x0000001f#define BONITO_PCIMEMBASECFG_MEMBASE0_MASK_SHIFT 0#define BONITO_PCIMEMBASECFG_MEMBASE0_TRANS 0x000003e0#define BONITO_PCIMEMBASECFG_MEMBASE0_TRANS_SHIFT 5#define BONITO_PCIMEMBASECFG_MEMBASE0_CACHED 0x00000400#define BONITO_PCIMEMBASECFG_MEMBASE0_IO 0x00000800#define BONITO_PCIMEMBASECFG_MEMBASE1_MASK 0x0001f000#define BONITO_PCIMEMBASECFG_MEMBASE1_MASK_SHIFT 12#define BONITO_PCIMEMBASECFG_MEMBASE1_TRANS 0x003e0000#define BONITO_PCIMEMBASECFG_MEMBASE1_TRANS_SHIFT 17#define BONITO_PCIMEMBASECFG_MEMBASE1_CACHED 0x00400000#define BONITO_PCIMEMBASECFG_MEMBASE1_IO 0x00800000#define BONITO_PCIMEMBASECFG_ASHIFT 23#define BONITO_PCIMEMBASECFG_AMASK 0x007fffff#define BONITO_PCIMEMBASECFGSIZE(WIN,SIZE) (((~((SIZE)-1))>>(BONITO_PCIMEMBASECFG_ASHIFT-BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK)#define BONITO_PCIMEMBASECFGBASE(WIN,BASE) (((BASE)>>(BONITO_PCIMEMBASECFG_ASHIFT-BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS_SHIFT)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS)#define BONITO_PCIMEMBASECFG_SIZE(WIN,CFG) (((((~(CFG)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK)) << (BONITO_PCIMEMBASECFG_ASHIFT - BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT)) | BONITO_PCIMEMBASECFG_AMASK)#define BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)#define BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)#define BONITO_PCIMEMBASECFG_ADDRTRANS(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)#define BONITO_PCITOPHYS(WIN,ADDR,CFG) ( \ (((ADDR) & (~(BONITO_PCIMEMBASECFG_MASK))) & (~(BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG)))) | \ (BONITO_PCIMEMBASECFG_ADDRTRANS(WIN,CFG)) \ )/* PCICmd */#define BONITO_PCICMD_MEMEN 0x00000002#define BONITO_PCICMD_MSTREN 0x00000004#endif /* _ASM_MIPS_BOARDS_BONITO64_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -