1bf9e3b38Swdenk /* 2bf9e3b38Swdenk * Configuation settings for the Motorola MC5272C3 board. 3bf9e3b38Swdenk * 4bf9e3b38Swdenk * (C) Copyright 2003 Josef Baumgartner <josef.baumgartner@telex.de> 5bf9e3b38Swdenk * 61a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 7bf9e3b38Swdenk */ 84e5ca3ebSwdenk 9bf9e3b38Swdenk /* 10bf9e3b38Swdenk * board/config.h - configuration options, board specific 11bf9e3b38Swdenk */ 124e5ca3ebSwdenk 13bf9e3b38Swdenk #ifndef _M5272C3_H 14bf9e3b38Swdenk #define _M5272C3_H 15bf9e3b38Swdenk 16bf9e3b38Swdenk /* 17bf9e3b38Swdenk * High Level Configuration Options 18bf9e3b38Swdenk * (easy to change) 19bf9e3b38Swdenk */ 20f28e1bd9STsiChungLiew #define CONFIG_MCFTMR 214e5ca3ebSwdenk 22f28e1bd9STsiChungLiew #define CONFIG_MCFUART 236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_UART_PORT (0) 2479e0799cSTsiChung Liew #define CONFIG_BAUDRATE 115200 254e5ca3ebSwdenk 26f28e1bd9STsiChungLiew #undef CONFIG_WATCHDOG 27bf9e3b38Swdenk #define CONFIG_WATCHDOG_TIMEOUT 10000 /* timeout in milliseconds */ 28bf9e3b38Swdenk 29f28e1bd9STsiChungLiew #undef CONFIG_MONITOR_IS_IN_RAM /* define if monitor is started from a pre-loader */ 30bf9e3b38Swdenk 31bf9e3b38Swdenk /* Configuration for environment 32bf9e3b38Swdenk * Environment is embedded in u-boot in the second sector of the flash 33bf9e3b38Swdenk */ 34bf9e3b38Swdenk #ifndef CONFIG_MONITOR_IS_IN_RAM 350e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_OFFSET 0x4000 360e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x2000 375a1aceb0SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_IN_FLASH 1 38bf9e3b38Swdenk #else 390e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR 0xffe04000 400e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x2000 415a1aceb0SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_IN_FLASH 1 42bf9e3b38Swdenk #endif 43bf9e3b38Swdenk 44*5296cb1dSangelo@sysam.it #define LDS_BOARD_TEXT \ 45*5296cb1dSangelo@sysam.it . = DEFINED(env_offset) ? env_offset : .; \ 46*5296cb1dSangelo@sysam.it common/env_embedded.o (.text); 47*5296cb1dSangelo@sysam.it 488353e139SJon Loeliger /* 49659e2f67SJon Loeliger * BOOTP options 50659e2f67SJon Loeliger */ 51659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTFILESIZE 52659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTPATH 53659e2f67SJon Loeliger #define CONFIG_BOOTP_GATEWAY 54659e2f67SJon Loeliger #define CONFIG_BOOTP_HOSTNAME 55659e2f67SJon Loeliger 56659e2f67SJon Loeliger /* 578353e139SJon Loeliger * Command line configuration. 588353e139SJon Loeliger */ 598353e139SJon Loeliger #include <config_cmd_default.h> 608353e139SJon Loeliger 61dd9f054eSTsiChung Liew #define CONFIG_CMD_CACHE 628353e139SJon Loeliger #define CONFIG_CMD_MII 63f28e1bd9STsiChungLiew #define CONFIG_CMD_NET 64f28e1bd9STsiChungLiew #define CONFIG_CMD_PING 65f28e1bd9STsiChungLiew #define CONFIG_CMD_MISC 66f28e1bd9STsiChungLiew #define CONFIG_CMD_ELF 67f28e1bd9STsiChungLiew #define CONFIG_CMD_FLASH 68f28e1bd9STsiChungLiew #define CONFIG_CMD_MEMORY 698353e139SJon Loeliger 708353e139SJon Loeliger #undef CONFIG_CMD_LOADS 718353e139SJon Loeliger #undef CONFIG_CMD_LOADB 728353e139SJon Loeliger 73bf9e3b38Swdenk #define CONFIG_BOOTDELAY 5 74f28e1bd9STsiChungLiew #define CONFIG_MCFFEC 75f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC 76f28e1bd9STsiChungLiew # define CONFIG_MII 1 77d53cf6a9STsiChung Liew # define CONFIG_MII_INIT 1 786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_DISCOVER_PHY 796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_RX_ETH_BUFFER 8 806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 81f28e1bd9STsiChungLiew 826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FEC0_PINMUX 0 836d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE 84f28e1bd9STsiChungLiew # define MCFFEC_TOUT_LOOP 50000 856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* If CONFIG_SYS_DISCOVER_PHY is not defined - hardcoded */ 866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # ifndef CONFIG_SYS_DISCOVER_PHY 87f28e1bd9STsiChungLiew # define FECDUPLEX FULL 88f28e1bd9STsiChungLiew # define FECSPEED _100BASET 89f28e1bd9STsiChungLiew # else 906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # ifndef CONFIG_SYS_FAULT_ECHO_LINK_DOWN 916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 92f28e1bd9STsiChungLiew # endif 936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # endif /* CONFIG_SYS_DISCOVER_PHY */ 94f28e1bd9STsiChungLiew #endif 95f28e1bd9STsiChungLiew 96f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC 97f28e1bd9STsiChungLiew # define CONFIG_ETHADDR 00:e0:0c:bc:e5:60 98f28e1bd9STsiChungLiew # define CONFIG_IPADDR 192.162.1.2 99f28e1bd9STsiChungLiew # define CONFIG_NETMASK 255.255.255.0 100f28e1bd9STsiChungLiew # define CONFIG_SERVERIP 192.162.1.1 101f28e1bd9STsiChungLiew # define CONFIG_GATEWAYIP 192.162.1.1 102f28e1bd9STsiChungLiew # define CONFIG_OVERWRITE_ETHADDR_ONCE 103f28e1bd9STsiChungLiew #endif /* CONFIG_MCFFEC */ 104f28e1bd9STsiChungLiew 105f28e1bd9STsiChungLiew #define CONFIG_HOSTNAME M5272C3 106f28e1bd9STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS \ 107f28e1bd9STsiChungLiew "netdev=eth0\0" \ 108f28e1bd9STsiChungLiew "loadaddr=10000\0" \ 109f28e1bd9STsiChungLiew "u-boot=u-boot.bin\0" \ 110f28e1bd9STsiChungLiew "load=tftp ${loadaddr) ${u-boot}\0" \ 111f28e1bd9STsiChungLiew "upd=run load; run prog\0" \ 112f28e1bd9STsiChungLiew "prog=prot off ffe00000 ffe3ffff;" \ 113f28e1bd9STsiChungLiew "era ffe00000 ffe3ffff;" \ 114f28e1bd9STsiChungLiew "cp.b ${loadaddr} ffe00000 ${filesize};"\ 115f28e1bd9STsiChungLiew "save\0" \ 116f28e1bd9STsiChungLiew "" 117bf9e3b38Swdenk 1186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT "-> " 1196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 120bf9e3b38Swdenk 1218353e139SJon Loeliger #if defined(CONFIG_CMD_KGDB) 1226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 123bf9e3b38Swdenk #else 1246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 125bf9e3b38Swdenk #endif 126f28e1bd9STsiChungLiew 1276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */ 1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */ 1306d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x20000 1316d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x400 1326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x380000 1336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CLK 66000000 134bf9e3b38Swdenk 135bf9e3b38Swdenk /* 136bf9e3b38Swdenk * Low Level Configuration Settings 137bf9e3b38Swdenk * (address mappings, register initial values, etc.) 138bf9e3b38Swdenk * You should know what you are doing if you make changes here. 139bf9e3b38Swdenk */ 1406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR 0x10000000 /* Register Base Addrs */ 1416d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCR 0x0003 1426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SPR 0xffff 143bf9e3b38Swdenk 144bf9e3b38Swdenk /*----------------------------------------------------------------------- 145bf9e3b38Swdenk * Definitions for initial stack pointer and data area (in DPRAM) 146bf9e3b38Swdenk */ 1476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0x20000000 148553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in internal SRAM */ 14925ddd1fbSWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 151bf9e3b38Swdenk 152bf9e3b38Swdenk /*----------------------------------------------------------------------- 153bf9e3b38Swdenk * Start addresses for the final memory configuration 154bf9e3b38Swdenk * (Set up by the startup code) 1556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0 156bf9e3b38Swdenk */ 1576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE 0x00000000 1586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE 4 /* SDRAM size in MB */ 1596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0xffe00000 160bf9e3b38Swdenk 161bf9e3b38Swdenk #ifdef CONFIG_MONITOR_IS_IN_RAM 1626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE 0x20000 163bf9e3b38Swdenk #else 1646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_FLASH_BASE + 0x400) 165bf9e3b38Swdenk #endif 166bf9e3b38Swdenk 1676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN 0x20000 1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (256 << 10) 1696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 170bf9e3b38Swdenk 171bf9e3b38Swdenk /* 172bf9e3b38Swdenk * For booting Linux, the board info and command line data 173bf9e3b38Swdenk * have to be in the first 8 MB of memory, since this is 174bf9e3b38Swdenk * the maximum mapped by the Linux kernel during initialization ?? 175bf9e3b38Swdenk */ 1766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20)) 177bf9e3b38Swdenk 178b202816cSTsiChung Liew /* 179bf9e3b38Swdenk * FLASH organization 180bf9e3b38Swdenk */ 181b202816cSTsiChung Liew #define CONFIG_SYS_FLASH_CFI 182b202816cSTsiChung Liew #ifdef CONFIG_SYS_FLASH_CFI 183b202816cSTsiChung Liew # define CONFIG_FLASH_CFI_DRIVER 1 184b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_SIZE 0x800000 /* Max size that the board might have */ 185b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT 1866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */ 187b202816cSTsiChung Liew # define CONFIG_SYS_MAX_FLASH_SECT 137 /* max number of sectors on one chip */ 188b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_PROTECTION /* "Real" (hardware) sectors protection */ 189b202816cSTsiChung Liew #endif 190bf9e3b38Swdenk 191bf9e3b38Swdenk /*----------------------------------------------------------------------- 192bf9e3b38Swdenk * Cache Configuration 193bf9e3b38Swdenk */ 1946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CACHELINE_SIZE 16 195bf9e3b38Swdenk 196dd9f054eSTsiChung Liew #define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 197553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 8) 198dd9f054eSTsiChung Liew #define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 199553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 4) 200dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV | CF_CACR_INVI) 201dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \ 202dd9f054eSTsiChung Liew CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \ 203dd9f054eSTsiChung Liew CF_ACR_EN | CF_ACR_SM_ALL) 204dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_CINV | \ 205dd9f054eSTsiChung Liew CF_CACR_DISD | CF_CACR_INVI | \ 206dd9f054eSTsiChung Liew CF_CACR_CEIB | CF_CACR_DCM | \ 207dd9f054eSTsiChung Liew CF_CACR_EUSP) 208dd9f054eSTsiChung Liew 209bf9e3b38Swdenk /*----------------------------------------------------------------------- 210bf9e3b38Swdenk * Memory bank definitions 211bf9e3b38Swdenk */ 2126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR0_PRELIM 0xFFE00201 2136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR0_PRELIM 0xFFE00014 2146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR1_PRELIM 0 2156d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR1_PRELIM 0 2166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0x30000001 2176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0xFFF80000 2186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR3_PRELIM 0 2196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR3_PRELIM 0 2206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR4_PRELIM 0 2216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR4_PRELIM 0 2226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR5_PRELIM 0 2236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR5_PRELIM 0 2246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR6_PRELIM 0 2256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR6_PRELIM 0 2266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR7_PRELIM 0x00000701 2276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR7_PRELIM 0xFFC0007C 228bf9e3b38Swdenk 229bf9e3b38Swdenk /*----------------------------------------------------------------------- 230bf9e3b38Swdenk * Port configuration 231bf9e3b38Swdenk */ 2326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PACNT 0x00000000 2336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PADDR 0x0000 2346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PADAT 0x0000 2356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBCNT 0x55554155 /* Ethernet/UART configuration */ 2366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBDDR 0x0000 2376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBDAT 0x0000 2386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PDCNT 0x00000000 239bf9e3b38Swdenk #endif /* _M5272C3_H */ 240