blob: 20aaa83f460bb7d0a9b3b1ee0d4daf0f2284fb65 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Scott Wood865b8ae2007-04-16 14:54:15 -05002/*
Scott Wood3f53f1a2010-08-30 18:04:52 -05003 * Copyright (C) Freescale Semiconductor, Inc. 2006, 2010.
Scott Wood865b8ae2007-04-16 14:54:15 -05004 */
5/*
6 * mpc8313epb board configuration file
7 */
8
9#ifndef __CONFIG_H
10#define __CONFIG_H
11
12/*
13 * High Level Configuration Options
14 */
15#define CONFIG_E300 1
Scott Wood865b8ae2007-04-16 14:54:15 -050016
Scott Woodf60c06e2010-11-24 13:28:40 +000017#ifndef CONFIG_SYS_MONITOR_BASE
18#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */
19#endif
20
Gabor Juhosb4458732013-05-30 07:06:12 +000021#define CONFIG_PCI_INDIRECT_BRIDGE
Becky Brucedfe6e232010-06-17 11:37:18 -050022#define CONFIG_FSL_ELBC 1
Scott Wood865b8ae2007-04-16 14:54:15 -050023
Timur Tabi3e1d49a2008-02-08 13:15:55 -060024/*
25 * On-board devices
York Sun224069c2008-05-15 15:26:27 -050026 *
27 * TSEC1 is VSC switch
28 * TSEC2 is SoC TSEC
Timur Tabi3e1d49a2008-02-08 13:15:55 -060029 */
30#define CONFIG_VSC7385_ENET
York Sun224069c2008-05-15 15:26:27 -050031#define CONFIG_TSEC2
Timur Tabi3e1d49a2008-02-08 13:15:55 -060032
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020033#define CONFIG_SYS_MEMTEST_START 0x00001000
34#define CONFIG_SYS_MEMTEST_END 0x07f00000
Scott Wood865b8ae2007-04-16 14:54:15 -050035
36/* Early revs of this board will lock up hard when attempting
37 * to access the PMC registers, unless a JTAG debugger is
38 * connected, or some resistor modifications are made.
39 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020040#define CONFIG_SYS_8313ERDB_BROKEN_PMC 1
Scott Wood865b8ae2007-04-16 14:54:15 -050041
Scott Wood865b8ae2007-04-16 14:54:15 -050042/*
Timur Tabi3e1d49a2008-02-08 13:15:55 -060043 * Device configurations
44 */
45
46/* Vitesse 7385 */
47
48#ifdef CONFIG_VSC7385_ENET
49
York Sun224069c2008-05-15 15:26:27 -050050#define CONFIG_TSEC1
Timur Tabi3e1d49a2008-02-08 13:15:55 -060051
52/* The flash address and size of the VSC7385 firmware image */
53#define CONFIG_VSC7385_IMAGE 0xFE7FE000
54#define CONFIG_VSC7385_IMAGE_SIZE 8192
55
56#endif
57
58/*
Scott Wood865b8ae2007-04-16 14:54:15 -050059 * DDR Setup
60 */
Mario Sixc9f92772019-01-21 09:18:15 +010061#define CONFIG_SYS_SDRAM_BASE 0x00000000 /* DDR is system memory*/
Scott Wood865b8ae2007-04-16 14:54:15 -050062
63/*
64 * Manually set up DDR parameters, as this board does not
65 * seem to have the SPD connected to I2C.
66 */
Joe Hershbergerb263cae2011-10-11 23:57:10 -050067#define CONFIG_SYS_DDR_SIZE 128 /* MB */
Joe Hershberger5ade3902011-10-11 23:57:31 -050068#define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN \
Joe Hershbergercc03b802011-10-11 23:57:29 -050069 | CSCONFIG_ODT_RD_NEVER \
70 | CSCONFIG_ODT_WR_ONLY_CURRENT \
Joe Hershbergerb263cae2011-10-11 23:57:10 -050071 | CSCONFIG_ROW_BIT_13 \
72 | CSCONFIG_COL_BIT_10)
Poonam Aggrwalff452842008-01-14 09:41:14 +053073 /* 0x80010102 */
Scott Wood865b8ae2007-04-16 14:54:15 -050074
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020075#define CONFIG_SYS_DDR_TIMING_3 0x00000000
Joe Hershbergerb263cae2011-10-11 23:57:10 -050076#define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \
77 | (0 << TIMING_CFG0_WRT_SHIFT) \
78 | (0 << TIMING_CFG0_RRT_SHIFT) \
79 | (0 << TIMING_CFG0_WWT_SHIFT) \
80 | (2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \
81 | (2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \
82 | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \
83 | (2 << TIMING_CFG0_MRS_CYC_SHIFT))
Scott Wood865b8ae2007-04-16 14:54:15 -050084 /* 0x00220802 */
Joe Hershbergerb263cae2011-10-11 23:57:10 -050085#define CONFIG_SYS_DDR_TIMING_1 ((3 << TIMING_CFG1_PRETOACT_SHIFT) \
86 | (8 << TIMING_CFG1_ACTTOPRE_SHIFT) \
87 | (3 << TIMING_CFG1_ACTTORW_SHIFT) \
88 | (5 << TIMING_CFG1_CASLAT_SHIFT) \
89 | (10 << TIMING_CFG1_REFREC_SHIFT) \
90 | (3 << TIMING_CFG1_WRREC_SHIFT) \
91 | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \
92 | (2 << TIMING_CFG1_WRTORD_SHIFT))
Poonam Aggrwalff452842008-01-14 09:41:14 +053093 /* 0x3835a322 */
Joe Hershbergerb263cae2011-10-11 23:57:10 -050094#define CONFIG_SYS_DDR_TIMING_2 ((1 << TIMING_CFG2_ADD_LAT_SHIFT) \
95 | (5 << TIMING_CFG2_CPO_SHIFT) \
96 | (2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT) \
97 | (2 << TIMING_CFG2_RD_TO_PRE_SHIFT) \
98 | (2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT) \
99 | (3 << TIMING_CFG2_CKE_PLS_SHIFT) \
100 | (6 << TIMING_CFG2_FOUR_ACT_SHIFT))
Poonam Aggrwalff452842008-01-14 09:41:14 +0530101 /* 0x129048c6 */ /* P9-45,may need tuning */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500102#define CONFIG_SYS_DDR_INTERVAL ((1296 << SDRAM_INTERVAL_REFINT_SHIFT) \
103 | (1280 << SDRAM_INTERVAL_BSTOPRE_SHIFT))
Poonam Aggrwalff452842008-01-14 09:41:14 +0530104 /* 0x05100500 */
Scott Wood865b8ae2007-04-16 14:54:15 -0500105#if defined(CONFIG_DDR_2T_TIMING)
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500106#define CONFIG_SYS_SDRAM_CFG (SDRAM_CFG_SREN \
Kim Phillips3b9c20f2007-08-16 22:52:48 -0500107 | SDRAM_CFG_SDRAM_TYPE_DDR2 \
Joe Hershbergercc03b802011-10-11 23:57:29 -0500108 | SDRAM_CFG_DBW_32 \
109 | SDRAM_CFG_2T_EN)
110 /* 0x43088000 */
Scott Wood865b8ae2007-04-16 14:54:15 -0500111#else
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500112#define CONFIG_SYS_SDRAM_CFG (SDRAM_CFG_SREN \
Kim Phillips3b9c20f2007-08-16 22:52:48 -0500113 | SDRAM_CFG_SDRAM_TYPE_DDR2 \
Joe Hershbergercc03b802011-10-11 23:57:29 -0500114 | SDRAM_CFG_DBW_32)
Scott Wood865b8ae2007-04-16 14:54:15 -0500115 /* 0x43080000 */
116#endif
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200117#define CONFIG_SYS_SDRAM_CFG2 0x00401000
Scott Wood865b8ae2007-04-16 14:54:15 -0500118/* set burst length to 8 for 32-bit data path */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500119#define CONFIG_SYS_DDR_MODE ((0x4448 << SDRAM_MODE_ESD_SHIFT) \
120 | (0x0632 << SDRAM_MODE_SD_SHIFT))
Poonam Aggrwalff452842008-01-14 09:41:14 +0530121 /* 0x44480632 */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500122#define CONFIG_SYS_DDR_MODE_2 0x8000C000
Scott Wood865b8ae2007-04-16 14:54:15 -0500123
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200124#define CONFIG_SYS_DDR_CLK_CNTL DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05
Scott Wood865b8ae2007-04-16 14:54:15 -0500125 /*0x02000000*/
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500126#define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_EN \
Scott Wood865b8ae2007-04-16 14:54:15 -0500127 | DDRCDR_PZ_NOMZ \
128 | DDRCDR_NZ_NOMZ \
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500129 | DDRCDR_M_ODR)
Scott Wood865b8ae2007-04-16 14:54:15 -0500130
131/*
132 * FLASH on the Local Bus
133 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200134#define CONFIG_SYS_FLASH_BASE 0xFE000000 /* start of FLASH */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500135#define CONFIG_SYS_FLASH_SIZE 8 /* flash size in MB */
Mario Six7299dec2019-01-21 09:17:36 +0100136#define CONFIG_SYS_FLASH_PROTECTION 1 /* Use h/w Flash protection. */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500137#define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */
Scott Wood865b8ae2007-04-16 14:54:15 -0500138
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500139#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */
140#define CONFIG_SYS_MAX_FLASH_SECT 135 /* sectors per device */
Scott Wood865b8ae2007-04-16 14:54:15 -0500141
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200142#define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */
143#define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */
Scott Wood865b8ae2007-04-16 14:54:15 -0500144
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500145#if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) && \
Scott Wood488af0d2012-12-06 13:33:18 +0000146 !defined(CONFIG_SPL_BUILD)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200147#define CONFIG_SYS_RAMBOOT
Scott Wood865b8ae2007-04-16 14:54:15 -0500148#endif
149
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200150#define CONFIG_SYS_INIT_RAM_LOCK 1
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500151#define CONFIG_SYS_INIT_RAM_ADDR 0xFD000000 /* Initial RAM addr */
152#define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in RAM*/
Scott Wood865b8ae2007-04-16 14:54:15 -0500153
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500154#define CONFIG_SYS_GBL_DATA_OFFSET \
155 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200156#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET
Scott Wood865b8ae2007-04-16 14:54:15 -0500157
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200158/* CONFIG_SYS_MONITOR_LEN must be a multiple of CONFIG_ENV_SECT_SIZE */
Kevin Hao349a0152016-07-08 11:25:14 +0800159#define CONFIG_SYS_MONITOR_LEN (512 * 1024) /* Reserve 512 kB for Mon */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500160#define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* Reserved for malloc */
Scott Wood865b8ae2007-04-16 14:54:15 -0500161
Mario Six7299dec2019-01-21 09:17:36 +0100162/* drivers/mtd/nand/nand.c */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200163#define CONFIG_SYS_NAND_BASE 0xE2800000
Scott Woodb71689b2008-06-30 14:13:28 -0500164
Scott Wood3f53f1a2010-08-30 18:04:52 -0500165#define CONFIG_MTD_PARTITION
Scott Wood3f53f1a2010-08-30 18:04:52 -0500166
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200167#define CONFIG_SYS_MAX_NAND_DEVICE 1
Scott Woodb7dac212008-06-26 14:06:52 -0500168#define CONFIG_NAND_FSL_ELBC 1
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200169#define CONFIG_SYS_NAND_BLOCK_SIZE 16384
Joe Hershbergerf05b9332011-10-11 23:57:30 -0500170#define CONFIG_SYS_NAND_WINDOW_SIZE (32 * 1024)
Scott Woodb71689b2008-06-30 14:13:28 -0500171
Mario Six7299dec2019-01-21 09:17:36 +0100172/* Still needed for spl_minimal.c */
173#define CONFIG_SYS_NAND_BR_PRELIM CONFIG_SYS_BR1_PRELIM
174#define CONFIG_SYS_NAND_OR_PRELIM CONFIG_SYS_OR1_PRELIM
Scott Woodb71689b2008-06-30 14:13:28 -0500175
Joe Hershbergerf05b9332011-10-11 23:57:30 -0500176/* local bus write LED / read status buffer (BCSR) mapping */
177#define CONFIG_SYS_BCSR_ADDR 0xFA000000
178#define CONFIG_SYS_BCSR_SIZE (32 * 1024) /* 0x00008000 */
179 /* map at 0xFA000000 on LCS3 */
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600180/* Vitesse 7385 */
181
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600182#ifdef CONFIG_VSC7385_ENET
183
Joe Hershbergerf05b9332011-10-11 23:57:30 -0500184 /* VSC7385 Base address on LCS2 */
185#define CONFIG_SYS_VSC7385_BASE 0xF0000000
186#define CONFIG_SYS_VSC7385_SIZE (128 * 1024) /* 0x00020000 */
187
Mario Sixc1e29d92019-01-21 09:18:01 +0100188
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600189#endif
Scott Wood865b8ae2007-04-16 14:54:15 -0500190
Joe Hershberger37dabcc2011-11-11 15:55:38 -0600191#define CONFIG_MPC83XX_GPIO 1
Joe Hershberger37dabcc2011-11-11 15:55:38 -0600192
Scott Wood865b8ae2007-04-16 14:54:15 -0500193/*
194 * Serial Port
195 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200196#define CONFIG_SYS_NS16550_SERIAL
197#define CONFIG_SYS_NS16550_REG_SIZE 1
Scott Wood865b8ae2007-04-16 14:54:15 -0500198
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200199#define CONFIG_SYS_BAUDRATE_TABLE \
Scott Wood865b8ae2007-04-16 14:54:15 -0500200 {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200}
201
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200202#define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500)
203#define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600)
Scott Wood865b8ae2007-04-16 14:54:15 -0500204
Scott Wood865b8ae2007-04-16 14:54:15 -0500205/* I2C */
Heiko Schocherf2850742012-10-24 13:48:22 +0200206#define CONFIG_SYS_I2C
207#define CONFIG_SYS_I2C_FSL
208#define CONFIG_SYS_FSL_I2C_SPEED 400000
209#define CONFIG_SYS_FSL_I2C_SLAVE 0x7F
210#define CONFIG_SYS_FSL_I2C_OFFSET 0x3000
211#define CONFIG_SYS_FSL_I2C2_SPEED 400000
212#define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F
213#define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100
214#define CONFIG_SYS_I2C_NOPROBES { {0, 0x69} }
Scott Wood865b8ae2007-04-16 14:54:15 -0500215
Scott Wood865b8ae2007-04-16 14:54:15 -0500216/*
217 * General PCI
218 * Addresses are mapped 1-1.
219 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200220#define CONFIG_SYS_PCI1_MEM_BASE 0x80000000
221#define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE
222#define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */
223#define CONFIG_SYS_PCI1_MMIO_BASE 0x90000000
224#define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE
225#define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */
226#define CONFIG_SYS_PCI1_IO_BASE 0x00000000
227#define CONFIG_SYS_PCI1_IO_PHYS 0xE2000000
228#define CONFIG_SYS_PCI1_IO_SIZE 0x00100000 /* 1M */
Scott Wood865b8ae2007-04-16 14:54:15 -0500229
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200230#define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1057 /* Motorola */
Scott Wood865b8ae2007-04-16 14:54:15 -0500231
232/*
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600233 * TSEC
Scott Wood865b8ae2007-04-16 14:54:15 -0500234 */
Scott Wood865b8ae2007-04-16 14:54:15 -0500235
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600236#define CONFIG_GMII /* MII PHY management */
Scott Wood865b8ae2007-04-16 14:54:15 -0500237
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600238#ifdef CONFIG_TSEC1
239#define CONFIG_HAS_ETH0
Kim Phillips177e58f2007-05-16 16:52:19 -0500240#define CONFIG_TSEC1_NAME "TSEC0"
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200241#define CONFIG_SYS_TSEC1_OFFSET 0x24000
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600242#define TSEC1_PHY_ADDR 0x1c
243#define TSEC1_FLAGS TSEC_GIGABIT
244#define TSEC1_PHYIDX 0
245#endif
246
247#ifdef CONFIG_TSEC2
248#define CONFIG_HAS_ETH1
Kim Phillips177e58f2007-05-16 16:52:19 -0500249#define CONFIG_TSEC2_NAME "TSEC1"
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200250#define CONFIG_SYS_TSEC2_OFFSET 0x25000
Timur Tabi3e1d49a2008-02-08 13:15:55 -0600251#define TSEC2_PHY_ADDR 4
252#define TSEC2_FLAGS TSEC_GIGABIT
253#define TSEC2_PHYIDX 0
254#endif
255
Scott Wood865b8ae2007-04-16 14:54:15 -0500256/* Options are: TSEC[0-1] */
257#define CONFIG_ETHPRIME "TSEC1"
258
259/*
260 * Configure on-board RTC
261 */
262#define CONFIG_RTC_DS1337
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200263#define CONFIG_SYS_I2C_RTC_ADDR 0x68
Scott Wood865b8ae2007-04-16 14:54:15 -0500264
265/*
266 * Environment
267 */
Mario Six7299dec2019-01-21 09:17:36 +0100268#if !defined(CONFIG_SYS_RAMBOOT)
Scott Wood865b8ae2007-04-16 14:54:15 -0500269/* Address and size of Redundant Environment Sector */
Scott Wood865b8ae2007-04-16 14:54:15 -0500270#endif
271
272#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200273#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
Scott Wood865b8ae2007-04-16 14:54:15 -0500274
Jon Loeliger3b7116d2007-07-04 22:30:06 -0500275/*
Jon Loeliger5c4ddae2007-07-10 10:12:10 -0500276 * BOOTP options
277 */
278#define CONFIG_BOOTP_BOOTFILESIZE
Jon Loeliger5c4ddae2007-07-10 10:12:10 -0500279
Jon Loeliger5c4ddae2007-07-10 10:12:10 -0500280/*
Jon Loeliger3b7116d2007-07-04 22:30:06 -0500281 * Command line configuration.
282 */
Scott Wood865b8ae2007-04-16 14:54:15 -0500283
Scott Wood865b8ae2007-04-16 14:54:15 -0500284/*
285 * Miscellaneous configurable options
286 */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200287#define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200288#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
Scott Wood865b8ae2007-04-16 14:54:15 -0500289
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500290 /* Boot Argument Buffer Size */
291#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
Scott Wood865b8ae2007-04-16 14:54:15 -0500292
293/*
294 * For booting Linux, the board info and command line data
Ira W. Snyderc5a22d02010-09-10 15:42:32 -0700295 * have to be in the first 256 MB of memory, since this is
Scott Wood865b8ae2007-04-16 14:54:15 -0500296 * the maximum mapped by the Linux kernel during initialization.
297 */
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500298 /* Initial Memory map for Linux*/
299#define CONFIG_SYS_BOOTMAPSZ (256 << 20)
Kevin Hao9c747962016-07-08 11:25:15 +0800300#define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */
Scott Wood865b8ae2007-04-16 14:54:15 -0500301
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200302#define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */
Scott Wood865b8ae2007-04-16 14:54:15 -0500303
Mario Sixd10f3182019-01-21 09:17:53 +0100304#define CONFIG_SYS_NS16550_CLK (get_bus_freq(0))
Scott Wood865b8ae2007-04-16 14:54:15 -0500305
306/* System IO Config */
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200307#define CONFIG_SYS_SICRH (SICRH_TSOBI1 | SICRH_TSOBI2) /* RGMII */
Joe Hershberger37dabcc2011-11-11 15:55:38 -0600308 /* Enable Internal USB Phy and GPIO on LCD Connector */
309#define CONFIG_SYS_SICRL (SICRL_USBDR_10 | SICRL_LBC)
Scott Wood865b8ae2007-04-16 14:54:15 -0500310
Scott Wood865b8ae2007-04-16 14:54:15 -0500311/*
Scott Wood865b8ae2007-04-16 14:54:15 -0500312 * Environment Configuration
313 */
314#define CONFIG_ENV_OVERWRITE
315
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500316#define CONFIG_NETDEV "eth1"
Scott Wood865b8ae2007-04-16 14:54:15 -0500317
Mario Six790d8442018-03-28 14:38:20 +0200318#define CONFIG_HOSTNAME "mpc8313erdb"
Joe Hershberger257ff782011-10-13 13:03:47 +0000319#define CONFIG_ROOTPATH "/nfs/root/path"
Joe Hershbergere4da2482011-10-13 13:03:48 +0000320#define CONFIG_BOOTFILE "uImage"
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500321 /* U-Boot image on TFTP server */
322#define CONFIG_UBOOTPATH "u-boot.bin"
323#define CONFIG_FDTFILE "mpc8313erdb.dtb"
Scott Wood865b8ae2007-04-16 14:54:15 -0500324
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500325 /* default location for tftp and bootm */
326#define CONFIG_LOADADDR 800000
Scott Wood865b8ae2007-04-16 14:54:15 -0500327
Scott Wood865b8ae2007-04-16 14:54:15 -0500328#define CONFIG_EXTRA_ENV_SETTINGS \
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500329 "netdev=" CONFIG_NETDEV "\0" \
Scott Wood865b8ae2007-04-16 14:54:15 -0500330 "ethprime=TSEC1\0" \
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500331 "uboot=" CONFIG_UBOOTPATH "\0" \
Wolfgang Denka1be4762008-05-20 16:00:29 +0200332 "tftpflash=tftpboot $loadaddr $uboot; " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200333 "protect off " __stringify(CONFIG_SYS_TEXT_BASE) \
334 " +$filesize; " \
335 "erase " __stringify(CONFIG_SYS_TEXT_BASE) \
336 " +$filesize; " \
337 "cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \
338 " $filesize; " \
339 "protect on " __stringify(CONFIG_SYS_TEXT_BASE) \
340 " +$filesize; " \
341 "cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \
342 " $filesize\0" \
Kim Phillipsfd3a3fc2009-08-21 16:34:38 -0500343 "fdtaddr=780000\0" \
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500344 "fdtfile=" CONFIG_FDTFILE "\0" \
Scott Wood865b8ae2007-04-16 14:54:15 -0500345 "console=ttyS0\0" \
346 "setbootargs=setenv bootargs " \
347 "root=$rootdev rw console=$console,$baudrate $othbootargs\0" \
Wolfgang Denka1be4762008-05-20 16:00:29 +0200348 "setipargs=setenv bootargs nfsroot=$serverip:$rootpath " \
Joe Hershbergerb263cae2011-10-11 23:57:10 -0500349 "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:"\
350 "$netdev:off " \
Scott Wood865b8ae2007-04-16 14:54:15 -0500351 "root=$rootdev rw console=$console,$baudrate $othbootargs\0"
352
353#define CONFIG_NFSBOOTCOMMAND \
354 "setenv rootdev /dev/nfs;" \
Wolfgang Denka1be4762008-05-20 16:00:29 +0200355 "run setbootargs;" \
356 "run setipargs;" \
Scott Wood865b8ae2007-04-16 14:54:15 -0500357 "tftp $loadaddr $bootfile;" \
358 "tftp $fdtaddr $fdtfile;" \
359 "bootm $loadaddr - $fdtaddr"
360
361#define CONFIG_RAMBOOTCOMMAND \
362 "setenv rootdev /dev/ram;" \
363 "run setbootargs;" \
364 "tftp $ramdiskaddr $ramdiskfile;" \
365 "tftp $loadaddr $bootfile;" \
366 "tftp $fdtaddr $fdtfile;" \
367 "bootm $loadaddr $ramdiskaddr $fdtaddr"
368
Scott Wood865b8ae2007-04-16 14:54:15 -0500369#endif /* __CONFIG_H */