xref: /OK3568_Linux_fs/u-boot/include/configs/km/km83xx-common.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * (C) Copyright 2010
3*4882a593Smuzhiyun  * Heiko Schocher, DENX Software Engineering, hs@denx.de.
4*4882a593Smuzhiyun  *
5*4882a593Smuzhiyun  * SPDX-License-Identifier:	GPL-2.0+
6*4882a593Smuzhiyun  */
7*4882a593Smuzhiyun 
8*4882a593Smuzhiyun #ifndef __CONFIG_KM83XX_H
9*4882a593Smuzhiyun #define __CONFIG_KM83XX_H
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun /* include common defines/options for all Keymile boards */
12*4882a593Smuzhiyun #include "keymile-common.h"
13*4882a593Smuzhiyun #include "km-powerpc.h"
14*4882a593Smuzhiyun 
15*4882a593Smuzhiyun #ifndef MTDIDS_DEFAULT
16*4882a593Smuzhiyun # define MTDIDS_DEFAULT	"nor0=boot"
17*4882a593Smuzhiyun #endif /* MTDIDS_DEFAULT */
18*4882a593Smuzhiyun 
19*4882a593Smuzhiyun #ifndef MTDPARTS_DEFAULT
20*4882a593Smuzhiyun # define MTDPARTS_DEFAULT	"mtdparts="			\
21*4882a593Smuzhiyun 	"boot:"							\
22*4882a593Smuzhiyun 		"768k(u-boot),"					\
23*4882a593Smuzhiyun 		"128k(env),"					\
24*4882a593Smuzhiyun 		"128k(envred),"					\
25*4882a593Smuzhiyun 		"-(" CONFIG_KM_UBI_PARTITION_NAME_BOOT ");"
26*4882a593Smuzhiyun #endif /* MTDPARTS_DEFAULT */
27*4882a593Smuzhiyun 
28*4882a593Smuzhiyun #define CONFIG_MISC_INIT_R
29*4882a593Smuzhiyun /*
30*4882a593Smuzhiyun  * System Clock Setup
31*4882a593Smuzhiyun  */
32*4882a593Smuzhiyun #define CONFIG_83XX_CLKIN		66000000
33*4882a593Smuzhiyun #define CONFIG_SYS_CLK_FREQ		66000000
34*4882a593Smuzhiyun #define CONFIG_83XX_PCICLK		66000000
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun /*
37*4882a593Smuzhiyun  * IMMR new address
38*4882a593Smuzhiyun  */
39*4882a593Smuzhiyun #define CONFIG_SYS_IMMR		0xE0000000
40*4882a593Smuzhiyun 
41*4882a593Smuzhiyun /*
42*4882a593Smuzhiyun  * Bus Arbitration Configuration Register (ACR)
43*4882a593Smuzhiyun  */
44*4882a593Smuzhiyun #define CONFIG_SYS_ACR_PIPE_DEP 3       /* pipeline depth 4 transactions */
45*4882a593Smuzhiyun #define CONFIG_SYS_ACR_RPTCNT   3       /* 4 consecutive transactions */
46*4882a593Smuzhiyun #define CONFIG_SYS_ACR_APARK    0       /* park bus to master (below) */
47*4882a593Smuzhiyun #define CONFIG_SYS_ACR_PARKM    3       /* parking master = QuiccEngine */
48*4882a593Smuzhiyun 
49*4882a593Smuzhiyun /*
50*4882a593Smuzhiyun  * DDR Setup
51*4882a593Smuzhiyun  */
52*4882a593Smuzhiyun #define CONFIG_SYS_DDR_BASE		0x00000000 /* DDR is system memory */
53*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_BASE
54*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE2	(CONFIG_SYS_SDRAM_BASE + 0x10000000) /* +256M */
55*4882a593Smuzhiyun 
56*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SDRAM_BASE	CONFIG_SYS_DDR_BASE
57*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL	(DDR_SDRAM_CLK_CNTL_SS_EN | \
58*4882a593Smuzhiyun 					DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05)
59*4882a593Smuzhiyun 
60*4882a593Smuzhiyun #define CFG_83XX_DDR_USES_CS0
61*4882a593Smuzhiyun 
62*4882a593Smuzhiyun /*
63*4882a593Smuzhiyun  * Manually set up DDR parameters
64*4882a593Smuzhiyun  */
65*4882a593Smuzhiyun #define CONFIG_DDR_II
66*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SIZE		2048 /* MB */
67*4882a593Smuzhiyun 
68*4882a593Smuzhiyun /*
69*4882a593Smuzhiyun  * The reserved memory
70*4882a593Smuzhiyun  */
71*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE /* start of monitor */
72*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_BASE		0xF0000000
73*4882a593Smuzhiyun 
74*4882a593Smuzhiyun #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE)
75*4882a593Smuzhiyun #define CONFIG_SYS_RAMBOOT
76*4882a593Smuzhiyun #endif
77*4882a593Smuzhiyun 
78*4882a593Smuzhiyun /* Reserve 768 kB for Mon */
79*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_LEN		(768 * 1024)
80*4882a593Smuzhiyun 
81*4882a593Smuzhiyun /*
82*4882a593Smuzhiyun  * Initial RAM Base Address Setup
83*4882a593Smuzhiyun  */
84*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_LOCK
85*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_ADDR	0xE6000000 /* Initial RAM address */
86*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_SIZE	0x1000 /* End of used area in RAM */
87*4882a593Smuzhiyun #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
88*4882a593Smuzhiyun 						GENERATED_GBL_DATA_SIZE)
89*4882a593Smuzhiyun 
90*4882a593Smuzhiyun /*
91*4882a593Smuzhiyun  * Init Local Bus Memory Controller:
92*4882a593Smuzhiyun  *
93*4882a593Smuzhiyun  * Bank Bus     Machine PortSz  Size  Device
94*4882a593Smuzhiyun  * ---- ---     ------- ------  -----  ------
95*4882a593Smuzhiyun  *  0   Local   GPCM    16 bit  256MB FLASH
96*4882a593Smuzhiyun  *  1   Local   GPCM     8 bit  128MB GPIO/PIGGY
97*4882a593Smuzhiyun  *
98*4882a593Smuzhiyun  */
99*4882a593Smuzhiyun /*
100*4882a593Smuzhiyun  * FLASH on the Local Bus
101*4882a593Smuzhiyun  */
102*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_CFI		/* use the Common Flash Interface */
103*4882a593Smuzhiyun #define CONFIG_FLASH_CFI_DRIVER		/* use the CFI driver */
104*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_SIZE		256 /* max FLASH size is 256M */
105*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_PROTECTION
106*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
107*4882a593Smuzhiyun 
108*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR0_PRELIM	CONFIG_SYS_FLASH_BASE
109*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR0_PRELIM	(LBLAWAR_EN | LBLAWAR_256MB)
110*4882a593Smuzhiyun 
111*4882a593Smuzhiyun #define CONFIG_SYS_BR0_PRELIM	(CONFIG_SYS_FLASH_BASE | \
112*4882a593Smuzhiyun 				BR_PS_16 | /* 16 bit port size */ \
113*4882a593Smuzhiyun 				BR_MS_GPCM | /* MSEL = GPCM */ \
114*4882a593Smuzhiyun 				BR_V)
115*4882a593Smuzhiyun 
116*4882a593Smuzhiyun #define CONFIG_SYS_OR0_PRELIM	(MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) | \
117*4882a593Smuzhiyun 				OR_GPCM_CSNT | OR_GPCM_ACS_DIV2 | \
118*4882a593Smuzhiyun 				OR_GPCM_SCY_5 | \
119*4882a593Smuzhiyun 				OR_GPCM_TRLX_SET | OR_GPCM_EAD)
120*4882a593Smuzhiyun 
121*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_BANKS	1   /* max num of flash banks	*/
122*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_SECT	512 /* max num of sects on one chip */
123*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
124*4882a593Smuzhiyun 
125*4882a593Smuzhiyun /*
126*4882a593Smuzhiyun  * PRIO1/PIGGY on the local bus CS1
127*4882a593Smuzhiyun  */
128*4882a593Smuzhiyun /* Window base at flash base */
129*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR1_PRELIM	CONFIG_SYS_KMBEC_FPGA_BASE
130*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR1_PRELIM	(LBLAWAR_EN | LBLAWAR_128MB)
131*4882a593Smuzhiyun 
132*4882a593Smuzhiyun #define CONFIG_SYS_BR1_PRELIM	(CONFIG_SYS_KMBEC_FPGA_BASE | \
133*4882a593Smuzhiyun 				BR_PS_8 | /* 8 bit port size */ \
134*4882a593Smuzhiyun 				BR_MS_GPCM | /* MSEL = GPCM */ \
135*4882a593Smuzhiyun 				BR_V)
136*4882a593Smuzhiyun #define CONFIG_SYS_OR1_PRELIM	(MEG_TO_AM(CONFIG_SYS_KMBEC_FPGA_SIZE) | \
137*4882a593Smuzhiyun 				OR_GPCM_CSNT | OR_GPCM_ACS_DIV2 | \
138*4882a593Smuzhiyun 				OR_GPCM_SCY_2 | \
139*4882a593Smuzhiyun 				OR_GPCM_TRLX_SET | OR_GPCM_EAD)
140*4882a593Smuzhiyun 
141*4882a593Smuzhiyun /*
142*4882a593Smuzhiyun  * Serial Port
143*4882a593Smuzhiyun  */
144*4882a593Smuzhiyun #define CONFIG_CONS_INDEX	1
145*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_SERIAL
146*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_REG_SIZE	1
147*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK		get_bus_freq(0)
148*4882a593Smuzhiyun 
149*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_IMMR+0x4500)
150*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_IMMR+0x4600)
151*4882a593Smuzhiyun 
152*4882a593Smuzhiyun /*
153*4882a593Smuzhiyun  * QE UEC ethernet configuration
154*4882a593Smuzhiyun  */
155*4882a593Smuzhiyun #define CONFIG_UEC_ETH
156*4882a593Smuzhiyun #define CONFIG_ETHPRIME		"UEC0"
157*4882a593Smuzhiyun 
158*4882a593Smuzhiyun #if !defined(CONFIG_MPC8309)
159*4882a593Smuzhiyun #define CONFIG_UEC_ETH1		/* GETH1 */
160*4882a593Smuzhiyun #define UEC_VERBOSE_DEBUG	1
161*4882a593Smuzhiyun #endif
162*4882a593Smuzhiyun 
163*4882a593Smuzhiyun #ifdef CONFIG_UEC_ETH1
164*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_UCC_NUM	3	/* UCC4 */
165*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_RX_CLK		QE_CLK_NONE /* not used in RMII Mode */
166*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_TX_CLK		QE_CLK17
167*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_ETH_TYPE	FAST_ETH
168*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_PHY_ADDR	0
169*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_INTERFACE_TYPE	PHY_INTERFACE_MODE_RMII
170*4882a593Smuzhiyun #define CONFIG_SYS_UEC1_INTERFACE_SPEED	100
171*4882a593Smuzhiyun #endif
172*4882a593Smuzhiyun 
173*4882a593Smuzhiyun /*
174*4882a593Smuzhiyun  * Environment
175*4882a593Smuzhiyun  */
176*4882a593Smuzhiyun 
177*4882a593Smuzhiyun #ifndef CONFIG_SYS_RAMBOOT
178*4882a593Smuzhiyun #ifndef CONFIG_ENV_ADDR
179*4882a593Smuzhiyun #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
180*4882a593Smuzhiyun 					CONFIG_SYS_MONITOR_LEN)
181*4882a593Smuzhiyun #endif
182*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env */
183*4882a593Smuzhiyun #ifndef CONFIG_ENV_OFFSET
184*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET	(CONFIG_SYS_MONITOR_LEN)
185*4882a593Smuzhiyun #endif
186*4882a593Smuzhiyun 
187*4882a593Smuzhiyun /* Address and size of Redundant Environment Sector	*/
188*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + \
189*4882a593Smuzhiyun 						CONFIG_ENV_SECT_SIZE)
190*4882a593Smuzhiyun #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
191*4882a593Smuzhiyun 
192*4882a593Smuzhiyun #else /* CFG_SYS_RAMBOOT */
193*4882a593Smuzhiyun #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
194*4882a593Smuzhiyun #define CONFIG_ENV_SIZE		0x2000
195*4882a593Smuzhiyun #endif /* CFG_SYS_RAMBOOT */
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun /* I2C */
198*4882a593Smuzhiyun #define CONFIG_SYS_I2C
199*4882a593Smuzhiyun #define CONFIG_SYS_NUM_I2C_BUSES	4
200*4882a593Smuzhiyun #define CONFIG_SYS_I2C_MAX_HOPS		1
201*4882a593Smuzhiyun #define CONFIG_SYS_I2C_FSL
202*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_SPEED	200000
203*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
204*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_OFFSET	0x3000
205*4882a593Smuzhiyun #define CONFIG_SYS_I2C_OFFSET		0x3000
206*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_SPEED	200000
207*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F
208*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_OFFSET	0x3100
209*4882a593Smuzhiyun #define CONFIG_SYS_I2C_BUSES	{{0, {I2C_NULL_HOP} }, \
210*4882a593Smuzhiyun 		{0, {{I2C_MUX_PCA9547, 0x70, 2} } }, \
211*4882a593Smuzhiyun 		{0, {{I2C_MUX_PCA9547, 0x70, 1} } }, \
212*4882a593Smuzhiyun 		{1, {I2C_NULL_HOP} } }
213*4882a593Smuzhiyun 
214*4882a593Smuzhiyun #define CONFIG_KM_IVM_BUS		2	/* I2C2 (Mux-Port 1)*/
215*4882a593Smuzhiyun 
216*4882a593Smuzhiyun #if defined(CONFIG_CMD_NAND)
217*4882a593Smuzhiyun #define CONFIG_NAND_KMETER1
218*4882a593Smuzhiyun #define CONFIG_SYS_MAX_NAND_DEVICE	1
219*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE		CONFIG_SYS_KMBEC_FPGA_BASE
220*4882a593Smuzhiyun #endif
221*4882a593Smuzhiyun 
222*4882a593Smuzhiyun /*
223*4882a593Smuzhiyun  * For booting Linux, the board info and command line data
224*4882a593Smuzhiyun  * have to be in the first 8 MB of memory, since this is
225*4882a593Smuzhiyun  * the maximum mapped by the Linux kernel during initialization.
226*4882a593Smuzhiyun  */
227*4882a593Smuzhiyun #define CONFIG_SYS_BOOTMAPSZ		(8 << 20)
228*4882a593Smuzhiyun 
229*4882a593Smuzhiyun /*
230*4882a593Smuzhiyun  * Core HID Setup
231*4882a593Smuzhiyun  */
232*4882a593Smuzhiyun #define CONFIG_SYS_HID0_INIT		0x000000000
233*4882a593Smuzhiyun #define CONFIG_SYS_HID0_FINAL		(HID0_ENABLE_MACHINE_CHECK | \
234*4882a593Smuzhiyun 					 HID0_ENABLE_INSTRUCTION_CACHE)
235*4882a593Smuzhiyun #define CONFIG_SYS_HID2			HID2_HBE
236*4882a593Smuzhiyun 
237*4882a593Smuzhiyun /*
238*4882a593Smuzhiyun  * MMU Setup
239*4882a593Smuzhiyun  */
240*4882a593Smuzhiyun 
241*4882a593Smuzhiyun #define CONFIG_HIGH_BATS	1	/* High BATs supported */
242*4882a593Smuzhiyun 
243*4882a593Smuzhiyun /* DDR: cache cacheable */
244*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0L	(CONFIG_SYS_SDRAM_BASE | BATL_PP_RW | \
245*4882a593Smuzhiyun 				BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
246*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0U	(CONFIG_SYS_SDRAM_BASE | BATU_BL_256M | \
247*4882a593Smuzhiyun 					BATU_VS | BATU_VP)
248*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0L	CONFIG_SYS_IBAT0L
249*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0U	CONFIG_SYS_IBAT0U
250*4882a593Smuzhiyun 
251*4882a593Smuzhiyun /* IMMRBAR & PCI IO: cache-inhibit and guarded */
252*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1L	(CONFIG_SYS_IMMR | BATL_PP_RW | \
253*4882a593Smuzhiyun 				BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
254*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1U	(CONFIG_SYS_IMMR | BATU_BL_4M | BATU_VS \
255*4882a593Smuzhiyun 					| BATU_VP)
256*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1L	CONFIG_SYS_IBAT1L
257*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1U	CONFIG_SYS_IBAT1U
258*4882a593Smuzhiyun 
259*4882a593Smuzhiyun /* PRIO1, PIGGY:  icache cacheable, but dcache-inhibit and guarded */
260*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2L	(CONFIG_SYS_KMBEC_FPGA_BASE | BATL_PP_RW | \
261*4882a593Smuzhiyun 				BATL_MEMCOHERENCE)
262*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2U	(CONFIG_SYS_KMBEC_FPGA_BASE | BATU_BL_128M | \
263*4882a593Smuzhiyun 				BATU_VS | BATU_VP)
264*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2L	(CONFIG_SYS_KMBEC_FPGA_BASE | BATL_PP_RW | \
265*4882a593Smuzhiyun 				 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
266*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2U	CONFIG_SYS_IBAT2U
267*4882a593Smuzhiyun 
268*4882a593Smuzhiyun /* FLASH: icache cacheable, but dcache-inhibit and guarded */
269*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3L	(CONFIG_SYS_FLASH_BASE | BATL_PP_RW | \
270*4882a593Smuzhiyun 					BATL_MEMCOHERENCE)
271*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3U	(CONFIG_SYS_FLASH_BASE | BATU_BL_256M | \
272*4882a593Smuzhiyun 					BATU_VS | BATU_VP)
273*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3L	(CONFIG_SYS_FLASH_BASE | BATL_PP_RW | \
274*4882a593Smuzhiyun 				 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
275*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3U	CONFIG_SYS_IBAT3U
276*4882a593Smuzhiyun 
277*4882a593Smuzhiyun /* Stack in dcache: cacheable, no memory coherence */
278*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4L	(CONFIG_SYS_INIT_RAM_ADDR | BATL_PP_RW)
279*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4U	(CONFIG_SYS_INIT_RAM_ADDR | BATU_BL_128K | \
280*4882a593Smuzhiyun 					BATU_VS | BATU_VP)
281*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4L	CONFIG_SYS_IBAT4L
282*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4U	CONFIG_SYS_IBAT4U
283*4882a593Smuzhiyun 
284*4882a593Smuzhiyun /*
285*4882a593Smuzhiyun  * Internal Definitions
286*4882a593Smuzhiyun  */
287*4882a593Smuzhiyun #define BOOTFLASH_START	0xF0000000
288*4882a593Smuzhiyun 
289*4882a593Smuzhiyun #define CONFIG_KM_CONSOLE_TTY	"ttyS0"
290*4882a593Smuzhiyun 
291*4882a593Smuzhiyun /*
292*4882a593Smuzhiyun  * Environment Configuration
293*4882a593Smuzhiyun  */
294*4882a593Smuzhiyun #define CONFIG_ENV_OVERWRITE
295*4882a593Smuzhiyun #ifndef CONFIG_KM_DEF_ENV		/* if not set by keymile-common.h */
296*4882a593Smuzhiyun #define CONFIG_KM_DEF_ENV "km-common=empty\0"
297*4882a593Smuzhiyun #endif
298*4882a593Smuzhiyun 
299*4882a593Smuzhiyun #ifndef CONFIG_KM_DEF_ARCH
300*4882a593Smuzhiyun #define CONFIG_KM_DEF_ARCH	"arch=ppc_82xx\0"
301*4882a593Smuzhiyun #endif
302*4882a593Smuzhiyun 
303*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \
304*4882a593Smuzhiyun 	CONFIG_KM_DEF_ENV						\
305*4882a593Smuzhiyun 	CONFIG_KM_DEF_ARCH						\
306*4882a593Smuzhiyun 	"newenv="							\
307*4882a593Smuzhiyun 		"prot off "__stringify(CONFIG_ENV_ADDR)" +0x40000 && "	\
308*4882a593Smuzhiyun 		"era "__stringify(CONFIG_ENV_ADDR)" +0x40000\0"		\
309*4882a593Smuzhiyun 	"unlock=yes\0"							\
310*4882a593Smuzhiyun 	""
311*4882a593Smuzhiyun 
312*4882a593Smuzhiyun #if defined(CONFIG_UEC_ETH)
313*4882a593Smuzhiyun #define CONFIG_HAS_ETH0
314*4882a593Smuzhiyun #endif
315*4882a593Smuzhiyun 
316*4882a593Smuzhiyun #endif /* __CONFIG_KM83XX_H */
317