;-------------------------------------------------------------------------- ; ; ; PEEDI target configuration file for PowerPC MPC8572 processor ; ; Ronetix GmbH ; ; Supported devices : MPC8572 ; ; Board : Cobra8572 ; ; Revision : 1.1 ; ; Date : June 30, 2010 ; ; The file is delivered "AS IS" without warranty or condition of any ; kind, either express, implied or statutory. This includes without ; limitation any warranty or condition with respect to merchantability or ; fitness for any particular purpose, or against the infringements of ; intellectual property rights of others. ; ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; The following section contains licenses that are required for PEEDI to ; operate. These licenses must be filled before using this file. ; The [LICENSE] section may contain license keys for one or more PEEDIs. ; ; Example: ; [LICENSE] ; KEY = UPDATE_24MAY2010, 1111-1111-1111-1 ; KEY = XXXXX, 2222-2222-2222-2 ; ; The [LICENSE] section may point to an external file which contains ; license keys for one or more PEEDIs. The external file must include ; the text [LICENSE] followed by all keys. ; ; Example: ; [LICENSE] ; FILE = tftp://192.168.3.1/license.txt ; or ; FILE=eep:license.txt ; or ; FILE = ftp://user:password@192.168.3.1/license.txt ; ; ; PEEDI is shipped with license keys stored in "eep:license.txt" and ; printed on a label on the bottom side of PEEDI. ; [LICENSE] FILE=eep:license.txt ;-------------------------------------------------------------------------- [DEBUGGER] PROTOCOL = gdb_remote REMOTE_PORT = 2000 ; TCP/IP port [TARGET] PLATFORM = MPC8500 ; platform is Freescale MPC8500 [PLATFORM_MPC8500] JTAG_CHAIN = 8 ; list of IR lenght of all TAP controller in JTAG chain JTAG_CLOCK = 20000 ; JTAG Clock in [kHz] - 20MHz jtag clock for init and normal work DBGREQ_OUTPUT = HIGH TRST_TYPE = PUSHPULL ; type of TRST output: OPENDRAIN or PUSHPULL RESET_TIME = 20 ; lenght of RESET pulse in ms; 0 means no RESET TIME_AFTER_RESET = 1000 CORE0 = MPC8572A, 0 ; TAP is PowerPC CPU CORE0_INIT = INIT_BOARD ; to program the board ;CORE0_INIT = INIT_BOOT ; to debug the board CORE0_STARTUP_MODE = reset CORE0_BREAKMODE = soft ; breakpoint mode: CORE0_ENDIAN = big ; core is little endian CORE0_FLASH0 = FLASH_NOR CORE0_FLASH1 = FLASH_NAND_BBT CORE0_FLASH2 = FLASH_NAND CORE0_WORKSPACE = 0xF0002000, 0xE000 ; workspace for flash programmer CORE0_FILE = "myfile.bin", BIN, 0x2000000 ; default file CORE0_PATH = "tftp://192.168.3.1/" ; default path ;CORE0_MMU_TRANS = 0xC0000000 ;CORE0_MMU_PTBASE = 0xF0 ; if you want to use the second core too, ; you will need a MPC8500_MULTICORE license ;========================================== ;CORE1 = MPC8572B, 0 ; TAP is PowerPC CPU ;;CORE1_INIT = INIT_BOOT ; to debug the board ;CORE1_STARTUP_MODE = reset ;CORE1_BREAKMODE = soft ; breakpoint mode: ;CORE1_ENDIAN = big ; core is little endian ;CORE1_FILE = "myfile.bin", BIN, 0x2000000 ; default file ;CORE1_PATH = "tftp://192.168.0.1/" ; default path ;CORE1_WORKSPACE = 0xF0000000, 0x10600 ; workspace for flash programmer ;;CORE1_MMU_TRANS = 0xC0000000 ;;CORE1_MMU_PTBASE = 0xF0 [INIT_BOOT] ;================= setup TLB entries ========================= ; Move the L2SRAM to the initial MMU page mem wr 0xFF720E44 0x0000001C ;L2ERRDIS: disable parity error mem wr 0xFF720000 0x70010000 ;L2CTL mem wr 0xFF720100 0xFFF00000 ;L2SRBAR0: map to 0x0_FFF00000 mem wr 0xFF720104 0x00000000 ;L2SRBAREA0 mem wr 0xFF720000 0xB0010000 ;L2CTL: Entire array is a single SRAM ; load and execute some boot code (necessary for STARTUP HALT) mem wr 0xfffffffc 0x48000000 ;loop go 0xfffffffc halt ; Remove the L2SRAM from the initial MMU page mem wr 0xFF720000 0x30010000 ;L2CTL mem wr 0xFF720000 0x30000000 ;L2CTL set IVPR 0xF0000000 ;IVPR to workspace set IVOR15 0x0001500 ;IVOR15 : Debug exception [INIT_BOARD] ;================= setup TLB entries ========================= ; Move the L2SRAM to the initial MMU page mem wr 0xFF720E44 0x0000001C ;L2ERRDIS: disable parity error mem wr 0xFF720000 0x70010000 ;L2CTL mem wr 0xFF720100 0xFFF00000 ;L2SRBAR0: map to 0x0_FFF00000 mem wr 0xFF720104 0x00000000 ;L2SRBAREA0 mem wr 0xFF720000 0xB0010000 ;L2CTL: Entire array is a single SRAM ; load TLB entries, helper code @ 0xfffff000 mem wr 0xfffffff4 0x7c0007a4 ;tlbwe mem wr 0xfffffff8 0x7c0004ac ;msync mem wr 0xfffffffc 0x48000000 ;loop set MAS4 0x00000000 set MAS6 0x00000000 go 0xfffffffc halt ; 256 MB TLB1 ;0 0xf0000000 - 0xffffffff set MAS0 0x10000000 set MAS1 0x80000900 set MAS2 0xf0000008 set MAS3 0xf000003F go 0xfffffff4 halt ; 64 MB TLB1 ;1 0xe0000000 - 0xe3ffffff set MAS0 0x10010000 set MAS1 0x80000800 set MAS2 0xe0000008 set MAS3 0xe000003F go 0xfffffff4 halt ; Remove the L2SRAM from the initial MMU page mem wr 0xFF720000 0x30010000 ;L2CTL mem wr 0xFF720000 0x30000000 ;L2CTL ;================= end setup TLB entries ===================== ;================= setup for flash programming =============== ; Move CCSRBAR to 0xe0000000 mem wr 0xff700000 0x000e0000 ;CCSRBAR to 0xe0000000 ; Initialize LAWBAR's mem wr 0xe0000C08 0x00000000 ;LAWBAR0 : @0x00000000 mem wr 0xe0000C10 0x80f0001c ;LAWAR0 : DDR/SDRAM 512MB mem wr 0xe0000C28 0x000c0000 ;LAWBAR1 : @0xc0000000 mem wr 0xe0000C30 0x8040001d ;LAWAR1 : Local Bus 1GB ; CS0 - NAND Flash mem write 0xe0005000 0xF1000C21 ; BR2 base address at 0xE8200000, port size 8 bit MSEL=FCM, ECC enabled mem write 0xe0005004 0xFFFF8476 ; OR2 256KB, large page mem write 0xe00050E0 0x100 ; ECC position ; CS4 - NOR Flash mem write 0xe0005020 0xF8001001 ; BR0 base address at 0xf8000000, port size 16 bit, GPCM mem write 0xe0005024 0xF8000FF7 ; OR0 128MB flash size ; Setup flash programming workspace in L2SRAM mem wr 0xe0020e44 0x0000001c ;L2ERRDIS: disable parity error mem wr 0xe0020000 0x70010000 ;L2CTL mem wr 0xe0020100 0xf0000000 ;L2SRBAR0: map to 0x0_F0000000 mem wr 0xe0020104 0x00000000 ;L2SRBAREA0 mem wr 0xe0020000 0xb0010000 ;L2CTL set IVPR 0xf0000000 ;IVPR to workspace set IVOR0 0x00000000 ;IVOR15 : Debug exception set IVOR1 0x00000100 ;IVOR15 : Debug exception set IVOR2 0x00000200 ;IVOR15 : Debug exception set IVOR3 0x00000300 ;IVOR15 : Debug exception set IVOR4 0x00000400 ;IVOR15 : Debug exception set IVOR5 0x00000500 ;IVOR15 : Debug exception set IVOR6 0x00000600 ;IVOR15 : Debug exception set IVOR8 0x00000800 ;IVOR15 : Debug exception set IVOR10 0x00000A00 ;IVOR15 : Debug exception set IVOR11 0x00000B00 ;IVOR15 : Debug exception set IVOR12 0x00000C00 ;IVOR15 : Debug exception set IVOR13 0x00000D00 ;IVOR15 : Debug exception set IVOR14 0x00000E00 ;IVOR15 : Debug exception set IVOR15 0x00001500 ;IVOR15 : Debug exception ; trap all exceptions mem wr 0xf0000000 0x7D821008 mem wr 0xf0000100 0x7D821008 mem wr 0xf0000200 0x7D821008 mem wr 0xf0000300 0x7D821008 mem wr 0xf0000400 0x7D821008 mem wr 0xf0000500 0x7D821008 mem wr 0xf0000600 0x7D821008 mem wr 0xf0000800 0x7D821008 mem wr 0xf0000A00 0x7D821008 mem wr 0xf0000B00 0x7D821008 mem wr 0xf0000C00 0x7D821008 mem wr 0xf0000D00 0x7D821008 mem wr 0xf0000E00 0x7D821008 mem wr 0xf0001500 0x48000000 ;write valid instruction ;================= end setup for flash programming =========== [FLASH_NOR] CHIP = S29GL01GP ; flash chip ACCESS_METHOD = AGENT ; program method auto CHECK_ID = YES ; check chip ID CHIP_WIDTH = 16 ; chip is in 16 bit configuration CHIP_COUNT = 1 ; one chip is used BASE_ADDR = 0xF8000000 ; chip is mapped at 0xF8000000 FILE = "mpc8572_boot.bin", BIN, 0xFFFE0000 ; file to program AUTO_ERASE = YES ; erase before program AUTO_LOCK = NO ; lock after program [FLASH_NAND_BBT] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF1000000 ; FCM address ADDR_BASE = 0 ; NAND chip select OOB_INFO = FF BAD_BLOCK_TABLE = YES FILE = "test.bin", 0x0 [FLASH_NAND] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF1000000 ; FCM address ADDR_BASE = 0 ; NAND chip select OOB_INFO = FF FILE = "test.bin", 0x0 [SERIAL] ; serial port configuration BAUD = 115200 STOP_BITS = 1 PARITY = NONE TCP_PORT = 0 [TELNET] PROMPT = "mpc8572> " ; telnet prompt ;BACKSPACE = 127 ; comment out for autodetect [DISPLAY] BRIGHTNESS = 20 ; LED indicator brightness VOLUME = 100 ; zummer volume [ACTIONS] ; user defined scripts ;AUTORUN = 1 1 = prog [prog] flash erase flash prog