1545c8e0aSMatthew Fettke /* 2545c8e0aSMatthew Fettke * Configuation settings for the Motorola MC5275EVB board. 3545c8e0aSMatthew Fettke * 4545c8e0aSMatthew Fettke * By Arthur Shipkowski <art@videon-central.com> 5545c8e0aSMatthew Fettke * Copyright (C) 2005 Videon Central, Inc. 6545c8e0aSMatthew Fettke * 7545c8e0aSMatthew Fettke * Based off of M5272C3 board code by Josef Baumgartner 8545c8e0aSMatthew Fettke * <josef.baumgartner@telex.de> 9545c8e0aSMatthew Fettke * 101a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 11545c8e0aSMatthew Fettke */ 12545c8e0aSMatthew Fettke 13545c8e0aSMatthew Fettke /* 14545c8e0aSMatthew Fettke * board/config.h - configuration options, board specific 15545c8e0aSMatthew Fettke */ 16545c8e0aSMatthew Fettke 17545c8e0aSMatthew Fettke #ifndef _M5275EVB_H 18545c8e0aSMatthew Fettke #define _M5275EVB_H 19545c8e0aSMatthew Fettke 20545c8e0aSMatthew Fettke /* 21545c8e0aSMatthew Fettke * High Level Configuration Options 22545c8e0aSMatthew Fettke * (easy to change) 23545c8e0aSMatthew Fettke */ 24545c8e0aSMatthew Fettke #define CONFIG_M5275EVB /* define board type */ 25545c8e0aSMatthew Fettke 26545c8e0aSMatthew Fettke #define CONFIG_MCFTMR 27545c8e0aSMatthew Fettke 28545c8e0aSMatthew Fettke #define CONFIG_MCFUART 296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_UART_PORT (0) 30545c8e0aSMatthew Fettke 31545c8e0aSMatthew Fettke /* Configuration for environment 32545c8e0aSMatthew Fettke * Environment is embedded in u-boot in the second sector of the flash 33545c8e0aSMatthew Fettke */ 34545c8e0aSMatthew Fettke #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 37545c8e0aSMatthew Fettke #else 380e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR 0xffe04000 390e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x2000 40545c8e0aSMatthew Fettke #endif 41545c8e0aSMatthew Fettke 425296cb1dSangelo@sysam.it #define LDS_BOARD_TEXT \ 435296cb1dSangelo@sysam.it . = DEFINED(env_offset) ? env_offset : .; \ 44*0649cd0dSSimon Glass env/embedded.o(.text); 455296cb1dSangelo@sysam.it 46545c8e0aSMatthew Fettke /* 47545c8e0aSMatthew Fettke * BOOTP options 48545c8e0aSMatthew Fettke */ 49545c8e0aSMatthew Fettke #define CONFIG_BOOTP_BOOTFILESIZE 50545c8e0aSMatthew Fettke #define CONFIG_BOOTP_BOOTPATH 51545c8e0aSMatthew Fettke #define CONFIG_BOOTP_GATEWAY 52545c8e0aSMatthew Fettke #define CONFIG_BOOTP_HOSTNAME 53545c8e0aSMatthew Fettke 54545c8e0aSMatthew Fettke /* Available command configuration */ 55545c8e0aSMatthew Fettke 56545c8e0aSMatthew Fettke #define CONFIG_MCFFEC 57545c8e0aSMatthew Fettke #ifdef CONFIG_MCFFEC 58545c8e0aSMatthew Fettke #define CONFIG_MII 1 590f3ba7e9STsiChung Liew #define CONFIG_MII_INIT 1 606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DISCOVER_PHY 616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_RX_ETH_BUFFER 8 626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC0_PINMUX 0 646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE 656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC1_PINMUX 0 666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC1_MIIBASE CONFIG_SYS_FEC1_IOBASE 67545c8e0aSMatthew Fettke #define MCFFEC_TOUT_LOOP 50000 68545c8e0aSMatthew Fettke #define CONFIG_HAS_ETH1 696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* If CONFIG_SYS_DISCOVER_PHY is not defined - hardcoded */ 706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_DISCOVER_PHY 71545c8e0aSMatthew Fettke #define FECDUPLEX FULL 72545c8e0aSMatthew Fettke #define FECSPEED _100BASET 73545c8e0aSMatthew Fettke #else 746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_FAULT_ECHO_LINK_DOWN 756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 76545c8e0aSMatthew Fettke #endif 77545c8e0aSMatthew Fettke #endif 78545c8e0aSMatthew Fettke #endif 79545c8e0aSMatthew Fettke 80545c8e0aSMatthew Fettke /* I2C */ 8100f792e0SHeiko Schocher #define CONFIG_SYS_I2C 8200f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL 8300f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED 80000 8400f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 8500f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_OFFSET 0x00000300 866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR CONFIG_SYS_MBAR 876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_REG (gpio_reg->par_feci2c) 886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_CLR (0xFFF0) 896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_SET (0x000F) 90545c8e0aSMatthew Fettke 916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 92545c8e0aSMatthew Fettke 936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x800000 94545c8e0aSMatthew Fettke 95545c8e0aSMatthew Fettke #define CONFIG_BOOTCOMMAND "bootm ffe40000" 966d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x400 976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x380000 98545c8e0aSMatthew Fettke 990e8a7555STsiChung Liew #ifdef CONFIG_MCFFEC 1000e8a7555STsiChung Liew # define CONFIG_NET_RETRY_COUNT 5 1010e8a7555STsiChung Liew # define CONFIG_OVERWRITE_ETHADDR_ONCE 1020e8a7555STsiChung Liew #endif /* FEC_ENET */ 1030e8a7555STsiChung Liew 1040e8a7555STsiChung Liew #define CONFIG_EXTRA_ENV_SETTINGS \ 1050e8a7555STsiChung Liew "netdev=eth0\0" \ 1060e8a7555STsiChung Liew "loadaddr=10000\0" \ 1070e8a7555STsiChung Liew "uboot=u-boot.bin\0" \ 1080e8a7555STsiChung Liew "load=tftp ${loadaddr} ${uboot}\0" \ 1090e8a7555STsiChung Liew "upd=run load; run prog\0" \ 1100e8a7555STsiChung Liew "prog=prot off ffe00000 ffe3ffff;" \ 1110e8a7555STsiChung Liew "era ffe00000 ffe3ffff;" \ 1120e8a7555STsiChung Liew "cp.b ${loadaddr} ffe00000 ${filesize};"\ 1130e8a7555STsiChung Liew "save\0" \ 1140e8a7555STsiChung Liew "" 1150e8a7555STsiChung Liew 1166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CLK 150000000 117545c8e0aSMatthew Fettke 118545c8e0aSMatthew Fettke /* 119545c8e0aSMatthew Fettke * Low Level Configuration Settings 120545c8e0aSMatthew Fettke * (address mappings, register initial values, etc.) 121545c8e0aSMatthew Fettke * You should know what you are doing if you make changes here. 122545c8e0aSMatthew Fettke */ 123545c8e0aSMatthew Fettke 1246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR 0x40000000 125545c8e0aSMatthew Fettke 126545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 127545c8e0aSMatthew Fettke * Definitions for initial stack pointer and data area (in DPRAM) 128545c8e0aSMatthew Fettke */ 1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0x20000000 130553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x10000 /* Size of used area in internal SRAM */ 13125ddd1fbSWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 133545c8e0aSMatthew Fettke 134545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 135545c8e0aSMatthew Fettke * Start addresses for the final memory configuration 136545c8e0aSMatthew Fettke * (Set up by the startup code) 1376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0 138545c8e0aSMatthew Fettke */ 1396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE 0x00000000 1406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE 16 /* SDRAM size in MB */ 141012522feSTsiChung Liew #define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE 142545c8e0aSMatthew Fettke 143545c8e0aSMatthew Fettke #ifdef CONFIG_MONITOR_IS_IN_RAM 1446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE 0x20000 145545c8e0aSMatthew Fettke #else 1466d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_FLASH_BASE + 0x400) 147545c8e0aSMatthew Fettke #endif 148545c8e0aSMatthew Fettke 1496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN 0x20000 1506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (256 << 10) 1516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 152545c8e0aSMatthew Fettke 153545c8e0aSMatthew Fettke /* 154545c8e0aSMatthew Fettke * For booting Linux, the board info and command line data 155545c8e0aSMatthew Fettke * have to be in the first 8 MB of memory, since this is 156545c8e0aSMatthew Fettke * the maximum mapped by the Linux kernel during initialization ?? 157545c8e0aSMatthew Fettke */ 158d6e4baf4STsiChung Liew #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20)) 159d6e4baf4STsiChung Liew #define CONFIG_SYS_BOOTM_LEN (CONFIG_SYS_SDRAM_SIZE << 20) 160545c8e0aSMatthew Fettke 161545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 162545c8e0aSMatthew Fettke * FLASH organization 163545c8e0aSMatthew Fettke */ 1646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */ 1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT 11 /* max number of sectors on one chip */ 1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT 1000 167545c8e0aSMatthew Fettke 1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI 1 16900b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER 1 1706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE 0x200000 171545c8e0aSMatthew Fettke 172545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 173545c8e0aSMatthew Fettke * Cache Configuration 174545c8e0aSMatthew Fettke */ 1756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CACHELINE_SIZE 16 176545c8e0aSMatthew Fettke 177dd9f054eSTsiChung Liew #define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 178553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 8) 179dd9f054eSTsiChung Liew #define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 180553f0982SWolfgang Denk CONFIG_SYS_INIT_RAM_SIZE - 4) 181dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV | CF_CACR_INVI) 182dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \ 183dd9f054eSTsiChung Liew CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \ 184dd9f054eSTsiChung Liew CF_ACR_EN | CF_ACR_SM_ALL) 185dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_CINV | \ 186dd9f054eSTsiChung Liew CF_CACR_DISD | CF_CACR_INVI | \ 187dd9f054eSTsiChung Liew CF_CACR_CEIB | CF_CACR_DCM | \ 188dd9f054eSTsiChung Liew CF_CACR_EUSP) 189dd9f054eSTsiChung Liew 190545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 191545c8e0aSMatthew Fettke * Memory bank definitions 192545c8e0aSMatthew Fettke */ 193012522feSTsiChung Liew #define CONFIG_SYS_CS0_BASE 0xffe00000 194012522feSTsiChung Liew #define CONFIG_SYS_CS0_CTRL 0x00001980 195012522feSTsiChung Liew #define CONFIG_SYS_CS0_MASK 0x001F0001 196545c8e0aSMatthew Fettke 197012522feSTsiChung Liew #define CONFIG_SYS_CS1_BASE 0x30000000 198012522feSTsiChung Liew #define CONFIG_SYS_CS1_CTRL 0x00001900 199012522feSTsiChung Liew #define CONFIG_SYS_CS1_MASK 0x00070001 200545c8e0aSMatthew Fettke 201545c8e0aSMatthew Fettke /*----------------------------------------------------------------------- 202545c8e0aSMatthew Fettke * Port configuration 203545c8e0aSMatthew Fettke */ 2046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FECI2C 0x0FA0 205545c8e0aSMatthew Fettke 206545c8e0aSMatthew Fettke #endif /* _M5275EVB_H */ 207