blob: 79cacd7dacc6765ba7afb6133828f7aa34eb53dc [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
Jens Scharsig772d9b02009-07-24 10:31:48 +020011/*----------------------------------------------------------------------*
12 * High Level Configuration Options (easy to change) *
13 *----------------------------------------------------------------------*/
Heiko Schocherac1956e2006-04-20 08:42:42 +020014
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020015#define CONFIG_SYS_UART_PORT (0)
Heiko Schocherac1956e2006-04-20 08:42:42 +020016
Jens Scharsig772d9b02009-07-24 10:31:48 +020017#undef CONFIG_MONITOR_IS_IN_RAM /* starts uboot direct */
Heiko Schocherac1956e2006-04-20 08:42:42 +020018
Jens Scharsig772d9b02009-07-24 10:31:48 +020019/*----------------------------------------------------------------------*
20 * Options *
21 *----------------------------------------------------------------------*/
22
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000023#define STATUS_LED_ACTIVE 0
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000024
Jens Scharsig772d9b02009-07-24 10:31:48 +020025/*----------------------------------------------------------------------*
26 * Configuration for environment *
27 * Environment is in the second sector of the first 256k of flash *
28 *----------------------------------------------------------------------*/
29
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020030/*#define CONFIG_SYS_DRAM_TEST 1 */
31#undef CONFIG_SYS_DRAM_TEST
Heiko Schocherac1956e2006-04-20 08:42:42 +020032
Jens Scharsig772d9b02009-07-24 10:31:48 +020033/*----------------------------------------------------------------------*
34 * Clock and PLL Configuration *
35 *----------------------------------------------------------------------*/
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000036#define CONFIG_SYS_CLK 80000000 /* 8MHz * 8 */
Heiko Schocherac1956e2006-04-20 08:42:42 +020037
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000038/* PLL Configuration: Ext Clock * 8 (see table 9-4 of MCF user manual) */
Heiko Schocherac1956e2006-04-20 08:42:42 +020039
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000040#define CONFIG_SYS_MFD 0x02 /* PLL Multiplication Factor Devider */
Jens Scharsig772d9b02009-07-24 10:31:48 +020041#define CONFIG_SYS_RFD 0x00 /* PLL Reduce Frecuency Devider */
Heiko Schocherac1956e2006-04-20 08:42:42 +020042
Jens Scharsig772d9b02009-07-24 10:31:48 +020043/*----------------------------------------------------------------------*
44 * Network *
45 *----------------------------------------------------------------------*/
46
Angelo Durgehello68d46ad2019-11-15 23:54:15 +010047#ifdef CONFIG_MCFFEC
Jens Scharsig772d9b02009-07-24 10:31:48 +020048#define CONFIG_OVERWRITE_ETHADDR_ONCE
Angelo Durgehello68d46ad2019-11-15 23:54:15 +010049#endif
Jens Scharsig772d9b02009-07-24 10:31:48 +020050
51/*-------------------------------------------------------------------------
Heiko Schocherac1956e2006-04-20 08:42:42 +020052 * Low Level Configuration Settings
53 * (address mappings, register initial values, etc.)
54 * You should know what you are doing if you make changes here.
Jens Scharsig772d9b02009-07-24 10:31:48 +020055 *-----------------------------------------------------------------------*/
56
57#define CONFIG_SYS_MBAR 0x40000000
Heiko Schocherac1956e2006-04-20 08:42:42 +020058
Heiko Schocherac1956e2006-04-20 08:42:42 +020059/*-----------------------------------------------------------------------
60 * Definitions for initial stack pointer and data area (in DPRAM)
Jens Scharsig772d9b02009-07-24 10:31:48 +020061 *-----------------------------------------------------------------------*/
62
63#define CONFIG_SYS_INIT_RAM_ADDR 0x20000000
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000064#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
Heiko Schocherac1956e2006-04-20 08:42:42 +020065
66/*-----------------------------------------------------------------------
67 * Start addresses for the final memory configuration
68 * (Set up by the startup code)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020069 * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
Heiko Schocherac1956e2006-04-20 08:42:42 +020070 */
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000071#define CONFIG_SYS_SDRAM_BASE0 0x00000000
72#define CONFIG_SYS_SDRAM_SIZE0 16 /* SDRAM size in MB */
Heiko Schocherac1956e2006-04-20 08:42:42 +020073
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000074#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_BASE0
75#define CONFIG_SYS_SDRAM_SIZE CONFIG_SYS_SDRAM_SIZE0
Heiko Schocherac1956e2006-04-20 08:42:42 +020076
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020077#define CONFIG_SYS_MONITOR_LEN 0x20000
Heiko Schocherac1956e2006-04-20 08:42:42 +020078
79/*
80 * For booting Linux, the board info and command line data
81 * have to be in the first 8 MB of memory, since this is
82 * the maximum mapped by the Linux kernel during initialization ??
83 */
Jens Scharsig772d9b02009-07-24 10:31:48 +020084#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
Heiko Schocherac1956e2006-04-20 08:42:42 +020085
86/*-----------------------------------------------------------------------
87 * FLASH organization
88 */
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000089#define CONFIG_FLASH_SHOW_PROGRESS 45
Jens Scharsig772d9b02009-07-24 10:31:48 +020090
91#define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE
92#define CONFIG_SYS_INT_FLASH_BASE 0xF0000000
93#define CONFIG_SYS_INT_FLASH_ENABLE 0x21
94
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000095#define CONFIG_SYS_FLASH_SIZE 16*1024*1024
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000096
97#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
98
Heiko Schocherac1956e2006-04-20 08:42:42 +020099/*-----------------------------------------------------------------------
100 * Cache Configuration
101 */
Heiko Schocherac1956e2006-04-20 08:42:42 +0200102
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600103#define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk1c2e98e2010-10-26 13:32:32 +0200104 CONFIG_SYS_INIT_RAM_SIZE - 8)
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600105#define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk1c2e98e2010-10-26 13:32:32 +0200106 CONFIG_SYS_INIT_RAM_SIZE - 4)
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600107#define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV + CF_CACR_DCM)
108#define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \
109 CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \
110 CF_ACR_EN | CF_ACR_SM_ALL)
111#define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_DISD | \
112 CF_CACR_CEIB | CF_CACR_DBWE | \
113 CF_CACR_EUSP)
114
Heiko Schocherac1956e2006-04-20 08:42:42 +0200115/*-----------------------------------------------------------------------
116 * Memory bank definitions
117 */
118
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000119#define CONFIG_SYS_CS0_BASE 0xFF000000
TsiChung Liew7f1a0462008-10-21 10:03:07 +0000120#define CONFIG_SYS_CS0_CTRL 0x00001980
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000121#define CONFIG_SYS_CS0_MASK 0x00FF0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200122
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000123#define CONFIG_SYS_CS2_BASE 0xE0000000
124#define CONFIG_SYS_CS2_CTRL 0x00001980
125#define CONFIG_SYS_CS2_MASK 0x000F0001
126
127#define CONFIG_SYS_CS3_BASE 0xE0100000
128#define CONFIG_SYS_CS3_CTRL 0x00001980
TsiChung Liew7f1a0462008-10-21 10:03:07 +0000129#define CONFIG_SYS_CS3_MASK 0x000F0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200130
131/*-----------------------------------------------------------------------
132 * Port configuration
133 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200134#define CONFIG_SYS_PACNT 0x0000000 /* Port A D[31:24] */
135#define CONFIG_SYS_PADDR 0x0000000
136#define CONFIG_SYS_PADAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200137
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200138#define CONFIG_SYS_PBCNT 0x0000000 /* Port B D[23:16] */
139#define CONFIG_SYS_PBDDR 0x0000000
140#define CONFIG_SYS_PBDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200141
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200142#define CONFIG_SYS_PCCNT 0x0000000 /* Port C D[15:08] */
143#define CONFIG_SYS_PCDDR 0x0000000
144#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200145
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200146#define CONFIG_SYS_PDCNT 0x0000000 /* Port D D[07:00] */
147#define CONFIG_SYS_PCDDR 0x0000000
148#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200149
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000150#define CONFIG_SYS_PASPAR 0x0F0F
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200151#define CONFIG_SYS_PEHLPAR 0xC0
Jens Scharsig772d9b02009-07-24 10:31:48 +0200152#define CONFIG_SYS_PUAPAR 0x0F
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200153#define CONFIG_SYS_DDRUA 0x05
154#define CONFIG_SYS_PJPAR 0xFF
Heiko Schocherac1956e2006-04-20 08:42:42 +0200155
156/*-----------------------------------------------------------------------
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000157 * I2C
158 */
159
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000160#ifdef CONFIG_CMD_DATE
161#define CONFIG_RTC_DS1338
162#define CONFIG_I2C_RTC_ADDR 0x68
163#endif
164
165/*-----------------------------------------------------------------------
Jens Scharsig772d9b02009-07-24 10:31:48 +0200166 * VIDEO configuration
Heiko Schocherac1956e2006-04-20 08:42:42 +0200167 */
168
Jens Scharsig772d9b02009-07-24 10:31:48 +0200169#define CONFIG_SYS_VCXK_DEFAULT_LINEALIGN 2
170#define CONFIG_SYS_VCXK_DOUBLEBUFFERED 1
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000171#define CONFIG_SYS_VCXK_BASE CONFIG_SYS_CS2_BASE
Jens Scharsig772d9b02009-07-24 10:31:48 +0200172
173#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT MCFGPTB_GPTPORT
174#define CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR MCFGPTB_GPTDDR
175#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PIN 0x0001
176
177#define CONFIG_SYS_VCXK_ENABLE_PORT MCFGPTB_GPTPORT
178#define CONFIG_SYS_VCXK_ENABLE_DDR MCFGPTB_GPTDDR
179#define CONFIG_SYS_VCXK_ENABLE_PIN 0x0002
180
181#define CONFIG_SYS_VCXK_REQUEST_PORT MCFGPTB_GPTPORT
182#define CONFIG_SYS_VCXK_REQUEST_DDR MCFGPTB_GPTDDR
183#define CONFIG_SYS_VCXK_REQUEST_PIN 0x0004
184
185#define CONFIG_SYS_VCXK_INVERT_PORT MCFGPIO_PORTE
186#define CONFIG_SYS_VCXK_INVERT_DDR MCFGPIO_DDRE
187#define CONFIG_SYS_VCXK_INVERT_PIN MCFGPIO_PORT2
Heiko Schocherac1956e2006-04-20 08:42:42 +0200188
Heiko Schocherac1956e2006-04-20 08:42:42 +0200189#endif /* _CONFIG_M5282EVB_H */
190/*---------------------------------------------------------------------*/