1e39448e8SThomas Abraham /* 2e39448e8SThomas Abraham * Configuration settings for the Espresso7420 board. 3e39448e8SThomas Abraham * Copyright (C) 2016 Samsung Electronics 4e39448e8SThomas Abraham * Thomas Abraham <thomas.ab@samsung.com> 5e39448e8SThomas Abraham * 6e39448e8SThomas Abraham * SPDX-License-Identifier: GPL-2.0+ 7e39448e8SThomas Abraham */ 8e39448e8SThomas Abraham 9e39448e8SThomas Abraham #ifndef __CONFIG_EXYNOS7420_COMMON_H 10e39448e8SThomas Abraham #define __CONFIG_EXYNOS7420_COMMON_H 11e39448e8SThomas Abraham 12e39448e8SThomas Abraham /* High Level Configuration Options */ 13e39448e8SThomas Abraham #define CONFIG_SAMSUNG /* in a SAMSUNG core */ 14e39448e8SThomas Abraham #define CONFIG_EXYNOS7420 /* Exynos7 Family */ 15e39448e8SThomas Abraham #define CONFIG_S5P 16e39448e8SThomas Abraham 17e39448e8SThomas Abraham #include <asm/arch/cpu.h> /* get chip and board defs */ 18e39448e8SThomas Abraham #include <linux/sizes.h> 19e39448e8SThomas Abraham 20e39448e8SThomas Abraham #define CONFIG_ARCH_CPU_INIT 21e39448e8SThomas Abraham 22e39448e8SThomas Abraham /* Size of malloc() pool before and after relocation */ 23e39448e8SThomas Abraham #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (80 << 20)) 24e39448e8SThomas Abraham 25e39448e8SThomas Abraham /* Miscellaneous configurable options */ 26e39448e8SThomas Abraham #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 27e39448e8SThomas Abraham #define CONFIG_SYS_PBSIZE 1024 /* Print Buffer Size */ 28e39448e8SThomas Abraham 29e39448e8SThomas Abraham /* Boot Argument Buffer Size */ 30e39448e8SThomas Abraham #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 31e39448e8SThomas Abraham 32e39448e8SThomas Abraham /* select serial console configuration */ 33e39448e8SThomas Abraham 34e39448e8SThomas Abraham /* Timer input clock frequency */ 35e39448e8SThomas Abraham #define COUNTER_FREQUENCY 24000000 36e39448e8SThomas Abraham 37e39448e8SThomas Abraham /* Device Tree */ 38e39448e8SThomas Abraham #define CONFIG_DEVICE_TREE_LIST "exynos7420-espresso7420" 39e39448e8SThomas Abraham 40e39448e8SThomas Abraham /* IRAM Layout */ 41e39448e8SThomas Abraham #define CONFIG_IRAM_BASE 0x02100000 42e39448e8SThomas Abraham #define CONFIG_IRAM_SIZE 0x58000 43e39448e8SThomas Abraham #define CONFIG_IRAM_END (CONFIG_IRAM_BASE + CONFIG_IRAM_SIZE) 44*95e74a3dSThomas Abraham #define CPU_RELEASE_ADDR secondary_boot_addr 45e39448e8SThomas Abraham 46e39448e8SThomas Abraham /* Number of CPUs available */ 47e39448e8SThomas Abraham #define CONFIG_CORE_COUNT 0x8 48e39448e8SThomas Abraham 49e39448e8SThomas Abraham /* select serial console configuration */ 50e39448e8SThomas Abraham 51e39448e8SThomas Abraham #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x3E00000) 52e39448e8SThomas Abraham 53e39448e8SThomas Abraham #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE 54e39448e8SThomas Abraham #define PHYS_SDRAM_1_SIZE SDRAM_BANK_SIZE 55e39448e8SThomas Abraham #define PHYS_SDRAM_2 (CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE) 56e39448e8SThomas Abraham #define PHYS_SDRAM_2_SIZE SDRAM_BANK_SIZE 57e39448e8SThomas Abraham #define PHYS_SDRAM_3 (CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE)) 58e39448e8SThomas Abraham #define PHYS_SDRAM_3_SIZE SDRAM_BANK_SIZE 59e39448e8SThomas Abraham #define PHYS_SDRAM_4 (CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE)) 60e39448e8SThomas Abraham #define PHYS_SDRAM_4_SIZE SDRAM_BANK_SIZE 61e39448e8SThomas Abraham #define PHYS_SDRAM_5 (CONFIG_SYS_SDRAM_BASE + (4 * SDRAM_BANK_SIZE)) 62e39448e8SThomas Abraham #define PHYS_SDRAM_5_SIZE SDRAM_BANK_SIZE 63e39448e8SThomas Abraham #define PHYS_SDRAM_6 (CONFIG_SYS_SDRAM_BASE + (5 * SDRAM_BANK_SIZE)) 64e39448e8SThomas Abraham #define PHYS_SDRAM_6_SIZE SDRAM_BANK_SIZE 65e39448e8SThomas Abraham #define PHYS_SDRAM_7 (CONFIG_SYS_SDRAM_BASE + (6 * SDRAM_BANK_SIZE)) 66e39448e8SThomas Abraham #define PHYS_SDRAM_7_SIZE SDRAM_BANK_SIZE 67e39448e8SThomas Abraham #define PHYS_SDRAM_8 (CONFIG_SYS_SDRAM_BASE + (7 * SDRAM_BANK_SIZE)) 68e39448e8SThomas Abraham #define PHYS_SDRAM_8_SIZE SDRAM_BANK_SIZE 69e39448e8SThomas Abraham 70e39448e8SThomas Abraham /* Configuration of ENV Blocks */ 71e39448e8SThomas Abraham #define CONFIG_ENV_SIZE (16 << 10) /* 16 KB */ 72e39448e8SThomas Abraham 73e39448e8SThomas Abraham #define BOOT_TARGET_DEVICES(func) \ 74e39448e8SThomas Abraham func(MMC, mmc, 1) \ 75e39448e8SThomas Abraham func(MMC, mmc, 0) \ 76e39448e8SThomas Abraham 77e39448e8SThomas Abraham #ifndef MEM_LAYOUT_ENV_SETTINGS 78e39448e8SThomas Abraham #define MEM_LAYOUT_ENV_SETTINGS \ 79e39448e8SThomas Abraham "bootm_size=0x10000000\0" \ 80e39448e8SThomas Abraham "kernel_addr_r=0x42000000\0" \ 81e39448e8SThomas Abraham "fdt_addr_r=0x43000000\0" \ 82e39448e8SThomas Abraham "ramdisk_addr_r=0x43300000\0" \ 83e39448e8SThomas Abraham "scriptaddr=0x50000000\0" \ 84e39448e8SThomas Abraham "pxefile_addr_r=0x51000000\0" 85e39448e8SThomas Abraham #endif 86e39448e8SThomas Abraham 87e39448e8SThomas Abraham #ifndef EXYNOS_DEVICE_SETTINGS 88e39448e8SThomas Abraham #define EXYNOS_DEVICE_SETTINGS \ 89e39448e8SThomas Abraham "stdin=serial\0" \ 90e39448e8SThomas Abraham "stdout=serial\0" \ 91e39448e8SThomas Abraham "stderr=serial\0" 92e39448e8SThomas Abraham #endif 93e39448e8SThomas Abraham 94e39448e8SThomas Abraham #ifndef EXYNOS_FDTFILE_SETTING 95e39448e8SThomas Abraham #define EXYNOS_FDTFILE_SETTING 96e39448e8SThomas Abraham #endif 97e39448e8SThomas Abraham 98e39448e8SThomas Abraham #define CONFIG_EXTRA_ENV_SETTINGS \ 99e39448e8SThomas Abraham EXYNOS_DEVICE_SETTINGS \ 100e39448e8SThomas Abraham EXYNOS_FDTFILE_SETTING \ 101e39448e8SThomas Abraham MEM_LAYOUT_ENV_SETTINGS 102e39448e8SThomas Abraham 103e39448e8SThomas Abraham #endif /* __CONFIG_EXYNOS7420_COMMON_H */ 104