blob: d983cb77b18736c0f4e91aaf5d7362befccd8c32 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Heiko Schocherac1956e2006-04-20 08:42:42 +02002/*
Jens Scharsig2686eff2012-05-02 00:57:08 +00003 * Configuation settings for the BuS EB+CPU5283 boards (aka EB+MCF-EV123)
Heiko Schocherac1956e2006-04-20 08:42:42 +02004 *
Jens Scharsig772d9b02009-07-24 10:31:48 +02005 * (C) Copyright 2005-2009 BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
Heiko Schocherac1956e2006-04-20 08:42:42 +02006 */
7
Jens Scharsig2686eff2012-05-02 00:57:08 +00008#ifndef _CONFIG_EB_CPU5282_H_
9#define _CONFIG_EB_CPU5282_H_
Heiko Schocherac1956e2006-04-20 08:42:42 +020010
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020011#undef CONFIG_SYS_HALT_BEFOR_RAM_JUMP
Wolfgang Denkf7290752006-06-10 22:00:40 +020012
Jens Scharsig772d9b02009-07-24 10:31:48 +020013/*----------------------------------------------------------------------*
14 * High Level Configuration Options (easy to change) *
15 *----------------------------------------------------------------------*/
Heiko Schocherac1956e2006-04-20 08:42:42 +020016
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020017#define CONFIG_SYS_UART_PORT (0)
Heiko Schocherac1956e2006-04-20 08:42:42 +020018
Jens Scharsig772d9b02009-07-24 10:31:48 +020019#undef CONFIG_MONITOR_IS_IN_RAM /* starts uboot direct */
Heiko Schocherac1956e2006-04-20 08:42:42 +020020
Jens Scharsig772d9b02009-07-24 10:31:48 +020021/*----------------------------------------------------------------------*
22 * Options *
23 *----------------------------------------------------------------------*/
24
25#define CONFIG_BOOT_RETRY_TIME -1
26#define CONFIG_RESET_TO_RETRY
Jens Scharsig772d9b02009-07-24 10:31:48 +020027
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000028#define STATUS_LED_ACTIVE 0
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000029
Jens Scharsig772d9b02009-07-24 10:31:48 +020030/*----------------------------------------------------------------------*
31 * Configuration for environment *
32 * Environment is in the second sector of the first 256k of flash *
33 *----------------------------------------------------------------------*/
34
TsiChung Liew26c9f3c2008-07-09 15:21:44 -050035#define CONFIG_MCFTMR
36
Jens Scharsig772d9b02009-07-24 10:31:48 +020037#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
Jens Scharsig772d9b02009-07-24 10:31:48 +020038#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
Heiko Schocherac1956e2006-04-20 08:42:42 +020039
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020040/*#define CONFIG_SYS_DRAM_TEST 1 */
41#undef CONFIG_SYS_DRAM_TEST
Heiko Schocherac1956e2006-04-20 08:42:42 +020042
Jens Scharsig772d9b02009-07-24 10:31:48 +020043/*----------------------------------------------------------------------*
44 * Clock and PLL Configuration *
45 *----------------------------------------------------------------------*/
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000046#define CONFIG_SYS_CLK 80000000 /* 8MHz * 8 */
Heiko Schocherac1956e2006-04-20 08:42:42 +020047
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000048/* PLL Configuration: Ext Clock * 8 (see table 9-4 of MCF user manual) */
Heiko Schocherac1956e2006-04-20 08:42:42 +020049
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000050#define CONFIG_SYS_MFD 0x02 /* PLL Multiplication Factor Devider */
Jens Scharsig772d9b02009-07-24 10:31:48 +020051#define CONFIG_SYS_RFD 0x00 /* PLL Reduce Frecuency Devider */
Heiko Schocherac1956e2006-04-20 08:42:42 +020052
Jens Scharsig772d9b02009-07-24 10:31:48 +020053/*----------------------------------------------------------------------*
54 * Network *
55 *----------------------------------------------------------------------*/
56
Angelo Durgehello68d46ad2019-11-15 23:54:15 +010057#ifdef CONFIG_MCFFEC
Jens Scharsig772d9b02009-07-24 10:31:48 +020058#define CONFIG_MII_INIT 1
59#define CONFIG_SYS_DISCOVER_PHY
60#define CONFIG_SYS_RX_ETH_BUFFER 8
61#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
Jens Scharsig772d9b02009-07-24 10:31:48 +020062#define CONFIG_OVERWRITE_ETHADDR_ONCE
Angelo Durgehello68d46ad2019-11-15 23:54:15 +010063#endif
Jens Scharsig772d9b02009-07-24 10:31:48 +020064
65/*-------------------------------------------------------------------------
Heiko Schocherac1956e2006-04-20 08:42:42 +020066 * Low Level Configuration Settings
67 * (address mappings, register initial values, etc.)
68 * You should know what you are doing if you make changes here.
Jens Scharsig772d9b02009-07-24 10:31:48 +020069 *-----------------------------------------------------------------------*/
70
71#define CONFIG_SYS_MBAR 0x40000000
Heiko Schocherac1956e2006-04-20 08:42:42 +020072
Heiko Schocherac1956e2006-04-20 08:42:42 +020073/*-----------------------------------------------------------------------
74 * Definitions for initial stack pointer and data area (in DPRAM)
Jens Scharsig772d9b02009-07-24 10:31:48 +020075 *-----------------------------------------------------------------------*/
76
77#define CONFIG_SYS_INIT_RAM_ADDR 0x20000000
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000078#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
Jens Scharsig772d9b02009-07-24 10:31:48 +020079#define CONFIG_SYS_GBL_DATA_OFFSET \
Wolfgang Denk0191e472010-10-26 14:34:52 +020080 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020081#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET
Heiko Schocherac1956e2006-04-20 08:42:42 +020082
83/*-----------------------------------------------------------------------
84 * Start addresses for the final memory configuration
85 * (Set up by the startup code)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020086 * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
Heiko Schocherac1956e2006-04-20 08:42:42 +020087 */
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000088#define CONFIG_SYS_SDRAM_BASE0 0x00000000
89#define CONFIG_SYS_SDRAM_SIZE0 16 /* SDRAM size in MB */
Heiko Schocherac1956e2006-04-20 08:42:42 +020090
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000091#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_BASE0
92#define CONFIG_SYS_SDRAM_SIZE CONFIG_SYS_SDRAM_SIZE0
Heiko Schocherac1956e2006-04-20 08:42:42 +020093
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020094#define CONFIG_SYS_MONITOR_LEN 0x20000
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020095#define CONFIG_SYS_BOOTPARAMS_LEN 64*1024
Heiko Schocherac1956e2006-04-20 08:42:42 +020096
97/*
98 * For booting Linux, the board info and command line data
99 * have to be in the first 8 MB of memory, since this is
100 * the maximum mapped by the Linux kernel during initialization ??
101 */
Jens Scharsig772d9b02009-07-24 10:31:48 +0200102#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
Heiko Schocherac1956e2006-04-20 08:42:42 +0200103
104/*-----------------------------------------------------------------------
105 * FLASH organization
106 */
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000107#define CONFIG_FLASH_SHOW_PROGRESS 45
Jens Scharsig772d9b02009-07-24 10:31:48 +0200108
109#define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE
110#define CONFIG_SYS_INT_FLASH_BASE 0xF0000000
111#define CONFIG_SYS_INT_FLASH_ENABLE 0x21
112
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000113#define CONFIG_SYS_MAX_FLASH_SECT 128
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200114#define CONFIG_SYS_FLASH_ERASE_TOUT 10000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200115
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000116#define CONFIG_SYS_FLASH_SIZE 16*1024*1024
117#define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT
118
119#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
120
Heiko Schocherac1956e2006-04-20 08:42:42 +0200121/*-----------------------------------------------------------------------
122 * Cache Configuration
123 */
Heiko Schocherac1956e2006-04-20 08:42:42 +0200124
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600125#define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk1c2e98e2010-10-26 13:32:32 +0200126 CONFIG_SYS_INIT_RAM_SIZE - 8)
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600127#define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk1c2e98e2010-10-26 13:32:32 +0200128 CONFIG_SYS_INIT_RAM_SIZE - 4)
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600129#define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV + CF_CACR_DCM)
130#define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \
131 CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \
132 CF_ACR_EN | CF_ACR_SM_ALL)
133#define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_DISD | \
134 CF_CACR_CEIB | CF_CACR_DBWE | \
135 CF_CACR_EUSP)
136
Heiko Schocherac1956e2006-04-20 08:42:42 +0200137/*-----------------------------------------------------------------------
138 * Memory bank definitions
139 */
140
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000141#define CONFIG_SYS_CS0_BASE 0xFF000000
TsiChung Liew7f1a0462008-10-21 10:03:07 +0000142#define CONFIG_SYS_CS0_CTRL 0x00001980
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000143#define CONFIG_SYS_CS0_MASK 0x00FF0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200144
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000145#define CONFIG_SYS_CS2_BASE 0xE0000000
146#define CONFIG_SYS_CS2_CTRL 0x00001980
147#define CONFIG_SYS_CS2_MASK 0x000F0001
148
149#define CONFIG_SYS_CS3_BASE 0xE0100000
150#define CONFIG_SYS_CS3_CTRL 0x00001980
TsiChung Liew7f1a0462008-10-21 10:03:07 +0000151#define CONFIG_SYS_CS3_MASK 0x000F0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200152
153/*-----------------------------------------------------------------------
154 * Port configuration
155 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200156#define CONFIG_SYS_PACNT 0x0000000 /* Port A D[31:24] */
157#define CONFIG_SYS_PADDR 0x0000000
158#define CONFIG_SYS_PADAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200159
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200160#define CONFIG_SYS_PBCNT 0x0000000 /* Port B D[23:16] */
161#define CONFIG_SYS_PBDDR 0x0000000
162#define CONFIG_SYS_PBDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200163
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200164#define CONFIG_SYS_PCCNT 0x0000000 /* Port C D[15:08] */
165#define CONFIG_SYS_PCDDR 0x0000000
166#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200167
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200168#define CONFIG_SYS_PDCNT 0x0000000 /* Port D D[07:00] */
169#define CONFIG_SYS_PCDDR 0x0000000
170#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200171
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000172#define CONFIG_SYS_PASPAR 0x0F0F
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200173#define CONFIG_SYS_PEHLPAR 0xC0
Jens Scharsig772d9b02009-07-24 10:31:48 +0200174#define CONFIG_SYS_PUAPAR 0x0F
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200175#define CONFIG_SYS_DDRUA 0x05
176#define CONFIG_SYS_PJPAR 0xFF
Heiko Schocherac1956e2006-04-20 08:42:42 +0200177
178/*-----------------------------------------------------------------------
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000179 * I2C
180 */
181
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000182#ifdef CONFIG_CMD_DATE
183#define CONFIG_RTC_DS1338
184#define CONFIG_I2C_RTC_ADDR 0x68
185#endif
186
187/*-----------------------------------------------------------------------
Jens Scharsig772d9b02009-07-24 10:31:48 +0200188 * VIDEO configuration
Heiko Schocherac1956e2006-04-20 08:42:42 +0200189 */
190
Jens Scharsig772d9b02009-07-24 10:31:48 +0200191#define CONFIG_SYS_VCXK_DEFAULT_LINEALIGN 2
192#define CONFIG_SYS_VCXK_DOUBLEBUFFERED 1
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000193#define CONFIG_SYS_VCXK_BASE CONFIG_SYS_CS2_BASE
Jens Scharsig772d9b02009-07-24 10:31:48 +0200194
195#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT MCFGPTB_GPTPORT
196#define CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR MCFGPTB_GPTDDR
197#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PIN 0x0001
198
199#define CONFIG_SYS_VCXK_ENABLE_PORT MCFGPTB_GPTPORT
200#define CONFIG_SYS_VCXK_ENABLE_DDR MCFGPTB_GPTDDR
201#define CONFIG_SYS_VCXK_ENABLE_PIN 0x0002
202
203#define CONFIG_SYS_VCXK_REQUEST_PORT MCFGPTB_GPTPORT
204#define CONFIG_SYS_VCXK_REQUEST_DDR MCFGPTB_GPTDDR
205#define CONFIG_SYS_VCXK_REQUEST_PIN 0x0004
206
207#define CONFIG_SYS_VCXK_INVERT_PORT MCFGPIO_PORTE
208#define CONFIG_SYS_VCXK_INVERT_DDR MCFGPIO_DDRE
209#define CONFIG_SYS_VCXK_INVERT_PIN MCFGPIO_PORT2
Heiko Schocherac1956e2006-04-20 08:42:42 +0200210
Heiko Schocherac1956e2006-04-20 08:42:42 +0200211#endif /* _CONFIG_M5282EVB_H */
212/*---------------------------------------------------------------------*/