1*d754254fSJorge Ramirez-Ortiz /* 2*d754254fSJorge Ramirez-Ortiz * (C) Copyright 2017 Linaro 3*d754254fSJorge Ramirez-Ortiz * 4*d754254fSJorge Ramirez-Ortiz * Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> 5*d754254fSJorge Ramirez-Ortiz * 6*d754254fSJorge Ramirez-Ortiz * Configuration for Poplar 96boards CE. Parts were derived from other ARM 7*d754254fSJorge Ramirez-Ortiz * configurations. 8*d754254fSJorge Ramirez-Ortiz * 9*d754254fSJorge Ramirez-Ortiz * SPDX-License-Identifier: GPL-2.0+ 10*d754254fSJorge Ramirez-Ortiz */ 11*d754254fSJorge Ramirez-Ortiz 12*d754254fSJorge Ramirez-Ortiz #ifndef _POPLAR_H_ 13*d754254fSJorge Ramirez-Ortiz #define _POPLAR_H_ 14*d754254fSJorge Ramirez-Ortiz 15*d754254fSJorge Ramirez-Ortiz #include <linux/sizes.h> 16*d754254fSJorge Ramirez-Ortiz 17*d754254fSJorge Ramirez-Ortiz /* DRAM banks */ 18*d754254fSJorge Ramirez-Ortiz #define CONFIG_NR_DRAM_BANKS 2 19*d754254fSJorge Ramirez-Ortiz 20*d754254fSJorge Ramirez-Ortiz /* SYS */ 21*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_BOOTM_LEN 0x1400000 22*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_INIT_SP_ADDR 0x200000 23*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_LOAD_ADDR 0x800000 24*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_MALLOC_LEN SZ_32M 25*d754254fSJorge Ramirez-Ortiz 26*d754254fSJorge Ramirez-Ortiz /* ATF bl33.bin load address (must match) */ 27*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_TEXT_BASE 0x37000000 28*d754254fSJorge Ramirez-Ortiz 29*d754254fSJorge Ramirez-Ortiz /* PL010/PL011 */ 30*d754254fSJorge Ramirez-Ortiz #define CONFIG_PL01X_SERIAL 31*d754254fSJorge Ramirez-Ortiz 32*d754254fSJorge Ramirez-Ortiz /* USB configuration */ 33*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 34*d754254fSJorge Ramirez-Ortiz #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 35*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_USB_EVENT_POLL 36*d754254fSJorge Ramirez-Ortiz #define CONFIG_USB_HOST_ETHER 37*d754254fSJorge Ramirez-Ortiz #define CONFIG_USB_ETHER_ASIX 38*d754254fSJorge Ramirez-Ortiz 39*d754254fSJorge Ramirez-Ortiz /* SD/MMC */ 40*d754254fSJorge Ramirez-Ortiz #define CONFIG_BOUNCE_BUFFER 41*d754254fSJorge Ramirez-Ortiz 42*d754254fSJorge Ramirez-Ortiz /***************************************************************************** 43*d754254fSJorge Ramirez-Ortiz * Initial environment variables 44*d754254fSJorge Ramirez-Ortiz *****************************************************************************/ 45*d754254fSJorge Ramirez-Ortiz 46*d754254fSJorge Ramirez-Ortiz #define BOOT_TARGET_DEVICES(func) \ 47*d754254fSJorge Ramirez-Ortiz func(USB, usb, 0) \ 48*d754254fSJorge Ramirez-Ortiz func(MMC, mmc, 0) \ 49*d754254fSJorge Ramirez-Ortiz func(DHCP, dhcp, na) 50*d754254fSJorge Ramirez-Ortiz #ifndef CONFIG_SPL_BUILD 51*d754254fSJorge Ramirez-Ortiz #include <config_distro_defaults.h> 52*d754254fSJorge Ramirez-Ortiz #include <config_distro_bootcmd.h> 53*d754254fSJorge Ramirez-Ortiz #endif 54*d754254fSJorge Ramirez-Ortiz 55*d754254fSJorge Ramirez-Ortiz #define CONFIG_EXTRA_ENV_SETTINGS \ 56*d754254fSJorge Ramirez-Ortiz "loader_mmc_blknum=0x0\0" \ 57*d754254fSJorge Ramirez-Ortiz "loader_mmc_nblks=0x780\0" \ 58*d754254fSJorge Ramirez-Ortiz "env_mmc_blknum=0x780\0" \ 59*d754254fSJorge Ramirez-Ortiz "env_mmc_nblks=0x80\0" \ 60*d754254fSJorge Ramirez-Ortiz "kernel_addr_r=0x30000000\0" \ 61*d754254fSJorge Ramirez-Ortiz "pxefile_addr_r=0x32000000\0" \ 62*d754254fSJorge Ramirez-Ortiz "scriptaddr=0x32000000\0" \ 63*d754254fSJorge Ramirez-Ortiz "fdt_addr_r=0x32200000\0" \ 64*d754254fSJorge Ramirez-Ortiz "fdtfile=hisilicon/hi3798cv200-poplar.dtb\0" \ 65*d754254fSJorge Ramirez-Ortiz "ramdisk_addr_r=0x32400000\0" \ 66*d754254fSJorge Ramirez-Ortiz BOOTENV 67*d754254fSJorge Ramirez-Ortiz 68*d754254fSJorge Ramirez-Ortiz 69*d754254fSJorge Ramirez-Ortiz /* Command line configuration */ 70*d754254fSJorge Ramirez-Ortiz #define CONFIG_ENV_IS_IN_MMC 1 71*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_MMC_ENV_DEV 0 72*d754254fSJorge Ramirez-Ortiz #define CONFIG_ENV_OFFSET (0x780 * 512) /* env_mmc_blknum */ 73*d754254fSJorge Ramirez-Ortiz #define CONFIG_ENV_SIZE 0x10000 /* env_mmc_nblks bytes */ 74*d754254fSJorge Ramirez-Ortiz #define CONFIG_FAT_WRITE 75*d754254fSJorge Ramirez-Ortiz #define CONFIG_ENV_VARS_UBOOT_CONFIG 76*d754254fSJorge Ramirez-Ortiz 77*d754254fSJorge Ramirez-Ortiz /* Monitor Command Prompt */ 78*d754254fSJorge Ramirez-Ortiz #define CONFIG_CMDLINE_EDITING 79*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_LONGHELP 80*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_CBSIZE 512 81*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_MAXARGS 64 82*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ 83*d754254fSJorge Ramirez-Ortiz sizeof(CONFIG_SYS_PROMPT) + 16) 84*d754254fSJorge Ramirez-Ortiz #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 85*d754254fSJorge Ramirez-Ortiz 86*d754254fSJorge Ramirez-Ortiz #endif /* _POPLAR_H_ */ 87