1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * (C) Copyright 2011 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_KEYMILE_POWERPC_H 9*4882a593Smuzhiyun #define __CONFIG_KEYMILE_POWERPC_H 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun /* Do boardspecific init for all boards */ 12*4882a593Smuzhiyun #define CONFIG_BOARD_EARLY_INIT_R 13*4882a593Smuzhiyun #define CONFIG_LAST_STAGE_INIT 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define CONFIG_BOOTCOUNT_LIMIT 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun #define CONFIG_JFFS2_CMDLINE 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun /* standard km ethernet_present for piggy */ 20*4882a593Smuzhiyun #define CONFIG_KM_COMMON_ETH_INIT 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* EEprom support 24C08, 24C16, 24C64 */ 23*4882a593Smuzhiyun #define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE 24*4882a593Smuzhiyun #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 /* 8 Byte write page */ 25*4882a593Smuzhiyun #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #define CONFIG_ENV_SIZE 0x04000 /* Size of Environment */ 28*4882a593Smuzhiyun #define CONFIG_FLASH_CFI_MTD 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_START 0x00100000 /* memtest works on */ 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_END 0x00f00000 /* 1 ... 15 MB in DRAM */ 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR 0x100000 /* default load address */ 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun /* Reserve 4 MB for malloc */ 37*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024) 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun /****************************************************************************** 40*4882a593Smuzhiyun * (PRAM usage) 41*4882a593Smuzhiyun * ... ------------------------------------------------------- 42*4882a593Smuzhiyun * ... |ROOTFSSIZE | PNVRAM |PHRAM |RESERVED_PRAM | END_OF_RAM 43*4882a593Smuzhiyun * ... |<------------------- pram -------------------------->| 44*4882a593Smuzhiyun * ... ------------------------------------------------------- 45*4882a593Smuzhiyun * @END_OF_RAM: 46*4882a593Smuzhiyun * @CONFIG_KM_RESERVED_PRAM: reserved pram for special purpose 47*4882a593Smuzhiyun * @CONFIG_KM_PHRAM: address for /var 48*4882a593Smuzhiyun * @CONFIG_KM_PNVRAM: address for PNVRAM (for the application) 49*4882a593Smuzhiyun * @CONFIG_KM_ROOTFSSIZE: address for rootfilesystem in RAM 50*4882a593Smuzhiyun */ 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun /* size of rootfs in RAM */ 53*4882a593Smuzhiyun #define CONFIG_KM_ROOTFSSIZE 0x0 54*4882a593Smuzhiyun /* pseudo-non volatile RAM [hex] */ 55*4882a593Smuzhiyun #define CONFIG_KM_PNVRAM 0x80000 56*4882a593Smuzhiyun /* physical RAM MTD size [hex] */ 57*4882a593Smuzhiyun #define CONFIG_KM_PHRAM 0x100000 58*4882a593Smuzhiyun /* resereved pram area at the end of memroy [hex] */ 59*4882a593Smuzhiyun #define CONFIG_KM_RESERVED_PRAM 0x0 60*4882a593Smuzhiyun /* set the default PRAM value to at least PNVRAM + PHRAM when pram env variable 61*4882a593Smuzhiyun * is not valid yet, which is the case for when u-boot copies itself to RAM */ 62*4882a593Smuzhiyun #define CONFIG_PRAM ((CONFIG_KM_PNVRAM + CONFIG_KM_PHRAM)>>10) 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun #define CONFIG_KM_CRAMFS_ADDR 0xC00000 65*4882a593Smuzhiyun #define CONFIG_KM_KERNEL_ADDR 0x400000 /* 7680Kbytes */ 66*4882a593Smuzhiyun #define CONFIG_KM_FDT_ADDR 0xB80000 /* 512Kbytes */ 67*4882a593Smuzhiyun 68*4882a593Smuzhiyun /* architecture specific default bootargs */ 69*4882a593Smuzhiyun #define CONFIG_KM_DEF_BOOT_ARGS_CPU "" 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #define CONFIG_KM_DEF_ENV_CPU \ 72*4882a593Smuzhiyun "u-boot="__stringify(CONFIG_HOSTNAME) "/u-boot.bin\0" \ 73*4882a593Smuzhiyun "update=" \ 74*4882a593Smuzhiyun "protect off " __stringify(BOOTFLASH_START) " +${filesize} && "\ 75*4882a593Smuzhiyun "erase " __stringify(BOOTFLASH_START) " +${filesize} && "\ 76*4882a593Smuzhiyun "cp.b ${load_addr_r} " __stringify(BOOTFLASH_START) \ 77*4882a593Smuzhiyun " ${filesize} && " \ 78*4882a593Smuzhiyun "protect on " __stringify(BOOTFLASH_START) " +${filesize}\0"\ 79*4882a593Smuzhiyun "set_fdthigh=true\0" \ 80*4882a593Smuzhiyun "checkfdt=true\0" \ 81*4882a593Smuzhiyun "" 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun #endif /* __CONFIG_KEYMILE_POWERPC_H */ 84