blob: aaa2ef039d947295829ad285e917016e0328043d [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Heiko Schocher9acb6262006-04-20 08:42:42 +02002/*
Jens Scharsigeb0b43f2012-05-02 00:57:08 +00003 * Configuation settings for the BuS EB+CPU5283 boards (aka EB+MCF-EV123)
Heiko Schocher9acb6262006-04-20 08:42:42 +02004 *
Jens Scharsig35cf3b52009-07-24 10:31:48 +02005 * (C) Copyright 2005-2009 BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
Heiko Schocher9acb6262006-04-20 08:42:42 +02006 */
7
Jens Scharsigeb0b43f2012-05-02 00:57:08 +00008#ifndef _CONFIG_EB_CPU5282_H_
9#define _CONFIG_EB_CPU5282_H_
Heiko Schocher9acb6262006-04-20 08:42:42 +020010
Jens Scharsig35cf3b52009-07-24 10:31:48 +020011/*----------------------------------------------------------------------*
12 * High Level Configuration Options (easy to change) *
13 *----------------------------------------------------------------------*/
Heiko Schocher9acb6262006-04-20 08:42:42 +020014
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +020015#define CONFIG_SYS_UART_PORT (0)
Heiko Schocher9acb6262006-04-20 08:42:42 +020016
Jens Scharsig35cf3b52009-07-24 10:31:48 +020017#undef CONFIG_MONITOR_IS_IN_RAM /* starts uboot direct */
Heiko Schocher9acb6262006-04-20 08:42:42 +020018
Jens Scharsig35cf3b52009-07-24 10:31:48 +020019/*----------------------------------------------------------------------*
20 * Options *
21 *----------------------------------------------------------------------*/
22
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000023#define STATUS_LED_ACTIVE 0
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000024
Jens Scharsig35cf3b52009-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-VILLARD6d0f6bc2008-10-16 15:01:15 +020030/*#define CONFIG_SYS_DRAM_TEST 1 */
31#undef CONFIG_SYS_DRAM_TEST
Heiko Schocher9acb6262006-04-20 08:42:42 +020032
Jens Scharsig35cf3b52009-07-24 10:31:48 +020033/*----------------------------------------------------------------------*
34 * Clock and PLL Configuration *
35 *----------------------------------------------------------------------*/
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000036#define CONFIG_SYS_CLK 80000000 /* 8MHz * 8 */
Heiko Schocher9acb6262006-04-20 08:42:42 +020037
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000038/* PLL Configuration: Ext Clock * 8 (see table 9-4 of MCF user manual) */
Heiko Schocher9acb6262006-04-20 08:42:42 +020039
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000040#define CONFIG_SYS_MFD 0x02 /* PLL Multiplication Factor Devider */
Jens Scharsig35cf3b52009-07-24 10:31:48 +020041#define CONFIG_SYS_RFD 0x00 /* PLL Reduce Frecuency Devider */
Heiko Schocher9acb6262006-04-20 08:42:42 +020042
Jens Scharsig35cf3b52009-07-24 10:31:48 +020043/*----------------------------------------------------------------------*
44 * Network *
45 *----------------------------------------------------------------------*/
46
Angelo Durgehelloff56f2b2019-11-15 23:54:15 +010047#ifdef CONFIG_MCFFEC
Jens Scharsig35cf3b52009-07-24 10:31:48 +020048#define CONFIG_OVERWRITE_ETHADDR_ONCE
Angelo Durgehelloff56f2b2019-11-15 23:54:15 +010049#endif
Jens Scharsig35cf3b52009-07-24 10:31:48 +020050
51/*-------------------------------------------------------------------------
Heiko Schocher9acb6262006-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 Scharsig35cf3b52009-07-24 10:31:48 +020055 *-----------------------------------------------------------------------*/
56
57#define CONFIG_SYS_MBAR 0x40000000
Heiko Schocher9acb6262006-04-20 08:42:42 +020058
Heiko Schocher9acb6262006-04-20 08:42:42 +020059/*-----------------------------------------------------------------------
60 * Definitions for initial stack pointer and data area (in DPRAM)
Jens Scharsig35cf3b52009-07-24 10:31:48 +020061 *-----------------------------------------------------------------------*/
62
63#define CONFIG_SYS_INIT_RAM_ADDR 0x20000000
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000064#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
Heiko Schocher9acb6262006-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-VILLARD6d0f6bc2008-10-16 15:01:15 +020069 * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
Heiko Schocher9acb6262006-04-20 08:42:42 +020070 */
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000071#define CONFIG_SYS_SDRAM_BASE0 0x00000000
72#define CONFIG_SYS_SDRAM_SIZE0 16 /* SDRAM size in MB */
Heiko Schocher9acb6262006-04-20 08:42:42 +020073
Jens Scharsig (BuS Elektronik)d858c332012-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 Schocher9acb6262006-04-20 08:42:42 +020076
Heiko Schocher9acb6262006-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 */
Jens Scharsig35cf3b52009-07-24 10:31:48 +020082#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */
Heiko Schocher9acb6262006-04-20 08:42:42 +020083
84/*-----------------------------------------------------------------------
85 * FLASH organization
86 */
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000087#define CONFIG_FLASH_SHOW_PROGRESS 45
Jens Scharsig35cf3b52009-07-24 10:31:48 +020088
89#define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE
90#define CONFIG_SYS_INT_FLASH_BASE 0xF0000000
91#define CONFIG_SYS_INT_FLASH_ENABLE 0x21
92
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000093#define CONFIG_SYS_FLASH_SIZE 16*1024*1024
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +000094
95#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
96
Heiko Schocher9acb6262006-04-20 08:42:42 +020097/*-----------------------------------------------------------------------
98 * Cache Configuration
99 */
Heiko Schocher9acb6262006-04-20 08:42:42 +0200100
TsiChung Liewdd9f0542010-03-11 22:12:53 -0600101#define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk553f0982010-10-26 13:32:32 +0200102 CONFIG_SYS_INIT_RAM_SIZE - 8)
TsiChung Liewdd9f0542010-03-11 22:12:53 -0600103#define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \
Wolfgang Denk553f0982010-10-26 13:32:32 +0200104 CONFIG_SYS_INIT_RAM_SIZE - 4)
TsiChung Liewdd9f0542010-03-11 22:12:53 -0600105#define CONFIG_SYS_ICACHE_INV (CF_CACR_CINV + CF_CACR_DCM)
106#define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \
107 CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \
108 CF_ACR_EN | CF_ACR_SM_ALL)
109#define CONFIG_SYS_CACHE_ICACR (CF_CACR_CENB | CF_CACR_DISD | \
110 CF_CACR_CEIB | CF_CACR_DBWE | \
111 CF_CACR_EUSP)
112
Heiko Schocher9acb6262006-04-20 08:42:42 +0200113/*-----------------------------------------------------------------------
114 * Memory bank definitions
115 */
116
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000117#define CONFIG_SYS_CS0_BASE 0xFF000000
TsiChung Liew012522f2008-10-21 10:03:07 +0000118#define CONFIG_SYS_CS0_CTRL 0x00001980
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000119#define CONFIG_SYS_CS0_MASK 0x00FF0001
Heiko Schocher9acb6262006-04-20 08:42:42 +0200120
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000121#define CONFIG_SYS_CS2_BASE 0xE0000000
122#define CONFIG_SYS_CS2_CTRL 0x00001980
123#define CONFIG_SYS_CS2_MASK 0x000F0001
124
125#define CONFIG_SYS_CS3_BASE 0xE0100000
126#define CONFIG_SYS_CS3_CTRL 0x00001980
TsiChung Liew012522f2008-10-21 10:03:07 +0000127#define CONFIG_SYS_CS3_MASK 0x000F0001
Heiko Schocher9acb6262006-04-20 08:42:42 +0200128
129/*-----------------------------------------------------------------------
130 * Port configuration
131 */
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200132#define CONFIG_SYS_PACNT 0x0000000 /* Port A D[31:24] */
133#define CONFIG_SYS_PADDR 0x0000000
134#define CONFIG_SYS_PADAT 0x0000000
Heiko Schocher9acb6262006-04-20 08:42:42 +0200135
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200136#define CONFIG_SYS_PBCNT 0x0000000 /* Port B D[23:16] */
137#define CONFIG_SYS_PBDDR 0x0000000
138#define CONFIG_SYS_PBDAT 0x0000000
Heiko Schocher9acb6262006-04-20 08:42:42 +0200139
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200140#define CONFIG_SYS_PCCNT 0x0000000 /* Port C D[15:08] */
141#define CONFIG_SYS_PCDDR 0x0000000
142#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocher9acb6262006-04-20 08:42:42 +0200143
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200144#define CONFIG_SYS_PDCNT 0x0000000 /* Port D D[07:00] */
145#define CONFIG_SYS_PCDDR 0x0000000
146#define CONFIG_SYS_PCDAT 0x0000000
Heiko Schocher9acb6262006-04-20 08:42:42 +0200147
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000148#define CONFIG_SYS_PASPAR 0x0F0F
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200149#define CONFIG_SYS_PEHLPAR 0xC0
Jens Scharsig35cf3b52009-07-24 10:31:48 +0200150#define CONFIG_SYS_PUAPAR 0x0F
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200151#define CONFIG_SYS_DDRUA 0x05
152#define CONFIG_SYS_PJPAR 0xFF
Heiko Schocher9acb6262006-04-20 08:42:42 +0200153
154/*-----------------------------------------------------------------------
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000155 * I2C
156 */
157
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000158#ifdef CONFIG_CMD_DATE
159#define CONFIG_RTC_DS1338
160#define CONFIG_I2C_RTC_ADDR 0x68
161#endif
162
163/*-----------------------------------------------------------------------
Jens Scharsig35cf3b52009-07-24 10:31:48 +0200164 * VIDEO configuration
Heiko Schocher9acb6262006-04-20 08:42:42 +0200165 */
166
Jens Scharsig35cf3b52009-07-24 10:31:48 +0200167#define CONFIG_SYS_VCXK_DEFAULT_LINEALIGN 2
168#define CONFIG_SYS_VCXK_DOUBLEBUFFERED 1
Jens Scharsig (BuS Elektronik)d858c332012-10-30 00:46:05 +0000169#define CONFIG_SYS_VCXK_BASE CONFIG_SYS_CS2_BASE
Jens Scharsig35cf3b52009-07-24 10:31:48 +0200170
171#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT MCFGPTB_GPTPORT
172#define CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR MCFGPTB_GPTDDR
173#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PIN 0x0001
174
175#define CONFIG_SYS_VCXK_ENABLE_PORT MCFGPTB_GPTPORT
176#define CONFIG_SYS_VCXK_ENABLE_DDR MCFGPTB_GPTDDR
177#define CONFIG_SYS_VCXK_ENABLE_PIN 0x0002
178
179#define CONFIG_SYS_VCXK_REQUEST_PORT MCFGPTB_GPTPORT
180#define CONFIG_SYS_VCXK_REQUEST_DDR MCFGPTB_GPTDDR
181#define CONFIG_SYS_VCXK_REQUEST_PIN 0x0004
182
183#define CONFIG_SYS_VCXK_INVERT_PORT MCFGPIO_PORTE
184#define CONFIG_SYS_VCXK_INVERT_DDR MCFGPIO_DDRE
185#define CONFIG_SYS_VCXK_INVERT_PIN MCFGPIO_PORT2
186
Heiko Schocher9acb6262006-04-20 08:42:42 +0200187#endif /* _CONFIG_M5282EVB_H */
188/*---------------------------------------------------------------------*/