📄 gw8260.h
字号:
(CFG_SBC_MODCK_H & HRCW_MODCK_H1111) | \ CFG_SBC_HRCW_BOOT_FLAGS )/* no slaves */#define CFG_HRCW_SLAVE1 0#define CFG_HRCW_SLAVE2 0#define CFG_HRCW_SLAVE3 0#define CFG_HRCW_SLAVE4 0#define CFG_HRCW_SLAVE5 0#define CFG_HRCW_SLAVE6 0#define CFG_HRCW_SLAVE7 0/*----------------------------------------------------------------------- * Definitions for initial stack pointer and data area (in DPRAM) */#define CFG_INIT_RAM_ADDR CFG_IMMR#define CFG_INIT_RAM_END 0x4000 /* End of used area in DPRAM */#define CFG_GBL_DATA_SIZE 128 /* bytes reserved for initial data */#define CFG_GBL_DATA_OFFSET (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)#define CFG_INIT_SP_OFFSET CFG_GBL_DATA_OFFSET/*----------------------------------------------------------------------- * Start addresses for the final memory configuration * (Set up by the startup code) * Please note that CFG_SDRAM_BASE _must_ start at 0 * Note also that the logic that sets CFG_RAMBOOT is platform dependent. */#define CFG_MONITOR_BASE CFG_FLASH0_BASE#define CFG_MONITOR_LEN (256 * 1024) /* Reserve 256 kB for Monitor */#define CFG_MALLOC_LEN (128 * 1024) /* Reserve 128 kB for malloc() *//* * 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 * 1024 * 1024) /* Initial Memory map for Linux *//*----------------------------------------------------------------------- * FLASH and environment organization */#define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */#define CFG_MAX_FLASH_SECT 32 /* max number of sectors on one chip */#define CFG_FLASH_ERASE_TOUT 8000 /* Timeout for Flash Erase (in ms) */#define CFG_FLASH_WRITE_TOUT 1 /* Timeout for Flash Write (in ms) */#define CFG_ENV_IS_IN_FLASH 1#ifdef CFG_ENV_IN_OWN_SECT# define CFG_ENV_ADDR (CFG_MONITOR_BASE + (256 * 1024))# define CFG_ENV_SECT_SIZE (256 * 1024)#else# define CFG_ENV_SIZE (16 * 1024)/* Size of Environment Sector */# define CFG_ENV_ADD ((CFG_MONITOR_BASE + CFG_MONITOR_LEN) - CFG_ENV_SIZE)# define CFG_ENV_SECT_SIZE (256 * 1024)/* see README - env sect real size */#endif /* CFG_ENV_IN_OWN_SECT *//*----------------------------------------------------------------------- * Cache Configuration */#define CFG_CACHELINE_SIZE 32 /* For MPC8260 CPU */#if (CONFIG_COMMANDS & CFG_CMD_KGDB)# define CFG_CACHELINE_SHIFT 5 /* log base 2 of the above value */#endif/*----------------------------------------------------------------------- * HIDx - Hardware Implementation-dependent Registers 2-11 *----------------------------------------------------------------------- * HID0 also contains cache control - initially enable both caches and * invalidate contents, then the final state leaves only the instruction * cache enabled. Note that Power-On and Hard reset invalidate the caches, * but Soft reset does not. * * HID1 has only read-only information - nothing to set. */#define CFG_HID0_INIT (HID0_ICE |\ HID0_DCE |\ HID0_ICFI |\ HID0_DCI |\ HID0_IFEM |\ HID0_ABE)#define CFG_HID0_FINAL (HID0_ICE |\ HID0_IFEM |\ HID0_ABE |\ HID0_EMCP)#define CFG_HID2 0/*----------------------------------------------------------------------- * RMR - Reset Mode Register *----------------------------------------------------------------------- */#define CFG_RMR 0/*----------------------------------------------------------------------- * BCR - Bus Configuration 4-25 *----------------------------------------------------------------------- */#define CFG_BCR (BCR_ETM)/*----------------------------------------------------------------------- * SIUMCR - SIU Module Configuration 4-31 *----------------------------------------------------------------------- */#define CFG_SIUMCR (SIUMCR_DPPC11 |\ SIUMCR_L2CPC00 |\ SIUMCR_APPC10 |\ SIUMCR_MMR00)/*----------------------------------------------------------------------- * SYPCR - System Protection Control 11-9 * SYPCR can only be written once after reset! *----------------------------------------------------------------------- * Watchdog & Bus Monitor Timer max, 60x Bus Monitor enable */#define CFG_SYPCR (SYPCR_SWTC |\ SYPCR_BMT |\ SYPCR_PBME |\ SYPCR_LBME |\ SYPCR_SWRI |\ SYPCR_SWP)/*----------------------------------------------------------------------- * TMCNTSC - Time Counter Status and Control 4-40 *----------------------------------------------------------------------- * Clear once per Second and Alarm Interrupt Status, Set 32KHz timersclk, * and enable Time Counter */#define CFG_TMCNTSC (TMCNTSC_SEC |\ TMCNTSC_ALR |\ TMCNTSC_TCF |\ TMCNTSC_TCE)/*----------------------------------------------------------------------- * PISCR - Periodic Interrupt Status and Control 4-42 *----------------------------------------------------------------------- * Clear Periodic Interrupt Status, Set 32KHz timersclk, and enable * Periodic timer */#define CFG_PISCR (PISCR_PS |\ PISCR_PTF |\ PISCR_PTE)/*----------------------------------------------------------------------- * SCCR - System Clock Control 9-8 *----------------------------------------------------------------------- */#define CFG_SCCR 0/*----------------------------------------------------------------------- * RCCR - RISC Controller Configuration 13-7 *----------------------------------------------------------------------- */#define CFG_RCCR 0/* * Initialize Memory Controller: * * Bank Bus Machine PortSz Device * ---- --- ------- ------ ------ * 0 60x GPCM 32 bit FLASH (SIMM - 4MB) * 1 60x GPCM 32 bit unused * 2 60x SDRAM 64 bit SDRAM (DIMM - 16MB or 64MB) * 3 60x SDRAM 64 bit unused * 4 Local GPCM 8 bit IO (on board - 64k) * 5 60x GPCM 8 bit unused * 6 60x GPCM 8 bit unused * 7 60x GPCM 8 bit unused * *//*----------------------------------------------------------------------- * BR0 - Base Register * Ref: Section 10.3.1 on page 10-14 * OR0 - Option Register * Ref: Section 10.3.2 on page 10-18 *----------------------------------------------------------------------- *//* Bank 0,1 - FLASH SIMM * * This expects the FLASH SIMM to be connected to *CS0 * It consists of 4 AM29F016D parts. * * Note: For the 8 MB SIMM, *CS1 is unused. *//* BR0 is configured as follows: * * - Base address of 0x40000000 * - 32 bit port size * - Data errors checking is disabled * - Read and write access * - GPCM 60x bus * - Access are handled by the memory controller according to MSEL * - Not used for atomic operations * - No data pipelining is done * - Valid */#define CFG_BR0_PRELIM ((CFG_FLASH0_BASE & BRx_BA_MSK) |\ BRx_PS_32 |\ BRx_MS_GPCM_P |\ BRx_V)/* OR0 is configured as follows: * * - 8 MB * - *BCTL0 is asserted upon access to the current memory bank * - *CW / *WE are negated a quarter of a clock earlier * - *CS is output at the same time as the address lines * - Uses a clock cycle length of 5 * - *PSDVAL is generated internally by the memory controller * unless *GTA is asserted earlier externally. * - Relaxed timing is generated by the GPCM for accesses * initiated to this memory region. * - One idle clock is inserted between a read access from the * current bank and the next access. */#define CFG_OR0_PRELIM (MEG_TO_AM(CFG_FLASH0_SIZE) |\ ORxG_CSNT |\ ORxG_ACS_DIV1 |\ ORxG_SCY_5_CLK |\ ORxG_TRLX |\ ORxG_EHTR)/*----------------------------------------------------------------------- * BR2 - Base Register * Ref: Section 10.3.1 on page 10-14 * OR2 - Option Register * Ref: Section 10.3.2 on page 10-16 *----------------------------------------------------------------------- *//* Bank 2 - SDRAM DIMM * * 16MB DIMM: P/N * 64MB DIMM: P/N 1W-8864X8-4-P1-EST or * MT4LSDT864AG-10EB1 (Micron) * * Note: *CS3 is unused for this DIMM *//* With a 16 MB or 64 MB DIMM, the BR2 is configured as follows: * * - Base address of 0x00000000 * - 64 bit port size (60x bus only) * - Data errors checking is disabled * - Read and write access * - SDRAM 60x bus * - Access are handled by the memory controller according to MSEL * - Not used for atomic operations * - No data pipelining is done * - Valid */#define CFG_BR2_PRELIM ((CFG_SDRAM0_BASE & BRx_BA_MSK) |\ BRx_PS_64 |\ BRx_MS_SDRAM_P |\ BRx_V)/* With a 16 MB DIMM, the OR2 is configured as follows: * * - 16 MB * - 2 internal banks per device * - Row start address bit is A9 with PSDMR[PBI] = 0 * - 11 row address lines * - Back-to-back page mode * - Internal bank interleaving within save device enabled */#if (CFG_SDRAM0_SIZE == 16)#define CFG_OR2_PRELIM (MEG_TO_AM(CFG_SDRAM0_SIZE) |\ ORxS_BPD_2 |\ ORxS_ROWST_PBI0_A9 |\ ORxS_NUMR_11)/* With a 16 MB DIMM, the PSDMR is configured as follows: * * - Page Based Interleaving, * - Refresh Enable, * - Address Multiplexing where A5 is output on A14 pin * (A6 on A15, and so on), * - use address pins A16-A18 as bank select, * - A9 is output on SDA10 during an ACTIVATE command, * - earliest timing for ACTIVATE command after REFRESH command is 7 clocks, * - earliest timing for ACTIVATE or REFRESH command after PRECHARGE command * is 3 clocks, * - earliest timing for READ/WRITE command after ACTIVATE command is * 2 clocks, * - earliest timing for PRECHARGE after last data was read is 1 clock, * - earliest timing for PRECHARGE after last data was written is 1 clock, * - CAS Latency is 2. *//*----------------------------------------------------------------------- * PSDMR - 60x Bus SDRAM Mode Register * Ref: Section 10.3.3 on page 10-21 *----------------------------------------------------------------------- */#define CFG_PSDMR (PSDMR_RFEN |\ PSDMR_SDAM_A14_IS_A5 |\ PSDMR_BSMA_A16_A18 |\ PSDMR_SDA10_PBI0_A9 |\ PSDMR_RFRC_7_CLK |\ PSDMR_PRETOACT_3W |\ PSDMR_ACTTORW_2W |\ PSDMR_LDOTOPRE_1C |\ PSDMR_WRC_1C |\ PSDMR_CL_2)#endif /* (CFG_SDRAM0_SIZE == 16) *//* With a 64 MB DIMM, the OR2 is configured as follows: * * - 64 MB * - 4 internal banks per device * - Row start address bit is A8 with PSDMR[PBI] = 0 * - 12 row address lines * - Back-to-back page mode * - Internal bank interleaving within save device enabled */#if (CFG_SDRAM0_SIZE == 64)#define CFG_OR2_PRELIM (MEG_TO_AM(CFG_SDRAM0_SIZE) |\ ORxS_BPD_4 |\ ORxS_ROWST_PBI0_A8 |\ ORxS_NUMR_12)/* With a 64 MB DIMM, the PSDMR is configured as follows: * * - Page Based Interleaving, * - Refresh Enable, * - Address Multiplexing where A5 is output on A14 pin * (A6 on A15, and so on), * - use address pins A14-A16 as bank select, * - A9 is output on SDA10 during an ACTIVATE command, * - earliest timing for ACTIVATE command after REFRESH command is 7 clocks, * - earliest timing for ACTIVATE or REFRESH command after PRECHARGE command * is 3 clocks, * - earliest timing for READ/WRITE command after ACTIVATE command is * 2 clocks, * - earliest timing for PRECHARGE after last data was read is 1 clock, * - earliest timing for PRECHARGE after last data was written is 1 clock, * - CAS Latency is 2. *//*----------------------------------------------------------------------- * PSDMR - 60x Bus SDRAM Mode Register * Ref: Section 10.3.3 on page 10-21 *----------------------------------------------------------------------- */#define CFG_PSDMR (PSDMR_RFEN |\ PSDMR_SDAM_A14_IS_A5 |\ PSDMR_BSMA_A14_A16 |\ PSDMR_SDA10_PBI0_A9 |\ PSDMR_RFRC_7_CLK |\ PSDMR_PRETOACT_3W |\ PSDMR_ACTTORW_2W |\ PSDMR_LDOTOPRE_1C |\ PSDMR_WRC_1C |\ PSDMR_CL_2)#endif /* (CFG_SDRAM0_SIZE == 64) */#define CFG_PSRT 0x0e#define CFG_MPTPR MPTPR_PTP_DIV32/*----------------------------------------------------------------------- * BR4 - Base Register * Ref: Section 10.3.1 on page 10-14 * OR4 - Option Register * Ref: Section 10.3.2 on page 10-18 *----------------------------------------------------------------------- *//* Bank 4 - Onboard Memory Mapped IO controller * * This expects the onboard IO controller to connected to *CS4 and * the local bus. * - Base address of 0xe0000000 * - 8 bit port size (local bus only) * - Read and write access * - GPCM local bus * - Not used for atomic operations * - No data pipelining is done * - Valid * - extended hold time * - 11 wait states */#ifdef CFG_IO_BASE# define CFG_BR4_PRELIM ((CFG_IO_BASE & BRx_BA_MSK) |\ BRx_PS_8 |\ BRx_MS_GPCM_L |\ BRx_V)# define CFG_OR4_PRELIM (ORxG_AM_MSK |\ ORxG_SCY_11_CLK |\ ORxG_EHTR)#endif /* CFG_IO_BASE *//* * Internal Definitions * * Boot Flags */#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */#define BOOTFLAG_WARM 0x02 /* Software reboot */#endif /* __CONFIG_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -