; bdiGDB configuration file for IXDP465 board ; ------------------------------------------- ; ; The DDR setup was read back after RedBoot has setup the board. ; The used DDR parameters may not mach your configuration. ; Let RedBoot setup your board, for example with "reset run". ; Then read back the relevant SDRAM registers and update the ; init list entires. ; ; Hint: To read back the correct value for the refresh counter, ; set a data breakpoint on a write to RFR (bd w 0xCC00e548). ; Then let RedBoot running, lock at the registers after the ; second break. In my case the value for RFR was in R1. ; ; SDRAM is mapped to 0x00000000 ; Flash is mapped to 0x50000000 ; ; [INIT] WCP15 0x0001 0x000000f8 ;CTR: set big endian mode WCP15 0x2001 0x00000001 ;AUX: Disable Write Buffer Coalescing WCP15 0x010F 0x00000001 ;CPA: Enable CP0 access ; ; DDR SDRAM Config WM32 0xc4000000 0xbfff0242 ; EXP_CS0 32MB WM32 0xCC00e50c 0x00000000 ; SDBR WM32 0xCC00e510 0x80000002 ; SBR0 WM32 0xCC00e514 0x80000004 ; SBR1 WM32 0xCC00e504 0x52220106 ; SDCR0 WM32 0xCC00e508 0x2560f084 ; SDCR1 WM32 0xCC00e51c 0x0000000c ; ECCR WM32 0xCC00e53c 0x00000011 ; MPTCR WM32 0xCC00e548 0x00000000 ; Set RFR-Refresh Rate to zero WM32 0xCC00e500 0x00000003 ; Send NOP to Mem Controller WM32 0xCC00e500 0x00000002 ; Send Precharge-All Command to Mem Controller WM32 0xCC00e500 0x00000004 ; Send Extended Mode Reg Set (enable DLL) to Mem Controller WM32 0xCC00e500 0x00000001 ; Send Mode Reg Set (DLL reset) to Mem Controller WM32 0xCC00e500 0x00000002 ; Send Precharge-All Command to Mem Controller WM32 0xCC00e500 0x00000006 ; Send Auto-Refresh Command to Mem Controller WM32 0xCC00e500 0x00000006 ; Send Auto-Refresh Command to Mem Controller DELAY 10 ; Insert delay here WM32 0xCC00e500 0x00000000 ; Send Mode Reg Set (no DLL reset) to Mem Controller WM32 0xCC00e500 0x00000008 ; Send "Normal Operation" to Mem Controller WM32 0xCC00e548 0x00000082 ; RFR - Refresh Counter DELAY 100 ; ; Expansion BUS (Flash Memory) ; WM32 0xc4000000 0xbcd20242 ;CS0 : Write enabled @0x50000000 WM32 0xc4000004 0x00000000 ;CS1 : WM32 0xc4000008 0xbfff3c03 ;CS2 : WM32 0xc4000020 0x00ffff5e ;CFG0 : Map SDRAM to 0x00000000 ; ; Write to all of DDR RAM (128 MB) to ; initialize for ECC FILL 0x00000000 0x08000000 ; fill 128MB [TARGET] CPUTYPE IXP425 ;the target CPU type JTAGCLOCK 1 ;use 16 MHz JTAG clock DBGHANDLER 0xFFFF0800 ;debug handler base address ENDIAN BIG ;memory model (LITTLE | BIG) BREAKMODE SOFT ;SOFT or HARD ;VECTOR CATCH 0xDE ;trap all vectors VECTOR CATCH 0x1E ;trap Abort, SWI, Undef VTABLO 0xe59ff018 ;Use fixed vectors "ldr pc, [pc, #24]" VTABHI 0xffffffff ;Do not update relocated vector table [HOST] IP 151.120.25.119 FILE E:\cygwin\home\bdidemo\xscale\vxworks FORMAT BIN 0x00020000 LOAD MANUAL ;load code code MANUAL or AUTO after reset PROMPT IXP465> [FLASH] WORKSPACE 0x00001000 ;workspace in target RAM for fast programming algorithm CHIPTYPE STRATAX16 ;Flash type ;CHIPTYPE I28BX16 ;Flash type CHIPSIZE 0x02000000 ;The size of one flash chip in bytes BUSWIDTH 16 ;The width of the flash memory bus in bits (8 | 16 | 32) FILE E:\cygwin\home\bdidemo\xscale\ixdp465.cfg FORMAT BIN 0x51000000 ERASE 0x51000000 ERASE 0x51020000 ERASE 0x51040000 ERASE 0x51060000 ERASE 0x51080000 ERASE 0x510a0000 ERASE 0x510c0000 ERASE 0x510d0000 ;ERASE 0x50000000 ;erase sector 0 ;ERASE 0x50020000 ;erase sector 1 ;ERASE 0x50040000 ;erase sector 2 ;ERASE 0x50060000 ;erase sector 3 ;ERASE 0x50080000 ;erase sector 4 ;ERASE 0x500A0000 ;erase sector 5 ;ERASE 0x500C0000 ;erase sector 6 ;ERASE 0x500E0000 ;erase sector 7 [REGS] FILE $regIXP465.def