;-------------------------------------------------------------------------- ; ; ; PEEDI target configuration file for PowerPC MPC8572 processor ; ; Ronetix GmbH ; ; Supported devices : MPC8572 ; ; Board : Freescale MPC8572DS ; ; Revision : 1.3 ; ; Date : June 23, 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] - 4MHz jtag clock for init operations and 16MHz for 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 = 500 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_NAND1 CORE0_FLASH2 = FLASH_NAND2 CORE0_FLASH3 = FLASH_NAND3 CORE0_FLASH4 = FLASH_NAND4 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 0xFFFF0000 ;L2SRBAR0: map to 0x0_FFFF0000 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 0xFFFF0000 ;L2SRBAR0: map to 0x0_FFFF0000 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 ; Setup Flash chip select mem wr 0xe0005004 0xf8000ff7 ;OR0 : Flash (boot bank) mem wr 0xe0005000 0xf8001001 ;BR0 : 8MB at 0xf8000000 ; Setup NAND chip selects mem write 0xe0005010 0xF1000821 ; BR1 base address at 0xF1000000, port size 8 bit, FCM, valid mem write 0xe0005014 0xFFFF8476 ; OR1 32kB mem write 0xe0005020 0xF2000821 ; BR1 base address at 0xF2000000, port size 8 bit, FCM, valid mem write 0xe0005024 0xFFFF8476 ; OR1 32kB mem write 0xe0005028 0xF3000821 ; BR1 base address at 0xF3000000, port size 8 bit, FCM, valid mem write 0xe000502C 0xFFFF8476 ; OR1 32kB mem write 0xe0005030 0xF4000821 ; BR1 base address at 0xF4000000, port size 8 bit, FCM, valid mem write 0xe0005034 0xFFFF8476 ; OR1 32kB ; 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 mem wr 0xf0001500 0x48000000 ;write valid instruction 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 ;================= 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_NAND1] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF1000000 ; FCM address ADDR_BASE = 2 ; NAND chip select OOB_INFO = FF FILE = "test.bin", 0x0 [FLASH_NAND2] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF2000000 ; FCM address ADDR_BASE = 4 ; NAND chip select OOB_INFO = FF FILE = "test.bin", 0x0 [FLASH_NAND3] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF3000000 ; FCM address ADDR_BASE = 5 ; NAND chip select OOB_INFO = FF FILE = "test.bin", 0x0 [FLASH_NAND4] CHIP = NAND_FLASH CPU = MPC83XX CMD_BASE = 0xE0000000 ; IMMRBAR DATA_BASE = 0xF4000000 ; FCM address ADDR_BASE = 6 ; 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