📄 cpci750.h
字号:
/* GT-Chipset Register Area *//* GT-Chipset internal SRAM 256k *//* SRAM on external device module *//* Real time clock on external device module *//* dobble UART on external device module *//* Data flash on external device module *//* Boot flash on external device module *//*******************************************************/#define CFG_DFL_GT_REGS 0x14000000 /* boot time GT_REGS */#define CFG_CPCI750_RESET_ADDR 0x14000000 /* After power on Reset the CPCI750 is here */#undef MARVEL_STANDARD_CFG#ifndef MARVEL_STANDARD_CFG/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/#define CFG_GT_REGS 0xf1000000 /* GT Registers will be mapped here *//*#define CFG_DEV_BASE 0xfc000000*/ /* GT Devices CS start here */#define CFG_INT_SRAM_BASE 0xf1080000 /* GT offers 256k internal fast SRAM */#define CFG_BOOT_SPACE 0xff000000 /* BOOT_CS0 flash 0 */#define CFG_DEV0_SPACE 0xfc000000 /* DEV_CS0 flash 1 */#define CFG_DEV1_SPACE 0xfd000000 /* DEV_CS1 flash 2 */#define CFG_DEV2_SPACE 0xfe000000 /* DEV_CS2 flash 3 */#define CFG_DEV3_SPACE 0xf0000000 /* DEV_CS3 nvram/can */#define CFG_BOOT_SIZE _16M /* cpci750 flash 0 */#define CFG_DEV0_SIZE _16M /* cpci750 flash 1 */#define CFG_DEV1_SIZE _16M /* cpci750 flash 2 */#define CFG_DEV2_SIZE _16M /* cpci750 flash 3 */#define CFG_DEV3_SIZE _16M /* cpci750 nvram/can *//*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/#endif/* Reset values for Port behavior (8bit/ 32bit, etc.) only corrected by device width */#define CFG_DEV0_PAR 0x8FDFFFFF /* 16 bit flash */#define CFG_DEV1_PAR 0x8FDFFFFF /* 16 bit flash */#define CFG_DEV2_PAR 0x8FDFFFFF /* 16 bit flash */#define CFG_DEV3_PAR 0x8FCFFFFF /* nvram/can */#define CFG_BOOT_PAR 0x8FDFFFFF /* 16 bit flash */ /* c 4 a 8 2 4 1 c */ /* 33 22|2222|22 22|111 1|11 11|1 1 | | */ /* 10 98|7654|32 10|987 6|54 32|1 098|7 654|3 210 */ /* 11|00|0100|10 10|100|0 00|10 0|100 0|001 1|100 */ /* 3| 0|.... ..| 2| 4 | 0 | 4 | 8 | 3 | 4 *//* MPP Control MV64360 Appendix P P. 632*/#define CFG_MPP_CONTROL_0 0x00002222 /* */#define CFG_MPP_CONTROL_1 0x11110000 /* */#define CFG_MPP_CONTROL_2 0x11111111 /* */#define CFG_MPP_CONTROL_3 0x00001111 /* *//* #define CFG_SERIAL_PORT_MUX 0x00000102*/ /* */#define CFG_GPP_LEVEL_CONTROL 0xffffffff /* 1111 1111 1111 1111 1111 1111 1111 1111*//* setup new config_value for MV64360 DDR-RAM To_do !! *//*# define CFG_SDRAM_CONFIG 0xd8e18200*/ /* 0x448 *//*# define CFG_SDRAM_CONFIG 0xd8e14400*/ /* 0x1400 */ /* GB has high prio. idma has low prio MPSC has low prio pci has low prio 1 and 2 cpu has high prio Data DQS pins == eight (DQS[7:0] foe x8 and x16 devices ECC disable non registered DRAM */ /* 31:26 25:22 21:20 19 18 17 16 */ /* 100001 0000 010 0 0 0 0 */ /* refresh_count=0x400 phisical interleaving disable virtual interleaving enable */ /* 15 14 13:0 */ /* 0 1 0x400 */# define CFG_SDRAM_CONFIG 0x58200400 /* 0x1400 copied from Dink32 bzw. VxWorks*//*----------------------------------------------------------------------- * PCI stuff *----------------------------------------------------------------------- */#define PCI_HOST_ADAPTER 0 /* configure ar pci adapter */#define PCI_HOST_FORCE 1 /* configure as pci host */#define PCI_HOST_AUTO 2 /* detected via arbiter enable */#define CONFIG_PCI /* include pci support */#define CONFIG_PCI_HOST PCI_HOST_FORCE /* select pci host function */#define CONFIG_PCI_PNP /* do pci plug-and-play */#define CONFIG_PCI_SCAN_SHOW /* show devices on bus *//* PCI MEMORY MAP section */#define CFG_PCI0_MEM_BASE 0x80000000#define CFG_PCI0_MEM_SIZE _128M#define CFG_PCI1_MEM_BASE 0x88000000#define CFG_PCI1_MEM_SIZE _128M#define CFG_PCI0_0_MEM_SPACE (CFG_PCI0_MEM_BASE)#define CFG_PCI1_0_MEM_SPACE (CFG_PCI1_MEM_BASE)/* PCI I/O MAP section */#define CFG_PCI0_IO_BASE 0xfa000000#define CFG_PCI0_IO_SIZE _16M#define CFG_PCI1_IO_BASE 0xfb000000#define CFG_PCI1_IO_SIZE _16M#define CFG_PCI0_IO_SPACE (CFG_PCI0_IO_BASE)#define CFG_PCI0_IO_SPACE_PCI 0x00000000#define CFG_PCI1_IO_SPACE (CFG_PCI1_IO_BASE)#define CFG_PCI1_IO_SPACE_PCI 0x00000000#define CFG_ISA_IO_BASE_ADDRESS (CFG_PCI0_IO_BASE)#if defined (CONFIG_750CX)#define CFG_PCI_IDSEL 0x0#else#define CFG_PCI_IDSEL 0x30#endif/*----------------------------------------------------------------------- * IDE/ATA stuff *----------------------------------------------------------------------- */#undef CONFIG_IDE_8xx_DIRECT /* no pcmcia interface required */#undef CONFIG_IDE_LED /* no led for ide supported */#define CONFIG_IDE_RESET /* no reset for ide supported */#define CONFIG_IDE_PREINIT /* check for units */#define CFG_IDE_MAXBUS 2 /* max. 1 IDE busses */#define CFG_IDE_MAXDEVICE (CFG_IDE_MAXBUS*2) /* max. 1 drives per IDE bus */#define CFG_ATA_BASE_ADDR 0#define CFG_ATA_IDE0_OFFSET 0#define CFG_ATA_IDE1_OFFSET 0#define CFG_ATA_DATA_OFFSET 0x0000 /* Offset for data I/O */#define CFG_ATA_REG_OFFSET 0x0000 /* Offset for normal register accesses */#define CFG_ATA_ALT_OFFSET 0x0000 /* Offset for alternate registers *//*---------------------------------------------------------------------- * Initial BAT mappings *//* NOTES: * 1) GUARDED and WRITE_THRU not allowed in IBATS * 2) CACHEINHIBIT and WRITETHROUGH not allowed together in same BAT *//* SDRAM */#define CFG_IBAT0L (CFG_SDRAM_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT0U (CFG_SDRAM_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT0L (CFG_SDRAM_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT0U CFG_IBAT0U/* init ram */#define CFG_IBAT1L (CFG_INIT_RAM_ADDR | BATL_PP_RW | BATL_MEMCOHERENCE)#define CFG_IBAT1U (CFG_INIT_RAM_ADDR | BATU_BL_256K | BATU_VS | BATU_VP)#define CFG_DBAT1L CFG_IBAT1L#define CFG_DBAT1U CFG_IBAT1U/* PCI0, PCI1 in one BAT */#define CFG_IBAT2L BATL_NO_ACCESS#define CFG_IBAT2U CFG_DBAT2U#define CFG_DBAT2L (CFG_PCI0_MEM_BASE | BATL_CACHEINHIBIT | BATL_PP_RW | BATL_GUARDEDSTORAGE)#define CFG_DBAT2U (CFG_PCI0_MEM_BASE | BATU_BL_256M | BATU_VS | BATU_VP)/* GT regs, bootrom, all the devices, PCI I/O */#define CFG_IBAT3L (CFG_MISC_REGION_BASE | BATL_CACHEINHIBIT | BATL_PP_RW)#define CFG_IBAT3U (CFG_MISC_REGION_BASE | BATU_VS | BATU_VP | BATU_BL_256M)#define CFG_DBAT3L (CFG_MISC_REGION_BASE | BATL_CACHEINHIBIT | BATL_PP_RW | BATL_GUARDEDSTORAGE)#define CFG_DBAT3U CFG_IBAT3U/* * 750FX IBAT and DBAT pairs (To_do: define regins for I(D)BAT4 - I(D)BAT7) * IBAT4 and DBAT4 * FIXME: ingo disable BATs for Linux Kernel */#undef SETUP_HIGH_BATS_FX750 /* don't initialize BATS 4-7 *//*#define SETUP_HIGH_BATS_FX750*/ /* initialize BATS 4-7 */#ifdef SETUP_HIGH_BATS_FX750#define CFG_IBAT4L (CFG_SDRAM1_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT4U (CFG_SDRAM1_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT4L (CFG_SDRAM1_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT4U CFG_IBAT4U/* IBAT5 and DBAT5 */#define CFG_IBAT5L (CFG_SDRAM2_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT5U (CFG_SDRAM2_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT5L (CFG_SDRAM2_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT5U CFG_IBAT5U/* IBAT6 and DBAT6 */#define CFG_IBAT6L (CFG_SDRAM3_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT6U (CFG_SDRAM3_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT6L (CFG_SDRAM3_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT6U CFG_IBAT6U/* IBAT7 and DBAT7 */#define CFG_IBAT7L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT7U (CFG_SDRAM4_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT7L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT7U CFG_IBAT7U#else /* set em out of range for Linux !!!!!!!!!!! */#define CFG_IBAT4L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT4U (CFG_SDRAM4_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT4L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT4U CFG_IBAT4U/* IBAT5 and DBAT5 */#define CFG_IBAT5L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT5U (CFG_SDRAM4_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT5L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT5U CFG_IBAT4U/* IBAT6 and DBAT6 */#define CFG_IBAT6L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT6U (CFG_SDRAM4_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT6L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT6U CFG_IBAT4U/* IBAT7 and DBAT7 */#define CFG_IBAT7L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT)#define CFG_IBAT7U (CFG_SDRAM4_BASE | BATU_BL_256M | BATU_VS | BATU_VP)#define CFG_DBAT7L (CFG_SDRAM4_BASE | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)#define CFG_DBAT7U CFG_IBAT4U#endif/* FIXME: ingo end: disable BATs for Linux Kernel *//* I2C addresses for the two DIMM SPD chips */#define DIMM0_I2C_ADDR 0x51#define DIMM1_I2C_ADDR 0x52/* * For booting Linux, the board info and command line data * have to be in the first 8 MB of memory, since this is * the maximum mapped by the Linux kernel during initialization. */#define CFG_BOOTMAPSZ (8<<20) /* Initial Memory map for Linux *//*----------------------------------------------------------------------- * FLASH organization */#define CFG_BOOT_FLASH_WIDTH 2 /* 16 bit */#define CFG_FLASH_ERASE_TOUT 120000 /* Timeout for Flash Erase (in ms) */#define CFG_FLASH_WRITE_TOUT 500 /* Timeout for Flash Write (in ms) */#define CFG_FLASH_LOCK_TOUT 500 /* Timeout for Flash Lock (in ms) */#if 0#define CFG_ENV_IS_IN_FLASH 0#define CFG_ENV_SIZE 0x1000 /* Total Size of Environment Sector */#define CFG_ENV_SECT_SIZE 0x10000#define CFG_ENV_ADDR 0xFFF78000 /* Marvell 8-Bit Bootflash last sector *//* #define CFG_ENV_ADDR (CFG_FLASH_BASE+CFG_MONITOR_LEN-CFG_ENV_SECT_SIZE) */#endif#define CFG_ENV_IS_IN_EEPROM 1 /* use EEPROM for environment vars */#define CFG_EEPROM_PAGE_WRITE_BITS 5#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 20#define CFG_I2C_EEPROM_ADDR 0x050#define CFG_ENV_OFFSET 0x200 /* environment starts at the beginning of the EEPROM */#define CFG_ENV_SIZE 0x600 /* 2048 bytes may be used for env vars*/#define CFG_NVRAM_BASE_ADDR 0xf0000000 /* NVRAM base address */#define CFG_NVRAM_SIZE (32*1024) /* NVRAM size */#define CFG_VXWORKS_MAC_PTR (CFG_NVRAM_BASE_ADDR+CFG_NVRAM_SIZE-0x40)/*----------------------------------------------------------------------- * Cache Configuration */#define CFG_CACHELINE_SIZE 32 /* For all MPC74xx CPUs */#if (CONFIG_COMMANDS & CFG_CMD_KGDB)#define CFG_CACHELINE_SHIFT 5 /* log base 2 of the above value */#endif/*----------------------------------------------------------------------- * L2CR setup -- make sure this is right for your board! * look in include/mpc74xx.h for the defines used here *//*#define CFG_L2*/#undef CFG_L2/* #ifdef CONFIG_750CX*/#if defined (CONFIG_750CX) || defined (CONFIG_750FX)#define L2_INIT 0#else#define L2_INIT (L2CR_L2SIZ_2M | L2CR_L2CLK_3 | L2CR_L2RAM_BURST | \ L2CR_L2OH_5 | L2CR_L2CTL | L2CR_L2WT)#endif#define L2_ENABLE (L2_INIT | L2CR_L2E)/* * Internal Definitions * * Boot Flags */#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */#define BOOTFLAG_WARM 0x02 /* Software reboot */#define CFG_BOARD_ASM_INIT 1#endif /* __CONFIG_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -