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) 244e5ca3ebSwdenk 25f28e1bd9STsiChungLiew #undef CONFIG_WATCHDOG 26bf9e3b38Swdenk #define CONFIG_WATCHDOG_TIMEOUT 10000 /* timeout in milliseconds */ 27bf9e3b38Swdenk 28f28e1bd9STsiChungLiew #undef CONFIG_MONITOR_IS_IN_RAM /* define if monitor is started from a pre-loader */ 29bf9e3b38Swdenk 30bf9e3b38Swdenk /* Configuration for environment 31bf9e3b38Swdenk * Environment is embedded in u-boot in the second sector of the flash 32bf9e3b38Swdenk */ 33bf9e3b38Swdenk #ifndef CONFIG_MONITOR_IS_IN_RAM 340e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_OFFSET 0x4000 350e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x2000 36bf9e3b38Swdenk #else 370e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR 0xffe04000 380e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x2000 39bf9e3b38Swdenk #endif 40bf9e3b38Swdenk 415296cb1dSangelo@sysam.it #define LDS_BOARD_TEXT \ 425296cb1dSangelo@sysam.it . = DEFINED(env_offset) ? env_offset : .; \ 43*0649cd0dSSimon Glass env/embedded.o(.text); 445296cb1dSangelo@sysam.it 458353e139SJon Loeliger /* 46659e2f67SJon Loeliger * BOOTP options 47659e2f67SJon Loeliger */ 48659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTFILESIZE 49659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTPATH 50659e2f67SJon Loeliger #define CONFIG_BOOTP_GATEWAY 51659e2f67SJon Loeliger #define CONFIG_BOOTP_HOSTNAME 52659e2f67SJon Loeliger 53659e2f67SJon Loeliger /* 548353e139SJon Loeliger * Command line configuration. 558353e139SJon Loeliger */ 568353e139SJon Loeliger 57f28e1bd9STsiChungLiew #define CONFIG_MCFFEC 58f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC 59f28e1bd9STsiChungLiew # define CONFIG_MII 1 60d53cf6a9STsiChung Liew # define CONFIG_MII_INIT 1 616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_DISCOVER_PHY 626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_RX_ETH_BUFFER 8 636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 64f28e1bd9STsiChungLiew 656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FEC0_PINMUX 0 666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE 67f28e1bd9STsiChungLiew # define MCFFEC_TOUT_LOOP 50000 686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* If CONFIG_SYS_DISCOVER_PHY is not defined - hardcoded */ 696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # ifndef CONFIG_SYS_DISCOVER_PHY 70f28e1bd9STsiChungLiew # define FECDUPLEX FULL 71f28e1bd9STsiChungLiew # define FECSPEED _100BASET 72f28e1bd9STsiChungLiew # else 736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # ifndef CONFIG_SYS_FAULT_ECHO_LINK_DOWN 746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 75f28e1bd9STsiChungLiew # endif 766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # endif /* CONFIG_SYS_DISCOVER_PHY */ 77f28e1bd9STsiChungLiew #endif 78f28e1bd9STsiChungLiew 79f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC 80f28e1bd9STsiChungLiew # define CONFIG_IPADDR 192.162.1.2 81f28e1bd9STsiChungLiew # define CONFIG_NETMASK 255.255.255.0 82f28e1bd9STsiChungLiew # define CONFIG_SERVERIP 192.162.1.1 83f28e1bd9STsiChungLiew # define CONFIG_GATEWAYIP 192.162.1.1 84f28e1bd9STsiChungLiew #endif /* CONFIG_MCFFEC */ 85f28e1bd9STsiChungLiew 86f28e1bd9STsiChungLiew #define CONFIG_HOSTNAME M5272C3 87f28e1bd9STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS \ 88f28e1bd9STsiChungLiew "netdev=eth0\0" \ 89f28e1bd9STsiChungLiew "loadaddr=10000\0" \ 90f28e1bd9STsiChungLiew "u-boot=u-boot.bin\0" \ 91f28e1bd9STsiChungLiew "load=tftp ${loadaddr) ${u-boot}\0" \ 92f28e1bd9STsiChungLiew "upd=run load; run prog\0" \ 93f28e1bd9STsiChungLiew "prog=prot off ffe00000 ffe3ffff;" \ 94f28e1bd9STsiChungLiew "era ffe00000 ffe3ffff;" \ 95f28e1bd9STsiChungLiew "cp.b ${loadaddr} ffe00000 ${filesize};"\ 96f28e1bd9STsiChungLiew "save\0" \ 97f28e1bd9STsiChungLiew "" 98bf9e3b38Swdenk 996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 100bf9e3b38Swdenk 1016d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x20000 1026d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x400 1036d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x380000 1046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CLK 66000000 105bf9e3b38Swdenk 106bf9e3b38Swdenk /* 107bf9e3b38Swdenk * Low Level Configuration Settings 108bf9e3b38Swdenk * (address mappings, register initial values, etc.) 109bf9e3b38Swdenk * You should know what you are doing if you make changes here. 110bf9e3b38Swdenk */ 1116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR 0x10000000 /* Register Base Addrs */ 1126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCR 0x0003 1136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SPR 0xffff 114bf9e3b38Swdenk 115bf9e3b38Swdenk /*----------------------------------------------------------------------- 116bf9e3b38Swdenk * Definitions for initial stack pointer and data area (in DPRAM) 117bf9e3b38Swdenk */ 1186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0x20000000 119553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in internal SRAM */ 12025ddd1fbSWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 122bf9e3b38Swdenk 123bf9e3b38Swdenk /*----------------------------------------------------------------------- 124bf9e3b38Swdenk * Start addresses for the final memory configuration 125bf9e3b38Swdenk * (Set up by the startup code) 1266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0 127bf9e3b38Swdenk */ 1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE 0x00000000 1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE 4 /* SDRAM size in MB */ 1306d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0xffe00000 131bf9e3b38Swdenk 132bf9e3b38Swdenk #ifdef CONFIG_MONITOR_IS_IN_RAM 1336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE 0x20000 134bf9e3b38Swdenk #else 1356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_FLASH_BASE + 0x400) 136bf9e3b38Swdenk #endif 137bf9e3b38Swdenk 1386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN 0x20000 1396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (256 << 10) 1406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 141bf9e3b38Swdenk 142bf9e3b38Swdenk /* 143bf9e3b38Swdenk * For booting Linux, the board info and command line data 144bf9e3b38Swdenk * have to be in the first 8 MB of memory, since this is 145bf9e3b38Swdenk * the maximum mapped by the Linux kernel during initialization ?? 146bf9e3b38Swdenk */ 1476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20)) 148bf9e3b38Swdenk 149b202816cSTsiChung Liew /* 150bf9e3b38Swdenk * FLASH organization 151bf9e3b38Swdenk */ 152b202816cSTsiChung Liew #define CONFIG_SYS_FLASH_CFI 153b202816cSTsiChung Liew #ifdef CONFIG_SYS_FLASH_CFI 154b202816cSTsiChung Liew # define CONFIG_FLASH_CFI_DRIVER 1 155b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_SIZE 0x800000 /* Max size that the board might have */ 156b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT 1576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */ 158b202816cSTsiChung Liew # define CONFIG_SYS_MAX_FLASH_SECT 137 /* max number of sectors on one chip */ 159b202816cSTsiChung Liew # define CONFIG_SYS_FLASH_PROTECTION /* "Real" (hardware) sectors protection */ 160b202816cSTsiChung Liew #endif 161bf9e3b38Swdenk 162bf9e3b38Swdenk /*----------------------------------------------------------------------- 163bf9e3b38Swdenk * Cache Configuration 164bf9e3b38Swdenk */ 1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CACHELINE_SIZE 16 166bf9e3b38Swdenk 167dd9f054eSTsiChung Liew #define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 168553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 8) 169dd9f054eSTsiChung Liew #define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 170553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 4) 171dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV | CF_CACR_INVI) 172dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \ 173dd9f054eSTsiChung Liew CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \ 174dd9f054eSTsiChung Liew CF_ACR_EN | CF_ACR_SM_ALL) 175dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_CINV | \ 176dd9f054eSTsiChung Liew CF_CACR_DISD | CF_CACR_INVI | \ 177dd9f054eSTsiChung Liew CF_CACR_CEIB | CF_CACR_DCM | \ 178dd9f054eSTsiChung Liew CF_CACR_EUSP) 179dd9f054eSTsiChung Liew 180bf9e3b38Swdenk /*----------------------------------------------------------------------- 181bf9e3b38Swdenk * Memory bank definitions 182bf9e3b38Swdenk */ 1836d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR0_PRELIM 0xFFE00201 1846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR0_PRELIM 0xFFE00014 1856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR1_PRELIM 0 1866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR1_PRELIM 0 1876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0x30000001 1886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0xFFF80000 1896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR3_PRELIM 0 1906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR3_PRELIM 0 1916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR4_PRELIM 0 1926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR4_PRELIM 0 1936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR5_PRELIM 0 1946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR5_PRELIM 0 1956d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR6_PRELIM 0 1966d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR6_PRELIM 0 1976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR7_PRELIM 0x00000701 1986d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR7_PRELIM 0xFFC0007C 199bf9e3b38Swdenk 200bf9e3b38Swdenk /*----------------------------------------------------------------------- 201bf9e3b38Swdenk * Port configuration 202bf9e3b38Swdenk */ 2036d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PACNT 0x00000000 2046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PADDR 0x0000 2056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PADAT 0x0000 2066d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBCNT 0x55554155 /* Ethernet/UART configuration */ 2076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBDDR 0x0000 2086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBDAT 0x0000 2096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PDCNT 0x00000000 210bf9e3b38Swdenk #endif /* _M5272C3_H */ 211