blob: 21eab9b3a479ee6bff7e43f67e57c603a3eeae55 [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
Tom Rini6a5dccc2022-11-16 13:10:41 -050015#define CFG_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
Tom Rini6a5dccc2022-11-16 13:10:41 -050030/*#define CFG_SYS_DRAM_TEST 1 */
31#undef CFG_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 *----------------------------------------------------------------------*/
Tom Rini6a5dccc2022-11-16 13:10:41 -050036#define CFG_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
Tom Rini6a5dccc2022-11-16 13:10:41 -050040#define CFG_SYS_MFD 0x02 /* PLL Multiplication Factor Devider */
41#define CFG_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
Tom Rini6a5dccc2022-11-16 13:10:41 -050057#define CFG_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
Tom Rini6a5dccc2022-11-16 13:10:41 -050063#define CFG_SYS_INIT_RAM_ADDR 0x20000000
64#define CFG_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)
Tom Rinibb4dd962022-11-16 13:10:37 -050069 * Please note that CFG_SYS_SDRAM_BASE _must_ start at 0
Heiko Schocherac1956e2006-04-20 08:42:42 +020070 */
Tom Rinibb4dd962022-11-16 13:10:37 -050071#define CFG_SYS_SDRAM_BASE0 0x00000000
72#define CFG_SYS_SDRAM_SIZE0 16 /* SDRAM size in MB */
Heiko Schocherac1956e2006-04-20 08:42:42 +020073
Tom Rinibb4dd962022-11-16 13:10:37 -050074#define CFG_SYS_SDRAM_BASE CFG_SYS_SDRAM_BASE0
75#define CFG_SYS_SDRAM_SIZE CFG_SYS_SDRAM_SIZE0
Heiko Schocherac1956e2006-04-20 08:42:42 +020076
Heiko Schocherac1956e2006-04-20 08:42:42 +020077/*
78 * For booting Linux, the board info and command line data
79 * have to be in the first 8 MB of memory, since this is
80 * the maximum mapped by the Linux kernel during initialization ??
81 */
Tom Rini6a5dccc2022-11-16 13:10:41 -050082#define CFG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
Heiko Schocherac1956e2006-04-20 08:42:42 +020083
84/*-----------------------------------------------------------------------
85 * FLASH organization
86 */
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000087#define CONFIG_FLASH_SHOW_PROGRESS 45
Jens Scharsig772d9b02009-07-24 10:31:48 +020088
Tom Rini6a5dccc2022-11-16 13:10:41 -050089#define CFG_SYS_FLASH_BASE CFG_SYS_CS0_BASE
90#define CFG_SYS_INT_FLASH_BASE 0xF0000000
91#define CFG_SYS_INT_FLASH_ENABLE 0x21
Jens Scharsig772d9b02009-07-24 10:31:48 +020092
Tom Rini6a5dccc2022-11-16 13:10:41 -050093#define CFG_SYS_FLASH_SIZE 16*1024*1024
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000094
Tom Rini6a5dccc2022-11-16 13:10:41 -050095#define CFG_SYS_FLASH_BANKS_LIST { CFG_SYS_FLASH_BASE }
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +000096
Heiko Schocherac1956e2006-04-20 08:42:42 +020097/*-----------------------------------------------------------------------
98 * Cache Configuration
99 */
Heiko Schocherac1956e2006-04-20 08:42:42 +0200100
Tom Rini6a5dccc2022-11-16 13:10:41 -0500101#define ICACHE_STATUS (CFG_SYS_INIT_RAM_ADDR + \
102 CFG_SYS_INIT_RAM_SIZE - 8)
103#define DCACHE_STATUS (CFG_SYS_INIT_RAM_ADDR + \
104 CFG_SYS_INIT_RAM_SIZE - 4)
105#define CFG_SYS_ICACHE_INV (CF_CACR_CINV + CF_CACR_DCM)
106#define CFG_SYS_CACHE_ACR0 (CFG_SYS_SDRAM_BASE | \
Tom Rinibb4dd962022-11-16 13:10:37 -0500107 CF_ADDRMASK(CFG_SYS_SDRAM_SIZE) | \
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600108 CF_ACR_EN | CF_ACR_SM_ALL)
Tom Rini6a5dccc2022-11-16 13:10:41 -0500109#define CFG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_DISD | \
TsiChung Liew0ee47d42010-03-11 22:12:53 -0600110 CF_CACR_CEIB | CF_CACR_DBWE | \
111 CF_CACR_EUSP)
112
Heiko Schocherac1956e2006-04-20 08:42:42 +0200113/*-----------------------------------------------------------------------
114 * Memory bank definitions
115 */
116
Tom Rini6a5dccc2022-11-16 13:10:41 -0500117#define CFG_SYS_CS0_BASE 0xFF000000
118#define CFG_SYS_CS0_CTRL 0x00001980
119#define CFG_SYS_CS0_MASK 0x00FF0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200120
Tom Rini6a5dccc2022-11-16 13:10:41 -0500121#define CFG_SYS_CS2_BASE 0xE0000000
122#define CFG_SYS_CS2_CTRL 0x00001980
123#define CFG_SYS_CS2_MASK 0x000F0001
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000124
Tom Rini6a5dccc2022-11-16 13:10:41 -0500125#define CFG_SYS_CS3_BASE 0xE0100000
126#define CFG_SYS_CS3_CTRL 0x00001980
127#define CFG_SYS_CS3_MASK 0x000F0001
Heiko Schocherac1956e2006-04-20 08:42:42 +0200128
129/*-----------------------------------------------------------------------
130 * Port configuration
131 */
Tom Rini6a5dccc2022-11-16 13:10:41 -0500132#define CFG_SYS_PACNT 0x0000000 /* Port A D[31:24] */
133#define CFG_SYS_PADDR 0x0000000
134#define CFG_SYS_PADAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200135
Tom Rini6a5dccc2022-11-16 13:10:41 -0500136#define CFG_SYS_PBCNT 0x0000000 /* Port B D[23:16] */
137#define CFG_SYS_PBDDR 0x0000000
138#define CFG_SYS_PBDAT 0x0000000
Heiko Schocherac1956e2006-04-20 08:42:42 +0200139
Tom Rini6a5dccc2022-11-16 13:10:41 -0500140#define CFG_SYS_PDCNT 0x0000000 /* Port D D[07:00] */
Heiko Schocherac1956e2006-04-20 08:42:42 +0200141
Tom Rini6a5dccc2022-11-16 13:10:41 -0500142#define CFG_SYS_PASPAR 0x0F0F
143#define CFG_SYS_PEHLPAR 0xC0
144#define CFG_SYS_PUAPAR 0x0F
145#define CFG_SYS_DDRUA 0x05
146#define CFG_SYS_PJPAR 0xFF
Heiko Schocherac1956e2006-04-20 08:42:42 +0200147
148/*-----------------------------------------------------------------------
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000149 * I2C
150 */
151
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000152#ifdef CONFIG_CMD_DATE
Jens Scharsig (BuS Elektronik)e5e58372012-10-30 00:46:05 +0000153#define CONFIG_I2C_RTC_ADDR 0x68
154#endif
155
Heiko Schocherac1956e2006-04-20 08:42:42 +0200156#endif /* _CONFIG_M5282EVB_H */
157/*---------------------------------------------------------------------*/