blob: 15fef24db090440561dd195caa7d7ad043857ee1 [file] [log] [blame]
Holger Brunck752ba312011-03-14 16:01:04 +01001/*
2 * (C) Copyright 2011
3 * Heiko Schocher, DENX Software Engineering, hs@denx.de.
4 *
Wolfgang Denkbd8ec7e2013-10-07 13:07:26 +02005 * SPDX-License-Identifier: GPL-2.0+
Holger Brunck752ba312011-03-14 16:01:04 +01006 */
7
8#ifndef __CONFIG_KEYMILE_POWERPC_H
9#define __CONFIG_KEYMILE_POWERPC_H
10
Simon Glass4fb732d2013-03-05 14:39:46 +000011/* Do boardspecific init for all boards */
12#define CONFIG_BOARD_EARLY_INIT_R
13#define CONFIG_LAST_STAGE_INIT
14
Holger Brunck752ba312011-03-14 16:01:04 +010015#define CONFIG_BOOTCOUNT_LIMIT
16
17#define CONFIG_CMD_DTT
18#define CONFIG_JFFS2_CMDLINE
19
Stefan Biglerc9449302011-07-04 22:24:01 +000020/* EEprom support 24C08, 24C16, 24C64 */
21#define CONFIG_SYS_I2C_MULTI_EEPROMS
22#define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE
23#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 /* 8 Byte write page */
24#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
25
Holger Brunck752ba312011-03-14 16:01:04 +010026#define CONFIG_ENV_SIZE 0x04000 /* Size of Environment */
27#define CONFIG_FLASH_CFI_MTD
28
29#define CONFIG_SYS_MEMTEST_START 0x00100000 /* memtest works on */
30
31#define CONFIG_SYS_MEMTEST_END 0x00f00000 /* 1 ... 15 MB in DRAM */
32
33#define CONFIG_SYS_LOAD_ADDR 0x100000 /* default load address */
34
Valentin Longchamp1192b522013-10-18 11:47:15 +020035/* Reserve 4 MB for malloc */
36#define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024)
37
Holger Brunck752ba312011-03-14 16:01:04 +010038/******************************************************************************
39 * (PRAM usage)
40 * ... -------------------------------------------------------
41 * ... |ROOTFSSIZE | PNVRAM |PHRAM |RESERVED_PRAM | END_OF_RAM
42 * ... |<------------------- pram -------------------------->|
43 * ... -------------------------------------------------------
44 * @END_OF_RAM:
45 * @CONFIG_KM_RESERVED_PRAM: reserved pram for special purpose
46 * @CONFIG_KM_PHRAM: address for /var
47 * @CONFIG_KM_PNVRAM: address for PNVRAM (for the application)
48 * @CONFIG_KM_ROOTFSSIZE: address for rootfilesystem in RAM
49 */
50
51/* size of rootfs in RAM */
52#define CONFIG_KM_ROOTFSSIZE 0x0
53/* pseudo-non volatile RAM [hex] */
54#define CONFIG_KM_PNVRAM 0x80000
55/* physical RAM MTD size [hex] */
56#define CONFIG_KM_PHRAM 0x100000
57/* resereved pram area at the end of memroy [hex] */
58#define CONFIG_KM_RESERVED_PRAM 0x0
59/* enable protected RAM */
60#define CONFIG_PRAM 0
61
62#define CONFIG_KM_CRAMFS_ADDR 0x800000
63#define CONFIG_KM_KERNEL_ADDR 0x400000 /* 3968Kbytes */
64#define CONFIG_KM_FDT_ADDR 0x7E0000 /* 128Kbytes */
65
Holger Brunck2ff59ee2011-07-04 21:27:16 +000066/* architecture specific default bootargs */
67#define CONFIG_KM_DEF_BOOT_ARGS_CPU ""
68
Holger Brunck752ba312011-03-14 16:01:04 +010069#define CONFIG_KM_DEF_ENV_CPU \
Holger Brunck2ff59ee2011-07-04 21:27:16 +000070 "boot=bootm ${load_addr_r} - ${fdt_addr_r}\0" \
Holger Brunck752ba312011-03-14 16:01:04 +010071 "cramfsloadfdt=" \
72 "cramfsload ${fdt_addr_r} " \
Holger Brunck2ff59ee2011-07-04 21:27:16 +000073 "fdt_0x${IVM_BoardId}_0x${IVM_HWKey}.dtb\0" \
Marek Vasutfd5ba892012-09-23 17:41:23 +020074 "fdt_addr_r=" __stringify(CONFIG_KM_FDT_ADDR) "\0" \
75 "u-boot="__stringify(CONFIG_HOSTNAME) "/u-boot.bin\0" \
Holger Brunck752ba312011-03-14 16:01:04 +010076 "update=" \
Marek Vasutfd5ba892012-09-23 17:41:23 +020077 "protect off " __stringify(BOOTFLASH_START) " +${filesize} && "\
78 "erase " __stringify(BOOTFLASH_START) " +${filesize} && "\
79 "cp.b ${load_addr_r} " __stringify(BOOTFLASH_START) \
Holger Brunck752ba312011-03-14 16:01:04 +010080 " ${filesize} && " \
Marek Vasutfd5ba892012-09-23 17:41:23 +020081 "protect on " __stringify(BOOTFLASH_START) " +${filesize}\0"\
Holger Brunck752ba312011-03-14 16:01:04 +010082 ""
83
Holger Brunck752ba312011-03-14 16:01:04 +010084#endif /* __CONFIG_KEYMILE_POWERPC_H */