Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2013 Samsung Electronics |
| 3 | * Sanghee Kim <sh0130.kim@samsung.com> |
| 4 | * Piotr Wilczek <p.wilczek@samsung.com> |
| 5 | * |
| 6 | * Configuation settings for the SAMSUNG TRATS2 (EXYNOS4412) board. |
| 7 | * |
| 8 | * SPDX-License-Identifier: GPL-2.0+ |
| 9 | */ |
| 10 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 11 | #ifndef __CONFIG_TRATS2_H |
| 12 | #define __CONFIG_TRATS2_H |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 13 | |
Simon Glass | be16500 | 2014-10-07 22:01:44 -0600 | [diff] [blame] | 14 | #include <configs/exynos4-common.h> |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 15 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 16 | #define CONFIG_TIZEN /* TIZEN lib */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 17 | |
Łukasz Majewski | 706dfa0 | 2014-01-14 08:02:26 +0100 | [diff] [blame] | 18 | #define CONFIG_SYS_L2CACHE_OFF |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 19 | #ifndef CONFIG_SYS_L2CACHE_OFF |
| 20 | #define CONFIG_SYS_L2_PL310 |
| 21 | #define CONFIG_SYS_PL310_BASE 0x10502000 |
| 22 | #endif |
| 23 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 24 | /* TRATS2 has 4 banks of DRAM */ |
| 25 | #define CONFIG_NR_DRAM_BANKS 4 |
| 26 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
| 27 | #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE |
| 28 | #define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */ |
| 29 | /* memtest works on */ |
| 30 | #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE |
| 31 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x5E00000) |
| 32 | #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x3E00000) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 33 | |
Łukasz Majewski | d18a745 | 2014-03-19 14:47:06 +0100 | [diff] [blame] | 34 | #define CONFIG_SYS_TEXT_BASE 0x43e00000 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 35 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 36 | /* select serial console configuration */ |
| 37 | #define CONFIG_SERIAL2 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 38 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 39 | /* Console configuration */ |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 40 | |
Łukasz Majewski | f106bf5 | 2015-04-01 12:34:30 +0200 | [diff] [blame] | 41 | #define CONFIG_BOOTCOMMAND "run autoboot" |
Dongjin Kim | 94d8aea | 2017-10-28 00:22:27 -0400 | [diff] [blame] | 42 | #define CONFIG_DEFAULT_CONSOLE "ttySAC2,115200n8" |
Piotr Wilczek | 0c2ba4c | 2013-11-21 15:46:45 +0100 | [diff] [blame] | 43 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 44 | #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_LOAD_ADDR \ |
| 45 | - GENERATED_GBL_DATA_SIZE) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 46 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 47 | #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 48 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 49 | #define CONFIG_SYS_MONITOR_BASE 0x00000000 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 50 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 51 | #define CONFIG_SYS_MMC_ENV_DEV CONFIG_MMC_DEFAULT_DEV |
| 52 | #define CONFIG_ENV_SIZE 4096 |
| 53 | #define CONFIG_ENV_OFFSET ((32 - 4) << 10) /* 32KiB - 4KiB */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 54 | |
| 55 | #define CONFIG_ENV_OVERWRITE |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 56 | |
Piotr Wilczek | b92686f | 2014-01-22 15:54:36 +0100 | [diff] [blame] | 57 | #define CONFIG_ENV_VARS_UBOOT_CONFIG |
| 58 | #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG |
| 59 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 60 | /* Tizen - partitions definitions */ |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 61 | #define PARTS_CSA "csa-mmc" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 62 | #define PARTS_BOOT "boot" |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 63 | #define PARTS_QBOOT "qboot" |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 64 | #define PARTS_CSC "csc" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 65 | #define PARTS_ROOT "platform" |
| 66 | #define PARTS_DATA "data" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 67 | #define PARTS_UMS "ums" |
| 68 | |
| 69 | #define PARTS_DEFAULT \ |
Piotr Wilczek | 5539e1e | 2013-12-30 09:40:40 +0100 | [diff] [blame] | 70 | "uuid_disk=${uuid_gpt_disk};" \ |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 71 | "name="PARTS_CSA",start=5MiB,size=8MiB,uuid=${uuid_gpt_"PARTS_CSA"};" \ |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 72 | "name="PARTS_BOOT",size=60MiB,uuid=${uuid_gpt_"PARTS_BOOT"};" \ |
| 73 | "name="PARTS_QBOOT",size=100MiB,uuid=${uuid_gpt_"PARTS_QBOOT"};" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 74 | "name="PARTS_CSC",size=150MiB,uuid=${uuid_gpt_"PARTS_CSC"};" \ |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 75 | "name="PARTS_ROOT",size=1536MiB,uuid=${uuid_gpt_"PARTS_ROOT"};" \ |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 76 | "name="PARTS_DATA",size=3000MiB,uuid=${uuid_gpt_"PARTS_DATA"};" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 77 | "name="PARTS_UMS",size=-,uuid=${uuid_gpt_"PARTS_UMS"}\0" \ |
| 78 | |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 79 | #define CONFIG_DFU_ALT \ |
Mateusz Zalega | 0ab80bf | 2014-04-28 21:13:25 +0200 | [diff] [blame] | 80 | "u-boot raw 0x80 0x800;" \ |
Łukasz Majewski | b7afe21 | 2014-07-22 10:17:06 +0200 | [diff] [blame] | 81 | "/uImage ext4 0 2;" \ |
| 82 | "/modem.bin ext4 0 2;" \ |
| 83 | "/exynos4412-trats2.dtb ext4 0 2;" \ |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 84 | ""PARTS_CSA" part 0 1;" \ |
Łukasz Majewski | 5cd4f74 | 2014-01-14 08:02:24 +0100 | [diff] [blame] | 85 | ""PARTS_BOOT" part 0 2;" \ |
Przemyslaw Marczak | 276e8d9 | 2014-02-28 18:53:36 +0100 | [diff] [blame] | 86 | ""PARTS_QBOOT" part 0 3;" \ |
| 87 | ""PARTS_CSC" part 0 4;" \ |
Łukasz Majewski | 5cd4f74 | 2014-01-14 08:02:24 +0100 | [diff] [blame] | 88 | ""PARTS_ROOT" part 0 5;" \ |
| 89 | ""PARTS_DATA" part 0 6;" \ |
Przemyslaw Marczak | ea60f02 | 2014-01-22 12:02:47 +0100 | [diff] [blame] | 90 | ""PARTS_UMS" part 0 7;" \ |
Łukasz Majewski | f106bf5 | 2015-04-01 12:34:30 +0200 | [diff] [blame] | 91 | "params.bin raw 0x38 0x8;" \ |
| 92 | "/Image.itb ext4 0 2\0" |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 93 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 94 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
| 95 | "bootk=" \ |
Piotr Wilczek | 155f67d | 2014-01-22 15:54:37 +0100 | [diff] [blame] | 96 | "run loaduimage;" \ |
| 97 | "if run loaddtb; then " \ |
| 98 | "bootm 0x40007FC0 - ${fdtaddr};" \ |
| 99 | "fi;" \ |
| 100 | "bootm 0x40007FC0;\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 101 | "updatebackup=" \ |
Jaehoon Chung | 92441af | 2014-04-30 09:09:15 +0900 | [diff] [blame] | 102 | "mmc dev 0 2; mmc write 0x51000000 0 0x800;" \ |
| 103 | " mmc dev 0 0\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 104 | "updatebootb=" \ |
Jaehoon Chung | 92441af | 2014-04-30 09:09:15 +0900 | [diff] [blame] | 105 | "mmc read 0x51000000 0x80 0x800; run updatebackup\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 106 | "mmcboot=" \ |
| 107 | "setenv bootargs root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \ |
| 108 | "${lpj} rootwait ${console} ${meminfo} ${opts} ${lcdinfo}; " \ |
Piotr Wilczek | 155f67d | 2014-01-22 15:54:37 +0100 | [diff] [blame] | 109 | "run bootk\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 110 | "bootchart=set opts init=/sbin/bootchartd; run bootcmd\0" \ |
| 111 | "boottrace=setenv opts initcall_debug; run bootcmd\0" \ |
| 112 | "verify=n\0" \ |
| 113 | "rootfstype=ext4\0" \ |
Dongjin Kim | 94d8aea | 2017-10-28 00:22:27 -0400 | [diff] [blame] | 114 | "console=" CONFIG_DEFAULT_CONSOLE "\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 115 | "kernelname=uImage\0" \ |
Piotr Wilczek | 61bba48 | 2013-11-27 11:11:00 +0100 | [diff] [blame] | 116 | "loaduimage=ext4load mmc ${mmcdev}:${mmcbootpart} 0x40007FC0 " \ |
| 117 | "${kernelname}\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 118 | "loaddtb=ext4load mmc ${mmcdev}:${mmcbootpart} ${fdtaddr} " \ |
| 119 | "${fdtfile}\0" \ |
Piotr Wilczek | 5539e1e | 2013-12-30 09:40:40 +0100 | [diff] [blame] | 120 | "mmcdev=" __stringify(CONFIG_MMC_DEFAULT_DEV) "\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 121 | "mmcbootpart=2\0" \ |
| 122 | "mmcrootpart=5\0" \ |
| 123 | "opts=always_resume=1\0" \ |
| 124 | "partitions=" PARTS_DEFAULT \ |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 125 | "dfu_alt_info=" CONFIG_DFU_ALT \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 126 | "uartpath=ap\0" \ |
| 127 | "usbpath=ap\0" \ |
| 128 | "consoleon=set console console=ttySAC2,115200n8; save; reset\0" \ |
| 129 | "consoleoff=set console console=ram; save; reset\0" \ |
| 130 | "spladdr=0x40000100\0" \ |
| 131 | "splsize=0x200\0" \ |
| 132 | "splfile=falcon.bin\0" \ |
| 133 | "spl_export=" \ |
| 134 | "setexpr spl_imgsize ${splsize} + 8 ;" \ |
| 135 | "setenv spl_imgsize 0x${spl_imgsize};" \ |
| 136 | "setexpr spl_imgaddr ${spladdr} - 8 ;" \ |
| 137 | "setexpr spl_addr_tmp ${spladdr} - 4 ;" \ |
| 138 | "mw.b ${spl_imgaddr} 0x00 ${spl_imgsize};run loaduimage;" \ |
| 139 | "setenv bootargs root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \ |
| 140 | "${lpj} rootwait ${console} ${meminfo} ${opts} ${lcdinfo};" \ |
| 141 | "spl export atags 0x40007FC0;" \ |
| 142 | "crc32 ${spladdr} ${splsize} ${spl_imgaddr};" \ |
| 143 | "mw.l ${spl_addr_tmp} ${splsize};" \ |
| 144 | "ext4write mmc ${mmcdev}:${mmcbootpart}" \ |
| 145 | " /${splfile} ${spl_imgaddr} ${spl_imgsize};" \ |
| 146 | "setenv spl_imgsize;" \ |
| 147 | "setenv spl_imgaddr;" \ |
| 148 | "setenv spl_addr_tmp;\0" \ |
Łukasz Majewski | f106bf5 | 2015-04-01 12:34:30 +0200 | [diff] [blame] | 149 | CONFIG_EXTRA_ENV_ITB \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 150 | "fdtaddr=40800000\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 151 | |
Albert ARIBAUD | b8fb7b8 | 2014-04-08 09:25:08 +0200 | [diff] [blame] | 152 | /* GPT */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 153 | |
Przemyslaw Marczak | a537a85 | 2014-03-25 10:58:22 +0100 | [diff] [blame] | 154 | /* Security subsystem - enable hw_rand() */ |
| 155 | #define CONFIG_EXYNOS_ACE_SHA |
| 156 | #define CONFIG_LIB_HW_RAND |
| 157 | |
Przemyslaw Marczak | 283a320 | 2014-01-22 11:24:12 +0100 | [diff] [blame] | 158 | /* Common misc for Samsung */ |
| 159 | #define CONFIG_MISC_COMMON |
| 160 | |
| 161 | #define CONFIG_MISC_INIT_R |
| 162 | |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 163 | /* Download menu - Samsung common */ |
| 164 | #define CONFIG_LCD_MENU |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 165 | |
| 166 | /* Download menu - definitions for check keys */ |
| 167 | #ifndef __ASSEMBLY__ |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 168 | |
| 169 | #define KEY_PWR_PMIC_NAME "MAX77686_PMIC" |
| 170 | #define KEY_PWR_STATUS_REG MAX77686_REG_PMIC_STATUS1 |
| 171 | #define KEY_PWR_STATUS_MASK (1 << 0) |
| 172 | #define KEY_PWR_INTERRUPT_REG MAX77686_REG_PMIC_INT1 |
| 173 | #define KEY_PWR_INTERRUPT_MASK (1 << 1) |
| 174 | |
Akshay Saraswat | bbb1a62 | 2014-05-13 10:30:15 +0530 | [diff] [blame] | 175 | #define KEY_VOL_UP_GPIO EXYNOS4X12_GPIO_X22 |
| 176 | #define KEY_VOL_DOWN_GPIO EXYNOS4X12_GPIO_X33 |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 177 | #endif /* __ASSEMBLY__ */ |
| 178 | |
| 179 | /* LCD console */ |
| 180 | #define LCD_BPP LCD_COLOR16 |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 181 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 182 | /* LCD */ |
Przemyslaw Marczak | 42c54e7 | 2014-01-22 11:24:16 +0100 | [diff] [blame] | 183 | #define CONFIG_BMP_16BPP |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 184 | #define CONFIG_FB_ADDR 0x52504000 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 185 | #define CONFIG_EXYNOS_MIPI_DSIM |
| 186 | #define CONFIG_VIDEO_BMP_GZIP |
Przemyslaw Marczak | 02f4a09 | 2013-11-29 18:30:43 +0100 | [diff] [blame] | 187 | #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE ((500 * 160 * 4) + 54) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 188 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 189 | #endif /* __CONFIG_H */ |