ced843f97e435bf71285d013a225740d6306f071
[platform/kernel/u-boot.git] / include / configs / platinum.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2014, Barco (www.barco.com)
4  */
5
6 #ifndef __PLATINUM_CONFIG_H__
7 #define __PLATINUM_CONFIG_H__
8
9 /* SPL */
10
11 /* Location in NAND to read U-Boot from */
12 #define CONFIG_SYS_NAND_U_BOOT_OFFS     (14 * 1024 * 1024)
13
14 #include "imx6_spl.h"                  /* common IMX6 SPL configuration */
15 #include "mx6_common.h"
16
17 /*
18  * Hardware configuration
19  */
20
21 /* UART config */
22 #define CONFIG_MXC_UART
23 #define CONFIG_MXC_UART_BASE                    UART1_BASE
24
25 /* I2C config */
26 #define CONFIG_SYS_I2C
27 #define CONFIG_SYS_I2C_MXC
28 #define CONFIG_SYS_I2C_MXC_I2C1         /* enable I2C bus 1 */
29 #define CONFIG_SYS_I2C_MXC_I2C2         /* enable I2C bus 2 */
30 #define CONFIG_SYS_I2C_MXC_I2C3         /* enable I2C bus 3 */
31 #define CONFIG_SYS_I2C_SPEED                    100000
32
33 /* MMC config */
34 #define CONFIG_SYS_FSL_ESDHC_ADDR               0
35 #define CONFIG_SYS_FSL_USDHC_NUM                1
36
37 /* Ethernet config */
38 #define CONFIG_FEC_MXC
39 #define IMX_FEC_BASE                            ENET_BASE_ADDR
40
41 /* USB config */
42 #define CONFIG_MXC_USB_PORT                     1
43 #define CONFIG_MXC_USB_PORTSC                   (PORT_PTS_UTMI | PORT_PTS_PTW)
44 #define CONFIG_MXC_USB_FLAGS                    0
45
46 /* Memory config */
47 #define PHYS_SDRAM                              MMDC0_ARB_BASE_ADDR
48 #ifndef PHYS_SDRAM_SIZE
49 #define PHYS_SDRAM_SIZE                         (1024 << 20)
50 #endif
51
52 #define CONFIG_SYS_SDRAM_BASE                   PHYS_SDRAM
53 #define CONFIG_SYS_INIT_RAM_ADDR                IRAM_BASE_ADDR
54 #define CONFIG_SYS_INIT_RAM_SIZE                IRAM_SIZE
55
56 #define CONFIG_SYS_INIT_SP_OFFSET               (CONFIG_SYS_INIT_RAM_SIZE - \
57                                                  GENERATED_GBL_DATA_SIZE)
58 #define CONFIG_SYS_INIT_SP_ADDR                 (CONFIG_SYS_INIT_RAM_ADDR + \
59                                                  CONFIG_SYS_INIT_SP_OFFSET)
60
61 #define CONFIG_SYS_MALLOC_LEN                   (16 * 1024 * 1024)
62
63 #ifdef CONFIG_CMD_NAND
64
65 /* NAND config */
66 #ifndef CONFIG_SYS_NAND_MAX_CHIPS
67 #define CONFIG_SYS_NAND_MAX_CHIPS               2
68 #endif
69 #define CONFIG_SYS_MAX_NAND_DEVICE              1
70 #define CONFIG_SYS_NAND_BASE                    0x40000000
71 #define CONFIG_SYS_NAND_5_ADDR_CYCLE
72 #define CONFIG_SYS_NAND_ONFI_DETECTION
73
74 /* DMA config, needed for GPMI/MXS NAND support */
75
76 /* Environment in NAND */
77 #define CONFIG_ENV_OFFSET               (16 << 20)
78 #define CONFIG_ENV_SECT_SIZE            (128 << 10)
79 #define CONFIG_ENV_SIZE                 CONFIG_ENV_SECT_SIZE
80 #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET + (512 << 10))
81 #define CONFIG_ENV_SIZE_REDUND          CONFIG_ENV_SIZE
82
83 #else /* CONFIG_CMD_NAND */
84
85 /* Environment in MMC */
86 #define CONFIG_ENV_SIZE                 (8 << 10)
87 #define CONFIG_ENV_OFFSET               (6 * 64 * 1024)
88 #define CONFIG_SYS_MMC_ENV_DEV          0
89
90 #endif /* CONFIG_CMD_NAND */
91
92 /*
93  * U-Boot configuration
94  */
95
96 /* Board startup config */
97
98 #define CONFIG_SYS_MEMTEST_START                PHYS_SDRAM
99 #define CONFIG_SYS_MEMTEST_END                  (CONFIG_SYS_MEMTEST_START + \
100                                                  PHYS_SDRAM_SIZE - (12 << 20))
101
102 #define CONFIG_BOOTCOMMAND                      "run bootubi_scr"
103
104 /* Miscellaneous configurable options */
105 #define CONFIG_USE_PREBOOT
106 #define CONFIG_PREBOOT
107
108 /* MTD/UBI/UBIFS config */
109
110 /*
111  * Environment configuration
112  */
113
114 #if (CONFIG_SYS_NAND_MAX_CHIPS == 1)
115 #define CONFIG_COMMON_ENV_UBI                                           \
116         "setubipartition=env set ubipartition ubi\0"                    \
117         "setubirfs=env set ubirfs $ubipartition:rootfs$boot_vol\0"
118 #elif (CONFIG_SYS_NAND_MAX_CHIPS == 2)
119 #define CONFIG_COMMON_ENV_UBI                                           \
120         "setubipartition=env set ubipartition ubi$boot_vol\0"           \
121         "setubirfs=env set ubirfs ubi0:rootfs\0"
122 #endif
123
124 #define CONFIG_COMMON_ENV_MISC                                          \
125         "user=user\0"                                                   \
126         "project="CONFIG_PLATINUM_PROJECT"\0"                           \
127         "uimage=uImage\0"                                               \
128         "dtb="CONFIG_PLATINUM_CPU"-platinum-"CONFIG_PLATINUM_PROJECT".dtb\0" \
129         "serverip=serverip\0"                                           \
130         "memaddrlinux=0x10800000\0"                                     \
131         "memaddrsrc=0x11000000\0"                                       \
132         "memaddrdtb=0x12000000\0"                                       \
133         "console=ttymxc0\0"                                             \
134         "baudrate=115200\0"                                             \
135         "boot_scr=boot.uboot\0"                                         \
136         "boot_vol=0\0"                                                  \
137         "mtdids="CONFIG_MTDIDS_DEFAULT"\0"                                      \
138         "mtdparts="CONFIG_MTDPARTS_DEFAULT"\0"                                  \
139         "mmcfs=ext2\0"                                                  \
140         "mmcrootpart=1\0"                                               \
141         \
142         "setnfspath=env set nfspath /home/nfs/$user/$project/root\0"    \
143         "settftpfilelinux=env set tftpfilelinux $user/$project/$uimage\0" \
144         "settftpfiledtb=env set tftpfiledtb $user/$project/$dtb\0"      \
145         "setubifilelinux=env set ubifilelinux boot/$uimage\0"           \
146         "setubipfiledtb=env set ubifiledtb boot/$dtb\0"                 \
147         "setmmcrootdev=env set mmcrootdev /dev/mmcblk0p$mmcrootpart\0"  \
148         "setmmcfilelinux=env set mmcfilelinux /boot/$uimage\0"          \
149         "setmmcfiledtb=env set mmcfiledtb /boot/$dtb\0"                 \
150         \
151         "loadtftpkernel=dhcp $memaddrlinux $tftpfilelinux\0"            \
152         "loadtftpdtb=dhcp $memaddrdtb $tftpfiledtb\0"                   \
153         "loadubikernel=ubifsload $memaddrlinux $ubifilelinux\0"         \
154         "loadubidtb=ubifsload $memaddrdtb $ubifiledtb\0"                \
155         "loadmmckernel=${mmcfs}load mmc 0:$mmcrootpart $memaddrlinux "  \
156                 "$mmcfilelinux\0"                                       \
157         "loadmmcdtb=${mmcfs}load mmc 0:$mmcrootpart $memaddrdtb "       \
158                 "$mmcfiledtb\0"                                         \
159         \
160         "ubipart=ubi part $ubipartition\0"                              \
161         "ubimount=ubifsmount $ubirfs\0"                                 \
162         \
163         "setbootargscommon=env set bootargs $bootargs "                 \
164                 "console=$console,$baudrate enable_wait_mode=off\0"     \
165         "setbootargsmtd=env set bootargs $bootargs $mtdparts\0"         \
166         "setbootargsdhcp=env set bootargs $bootargs ip=dhcp\0"          \
167         "setbootargsubirfs=env set bootargs $bootargs "                 \
168                 "ubi.mtd=$ubipartition root=$ubirfs rootfstype=ubifs\0" \
169         "setbootargsnfsrfs=env set bootargs $bootargs root=/dev/nfs "   \
170                 "nfsroot=$serverip:$nfspath,v3,tcp\0"                   \
171         "setbootargsmmcrfs=env set bootargs $bootargs "                 \
172                 "root=$mmcrootdev rootwait rw\0"                        \
173         \
174         "bootnet=run settftpfilelinux settftpfiledtb setnfspath "       \
175                 "setbootargscommon setbootargsmtd setbootargsdhcp "     \
176                         "setbootargsnfsrfs;"                            \
177                         "run loadtftpkernel loadtftpdtb;"               \
178                         "bootm $memaddrlinux - $memaddrdtb\0"           \
179         "bootnet_ubirfs=run settftpfilelinux settftpfiledtb;"           \
180                         "run setubipartition setubirfs;"                \
181                         "run setbootargscommon setbootargsmtd "         \
182                                 "setbootargsubirfs;"                    \
183                         "run loadtftpkernel loadtftpdtb;"               \
184                         "bootm $memaddrlinux - $memaddrdtb\0"           \
185         "bootubi=run setubipartition setubirfs setubifilelinux "        \
186                                 "setubipfiledtb;"                       \
187                         "run setbootargscommon setbootargsmtd "         \
188                                 "setbootargsubirfs;"                    \
189                         "run ubipart ubimount loadubikernel loadubidtb;" \
190                         "bootm $memaddrlinux - $memaddrdtb\0"           \
191         "bootubi_scr=run setubipartition setubirfs;"                    \
192                         "run ubipart ubimount;"                         \
193                         "if ubifsload ${memaddrsrc} boot/${boot_scr}; " \
194                         "then source ${memaddrsrc}; else run bootubi; fi\0" \
195         "bootmmc=run setmmcrootdev setmmcfilelinux setmmcfiledtb "      \
196                         "setbootargscommon setbootargsmmcrfs;"          \
197                         "run loadmmckernel loadmmcdtb;"                 \
198                         "bootm $memaddrlinux - $memaddrdtb\0"           \
199         \
200         "bootcmd="CONFIG_BOOTCOMMAND"\0"
201
202 #define CONFIG_COMMON_ENV_SETTINGS                      CONFIG_COMMON_ENV_MISC \
203                                                         CONFIG_COMMON_ENV_UBI
204 #endif /* __PLATINUM_CONFIG_H__ */