; bdiGDB configuration for H2 ... hacked from omap1610.cfg ; --------------------------------------------------------- ; Because the RESET signal is not routed to the Multi-ICE ; connector, it is not possible for the BDI to force a reset. ; Also it is not possible to stop the target immediatelly at ; the reset vector. To get control of the board, power-cycle it ; or press the reset button on the Processor Module and then ; enter reset at the BDI2000 Telnet interface. ; [INIT] ; WREG CPSR 0x000000d3 ;set superviser mode WGPR 15 0x00000000 ;set PC = 0 WCP15 0x0001 0x00050078 ;CP15 Control : disable caches ; WM16 0xfffecf00 0x0010 ;PLL lock WM16 0xfffece08 0x4 ;Enable ARM peripheral clock WM16 0xfffece14 0x1 ;Release OMAP CLKM reset ; WM16 0xFFFEC808 0x00F5 ;Disable ARM9 Watchdog Timer WM16 0xFFFEC808 0x00A0 ; ; ; Configure Memory Interface EMIFS for default processor pll freq @12MHz WM32 0xfffecc10 0x002130b0 ;EMIFS CS0 configuration WM32 0xfffecc14 0x00003339 ;EMIFS CS1 configuration WM32 0xfffecc18 0x00003339 ;EMIFS CS2 configuration WM32 0xfffecc1c 0x88011131 ;EMIFS CS3 configuration WM32 0xfffecc80 0x00000007 ;Set operations register WM32 0xfffecc20 0x0000bbf4 ;EMIFF CS4 configuration - DDR ; ; Initialize Mobile DDR SDRAM WM32 0xfffecc84 0x00000007 ;Set CKE high via manual command register DELAY 10 ;Delay for min. 200 us WM32 0xfffecc84 0x00000001 ;Precharge all banks via manual command register WM32 0xfffecc84 0x00000002 ;Issue 2+ AUTOREFRESH commands WM32 0xfffecc84 0x00000002 WM32 0xfffecc70 0x00000033 ;MRS initialization - DDR ; WBST (9): write burst - must be 0 ; CASL (6:4): CAS Latency - must be 2 ; S/I (3): Serial - must be 0 ; PGBL (2:0): Burst length - set to burst of 8 WM32 0xfffecc78 0x00000000 ;EMRS1 refresh all banks WM32 0xfffeccc0 0x00800002 ;DDR DDL registers URD WM32 0xfffecccc 0x00800002 ;DDR DDL registers LRD WM32 0xfffecc64 0x03F00002 ;DDR DDL registers WRD; ; WM16 0xfffece10 0x0002 ;Release the DSP from reset WM32 0xfffecc0c 0x00000001 ;Disable flash WP ; ; MMAP 0x00000000 0x01FFFFFF ;enable access to CS0 MMAP 0x04000000 0x05FFFFFF ;enable access to CS1 MMAP 0x08000000 0x09FFFFFF ;enable access to CS2 MMAP 0x0C000000 0x0DFFFFFF ;enable access to CS3 MMAP 0x10000000 0x1FFFFFFF ;enable access to SDRAM MMAP 0xFFFB0000 0xFFFEFFFF ;enable access to peripheral ; [TARGET] CPUTYPE ARM926E ;CLOCK 0 7 ;JTAG clock : start with 1 MHz then use adaptive ; to use adaptive clocking you need the correct ; target cable and you have to use the JTAG adapter ; board on the Innovator Break-out-board. CLOCK 7 ;JTAG clock : without adaptive clocking cable SCANPRED 1 8 ;JTAG devices connected before this core SCANSUCC 1 38 ;JTAG devices connected after this core TRST PUSHPULL ;TRST driver type (OPENDRAIN* | PUSHPULL) RESET NONE ;NONE | HARD (ms) ENDIAN LITTLE ;memory model (LITTLE | BIG) VECTOR CATCH 0x1f ;catch D_Abort, P_Abort, SWI, Undef and Reset BREAKMODE HARD ;SOFT or HARD, ARM / Thumb break code ;BREAKMODE SOFT 0xDFFFDFFF ;SOFT or HARD, ARM / Thumb break code ;DCC 5001 ; DCC I/O via TCP port ;SIO 5000 115200 STARTUP RESET ; don't let cpu do anything BDIMODE AGENT [HOST] FORMAT BIN 0x10080000 LOAD MANUAL ;load code MANUAL or AUTO after reset [FLASH] ; The flash used is an Intel 28F256L18T, 16Mx16 Strata flash. ; This flash power-up with all sectors (blocks) locked. ; Use the Telnet unlock command or add some init list entries to ; unlock the blocks you plan to erase/program. ; Core#0> unlock 0x0c000000 0x20000 256 ; Core#0> unlock 0x0dfe0000 0x08000 4 ; If the flash CS3 is mapped to 0x00000000 change the addresses ; ;WORKSPACE 0x20000000 ; Use OMAP Internal SRAM as workspace for ; fast programming algorithm CHIPTYPE STRATAX16 CHIPSIZE 0x02000000 BUSWIDTH 16 FILE u-boot.bin FORMAT BIN 0x0c000000 ERASE 0x0c000000 ;erase block 0 ERASE 0x0c020000 ;erase block 1 ERASE 0x0c040000 ;erase block 2 ERASE 0x0c060000 ;erase block 3 ERASE 0x0c080000 ;erase block 4 ERASE 0x0c0a0000 ;erase block 5 ERASE 0x0c0c0000 ;erase block 6 ERASE 0x0c0e0000 ;erase block 7 [REGS] FILE $reg926e.def