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 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 14 | #include <configs/exynos4-dt.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_SYS_PROMPT "Trats2 # " /* Monitor Command Prompt */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 17 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 18 | #undef CONFIG_DEFAULT_DEVICE_TREE |
| 19 | #define CONFIG_DEFAULT_DEVICE_TREE exynos4412-trats2 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 20 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 21 | #define CONFIG_TIZEN /* TIZEN lib */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 22 | |
Łukasz Majewski | 706dfa0 | 2014-01-14 08:02:26 +0100 | [diff] [blame] | 23 | #define CONFIG_SYS_L2CACHE_OFF |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 24 | #ifndef CONFIG_SYS_L2CACHE_OFF |
| 25 | #define CONFIG_SYS_L2_PL310 |
| 26 | #define CONFIG_SYS_PL310_BASE 0x10502000 |
| 27 | #endif |
| 28 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 29 | /* TRATS2 has 4 banks of DRAM */ |
| 30 | #define CONFIG_NR_DRAM_BANKS 4 |
| 31 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
| 32 | #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE |
| 33 | #define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */ |
| 34 | /* memtest works on */ |
| 35 | #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE |
| 36 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x5E00000) |
| 37 | #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x3E00000) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 38 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 39 | #define CONFIG_SYS_TEXT_BASE 0x78100000 |
| 40 | |
Alexey Brodkin | 267d8e2 | 2014-02-26 17:47:58 +0400 | [diff] [blame] | 41 | #include <linux/sizes.h> |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 42 | /* Size of malloc() pool */ |
| 43 | #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (80 * SZ_1M)) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 44 | |
| 45 | /* select serial console configuration */ |
| 46 | #define CONFIG_SERIAL2 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 47 | #define CONFIG_BAUDRATE 115200 |
| 48 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 49 | /* Console configuration */ |
| 50 | #define CONFIG_SYS_CONSOLE_INFO_QUIET |
| 51 | #define CONFIG_SYS_CONSOLE_IS_IN_ENV |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 52 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 53 | #define CONFIG_BOOTARGS "Please use defined boot" |
| 54 | #define CONFIG_BOOTCOMMAND "run mmcboot" |
| 55 | #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" |
Piotr Wilczek | 0c2ba4c | 2013-11-21 15:46:45 +0100 | [diff] [blame] | 56 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 57 | #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_LOAD_ADDR \ |
| 58 | - GENERATED_GBL_DATA_SIZE) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 59 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 60 | #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 61 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 62 | #define CONFIG_SYS_MONITOR_BASE 0x00000000 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 63 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 64 | #define CONFIG_ENV_IS_IN_MMC |
| 65 | #define CONFIG_SYS_MMC_ENV_DEV CONFIG_MMC_DEFAULT_DEV |
| 66 | #define CONFIG_ENV_SIZE 4096 |
| 67 | #define CONFIG_ENV_OFFSET ((32 - 4) << 10) /* 32KiB - 4KiB */ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 68 | |
| 69 | #define CONFIG_ENV_OVERWRITE |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 70 | |
Piotr Wilczek | b92686f | 2014-01-22 15:54:36 +0100 | [diff] [blame] | 71 | #define CONFIG_ENV_VARS_UBOOT_CONFIG |
| 72 | #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG |
| 73 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 74 | /* Tizen - partitions definitions */ |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 75 | #define PARTS_CSA "csa" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 76 | #define PARTS_BOOT "boot" |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 77 | #define PARTS_MODEM "modem" |
| 78 | #define PARTS_CSC "csc" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 79 | #define PARTS_ROOT "platform" |
| 80 | #define PARTS_DATA "data" |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 81 | #define PARTS_UMS "ums" |
| 82 | |
| 83 | #define PARTS_DEFAULT \ |
Piotr Wilczek | 5539e1e | 2013-12-30 09:40:40 +0100 | [diff] [blame] | 84 | "uuid_disk=${uuid_gpt_disk};" \ |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 85 | "name="PARTS_CSA",start=5MiB,size=8MiB,uuid=${uuid_gpt_"PARTS_CSA"};" \ |
| 86 | "name="PARTS_BOOT",size=64MiB,uuid=${uuid_gpt_"PARTS_BOOT"};" \ |
| 87 | "name="PARTS_MODEM",size=100MiB,uuid=${uuid_gpt_"PARTS_MODEM"};" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 88 | "name="PARTS_CSC",size=150MiB,uuid=${uuid_gpt_"PARTS_CSC"};" \ |
Piotr Wilczek | 953b842 | 2013-11-27 11:11:02 +0100 | [diff] [blame] | 89 | "name="PARTS_ROOT",size=1536MiB,uuid=${uuid_gpt_"PARTS_ROOT"};" \ |
| 90 | "name="PARTS_DATA",size=512MiB,uuid=${uuid_gpt_"PARTS_DATA"};" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 91 | "name="PARTS_UMS",size=-,uuid=${uuid_gpt_"PARTS_UMS"}\0" \ |
| 92 | |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 93 | #define CONFIG_DFU_ALT \ |
| 94 | "u-boot mmc 80 800;" \ |
| 95 | "uImage ext4 0 2;" \ |
| 96 | "exynos4412-trats2.dtb ext4 0 2;" \ |
Łukasz Majewski | 5cd4f74 | 2014-01-14 08:02:24 +0100 | [diff] [blame] | 97 | ""PARTS_BOOT" part 0 2;" \ |
| 98 | ""PARTS_ROOT" part 0 5;" \ |
| 99 | ""PARTS_DATA" part 0 6;" \ |
Przemyslaw Marczak | ea60f02 | 2014-01-22 12:02:47 +0100 | [diff] [blame] | 100 | ""PARTS_UMS" part 0 7;" \ |
| 101 | "params.bin mmc 0x38 0x8\0" |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 102 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 103 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
| 104 | "bootk=" \ |
Piotr Wilczek | 155f67d | 2014-01-22 15:54:37 +0100 | [diff] [blame] | 105 | "run loaduimage;" \ |
| 106 | "if run loaddtb; then " \ |
| 107 | "bootm 0x40007FC0 - ${fdtaddr};" \ |
| 108 | "fi;" \ |
| 109 | "bootm 0x40007FC0;\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 110 | "updatemmc=" \ |
| 111 | "mmc boot 0 1 1 1; mmc write 0x42008000 0 0x200;" \ |
| 112 | "mmc boot 0 1 1 0\0" \ |
| 113 | "updatebackup=" \ |
| 114 | "mmc boot 0 1 1 2; mmc write 0x42100000 0 0x200;" \ |
| 115 | " mmc boot 0 1 1 0\0" \ |
| 116 | "updatebootb=" \ |
| 117 | "mmc read 0x51000000 0x80 0x200; run updatebackup\0" \ |
| 118 | "updateuboot=" \ |
| 119 | "mmc write 0x50000000 0x80 0x400\0" \ |
| 120 | "mmcboot=" \ |
| 121 | "setenv bootargs root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \ |
| 122 | "${lpj} rootwait ${console} ${meminfo} ${opts} ${lcdinfo}; " \ |
Piotr Wilczek | 155f67d | 2014-01-22 15:54:37 +0100 | [diff] [blame] | 123 | "run bootk\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 124 | "bootchart=set opts init=/sbin/bootchartd; run bootcmd\0" \ |
| 125 | "boottrace=setenv opts initcall_debug; run bootcmd\0" \ |
| 126 | "verify=n\0" \ |
| 127 | "rootfstype=ext4\0" \ |
| 128 | "console=" CONFIG_DEFAULT_CONSOLE \ |
| 129 | "kernelname=uImage\0" \ |
Piotr Wilczek | 61bba48 | 2013-11-27 11:11:00 +0100 | [diff] [blame] | 130 | "loaduimage=ext4load mmc ${mmcdev}:${mmcbootpart} 0x40007FC0 " \ |
| 131 | "${kernelname}\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 132 | "loaddtb=ext4load mmc ${mmcdev}:${mmcbootpart} ${fdtaddr} " \ |
| 133 | "${fdtfile}\0" \ |
Piotr Wilczek | 5539e1e | 2013-12-30 09:40:40 +0100 | [diff] [blame] | 134 | "mmcdev=" __stringify(CONFIG_MMC_DEFAULT_DEV) "\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 135 | "mmcbootpart=2\0" \ |
| 136 | "mmcrootpart=5\0" \ |
| 137 | "opts=always_resume=1\0" \ |
| 138 | "partitions=" PARTS_DEFAULT \ |
Piotr Wilczek | 9317ba1 | 2013-11-12 15:22:46 +0100 | [diff] [blame] | 139 | "dfu_alt_info=" CONFIG_DFU_ALT \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 140 | "uartpath=ap\0" \ |
| 141 | "usbpath=ap\0" \ |
| 142 | "consoleon=set console console=ttySAC2,115200n8; save; reset\0" \ |
| 143 | "consoleoff=set console console=ram; save; reset\0" \ |
| 144 | "spladdr=0x40000100\0" \ |
| 145 | "splsize=0x200\0" \ |
| 146 | "splfile=falcon.bin\0" \ |
| 147 | "spl_export=" \ |
| 148 | "setexpr spl_imgsize ${splsize} + 8 ;" \ |
| 149 | "setenv spl_imgsize 0x${spl_imgsize};" \ |
| 150 | "setexpr spl_imgaddr ${spladdr} - 8 ;" \ |
| 151 | "setexpr spl_addr_tmp ${spladdr} - 4 ;" \ |
| 152 | "mw.b ${spl_imgaddr} 0x00 ${spl_imgsize};run loaduimage;" \ |
| 153 | "setenv bootargs root=/dev/mmcblk${mmcdev}p${mmcrootpart} " \ |
| 154 | "${lpj} rootwait ${console} ${meminfo} ${opts} ${lcdinfo};" \ |
| 155 | "spl export atags 0x40007FC0;" \ |
| 156 | "crc32 ${spladdr} ${splsize} ${spl_imgaddr};" \ |
| 157 | "mw.l ${spl_addr_tmp} ${splsize};" \ |
| 158 | "ext4write mmc ${mmcdev}:${mmcbootpart}" \ |
| 159 | " /${splfile} ${spl_imgaddr} ${spl_imgsize};" \ |
| 160 | "setenv spl_imgsize;" \ |
| 161 | "setenv spl_imgaddr;" \ |
| 162 | "setenv spl_addr_tmp;\0" \ |
| 163 | "fdtaddr=40800000\0" \ |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 164 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 165 | /* I2C */ |
| 166 | #include <asm/arch/gpio.h> |
| 167 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 168 | #define CONFIG_CMD_I2C |
| 169 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 170 | #define CONFIG_SYS_I2C |
Piotr Wilczek | 58bbd2b | 2013-11-20 10:43:49 +0100 | [diff] [blame] | 171 | #define CONFIG_SYS_I2C_S3C24X0 |
| 172 | #define CONFIG_SYS_I2C_S3C24X0_SPEED 100000 |
| 173 | #define CONFIG_SYS_I2C_S3C24X0_SLAVE 0 |
| 174 | #define CONFIG_MAX_I2C_NUM 8 |
| 175 | #define CONFIG_SYS_I2C_SOFT |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 176 | #define CONFIG_SYS_I2C_SOFT_SPEED 50000 |
| 177 | #define CONFIG_SYS_I2C_SOFT_SLAVE 0x00 |
| 178 | #define I2C_SOFT_DECLARATIONS2 |
| 179 | #define CONFIG_SYS_I2C_SOFT_SPEED_2 50000 |
| 180 | #define CONFIG_SYS_I2C_SOFT_SLAVE_2 0x00 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 181 | #define CONFIG_SOFT_I2C_READ_REPEATED_START |
| 182 | #define CONFIG_SYS_I2C_INIT_BOARD |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 183 | |
Piotr Wilczek | 58bbd2b | 2013-11-20 10:43:49 +0100 | [diff] [blame] | 184 | #ifndef __ASSEMBLY__ |
| 185 | int get_soft_i2c_scl_pin(void); |
| 186 | int get_soft_i2c_sda_pin(void); |
| 187 | #endif |
| 188 | #define CONFIG_SOFT_I2C_GPIO_SCL get_soft_i2c_scl_pin() |
| 189 | #define CONFIG_SOFT_I2C_GPIO_SDA get_soft_i2c_sda_pin() |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 190 | |
| 191 | /* POWER */ |
| 192 | #define CONFIG_POWER |
| 193 | #define CONFIG_POWER_I2C |
| 194 | #define CONFIG_POWER_MAX77686 |
| 195 | #define CONFIG_POWER_PMIC_MAX77693 |
| 196 | #define CONFIG_POWER_MUIC_MAX77693 |
| 197 | #define CONFIG_POWER_FG_MAX77693 |
| 198 | #define CONFIG_POWER_BATTERY_TRATS2 |
| 199 | |
Przemyslaw Marczak | 283a320 | 2014-01-22 11:24:12 +0100 | [diff] [blame] | 200 | /* Common misc for Samsung */ |
| 201 | #define CONFIG_MISC_COMMON |
| 202 | |
| 203 | #define CONFIG_MISC_INIT_R |
| 204 | |
Przemyslaw Marczak | d87efc9 | 2014-01-22 11:24:19 +0100 | [diff] [blame] | 205 | /* Download menu - Samsung common */ |
| 206 | #define CONFIG_LCD_MENU |
| 207 | #define CONFIG_LCD_MENU_BOARD |
| 208 | |
| 209 | /* Download menu - definitions for check keys */ |
| 210 | #ifndef __ASSEMBLY__ |
| 211 | #include <power/max77686_pmic.h> |
| 212 | |
| 213 | #define KEY_PWR_PMIC_NAME "MAX77686_PMIC" |
| 214 | #define KEY_PWR_STATUS_REG MAX77686_REG_PMIC_STATUS1 |
| 215 | #define KEY_PWR_STATUS_MASK (1 << 0) |
| 216 | #define KEY_PWR_INTERRUPT_REG MAX77686_REG_PMIC_INT1 |
| 217 | #define KEY_PWR_INTERRUPT_MASK (1 << 1) |
| 218 | |
| 219 | #define KEY_VOL_UP_GPIO exynos4x12_gpio_get(2, x2, 2) |
| 220 | #define KEY_VOL_DOWN_GPIO exynos4x12_gpio_get(2, x3, 3) |
| 221 | #endif /* __ASSEMBLY__ */ |
| 222 | |
| 223 | /* LCD console */ |
| 224 | #define LCD_BPP LCD_COLOR16 |
| 225 | #define CONFIG_SYS_WHITE_ON_BLACK |
| 226 | |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 227 | /* LCD */ |
| 228 | #define CONFIG_EXYNOS_FB |
| 229 | #define CONFIG_LCD |
| 230 | #define CONFIG_CMD_BMP |
Przemyslaw Marczak | 42c54e7 | 2014-01-22 11:24:16 +0100 | [diff] [blame] | 231 | #define CONFIG_BMP_16BPP |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 232 | #define CONFIG_FB_ADDR 0x52504000 |
| 233 | #define CONFIG_S6E8AX0 |
| 234 | #define CONFIG_EXYNOS_MIPI_DSIM |
| 235 | #define CONFIG_VIDEO_BMP_GZIP |
Przemyslaw Marczak | 02f4a09 | 2013-11-29 18:30:43 +0100 | [diff] [blame] | 236 | #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE ((500 * 160 * 4) + 54) |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 237 | |
Piotr Wilczek | 87d2e78 | 2014-03-07 14:59:49 +0100 | [diff] [blame] | 238 | #define LCD_XRES 720 |
| 239 | #define LCD_YRES 1280 |
Piotr Wilczek | 2b3c92a | 2013-09-20 15:01:27 +0200 | [diff] [blame] | 240 | |
| 241 | #endif /* __CONFIG_H */ |