Merge git://git.denx.de/u-boot-sunxi
[oweals/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 CONFIG_MII
40 #define IMX_FEC_BASE                            ENET_BASE_ADDR
41
42 /* USB config */
43 #define CONFIG_MXC_USB_PORT                     1
44 #define CONFIG_MXC_USB_PORTSC                   (PORT_PTS_UTMI | PORT_PTS_PTW)
45 #define CONFIG_MXC_USB_FLAGS                    0
46
47 /* Memory config */
48 #define CONFIG_NR_DRAM_BANKS                    1
49 #define PHYS_SDRAM                              MMDC0_ARB_BASE_ADDR
50 #ifndef PHYS_SDRAM_SIZE
51 #define PHYS_SDRAM_SIZE                         (1024 << 20)
52 #endif
53
54 #define CONFIG_SYS_SDRAM_BASE                   PHYS_SDRAM
55 #define CONFIG_SYS_INIT_RAM_ADDR                IRAM_BASE_ADDR
56 #define CONFIG_SYS_INIT_RAM_SIZE                IRAM_SIZE
57
58 #define CONFIG_SYS_INIT_SP_OFFSET               (CONFIG_SYS_INIT_RAM_SIZE - \
59                                                  GENERATED_GBL_DATA_SIZE)
60 #define CONFIG_SYS_INIT_SP_ADDR                 (CONFIG_SYS_INIT_RAM_ADDR + \
61                                                  CONFIG_SYS_INIT_SP_OFFSET)
62
63 #define CONFIG_SYS_MALLOC_LEN                   (16 * 1024 * 1024)
64
65 #ifdef CONFIG_CMD_NAND
66
67 /* NAND config */
68 #ifndef CONFIG_SYS_NAND_MAX_CHIPS
69 #define CONFIG_SYS_NAND_MAX_CHIPS               2
70 #endif
71 #define CONFIG_SYS_MAX_NAND_DEVICE              1
72 #define CONFIG_SYS_NAND_BASE                    0x40000000
73 #define CONFIG_SYS_NAND_5_ADDR_CYCLE
74 #define CONFIG_SYS_NAND_ONFI_DETECTION
75
76 /* DMA config, needed for GPMI/MXS NAND support */
77
78 /* Environment in NAND */
79 #define CONFIG_ENV_OFFSET               (16 << 20)
80 #define CONFIG_ENV_SECT_SIZE            (128 << 10)
81 #define CONFIG_ENV_SIZE                 CONFIG_ENV_SECT_SIZE
82 #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET + (512 << 10))
83 #define CONFIG_ENV_SIZE_REDUND          CONFIG_ENV_SIZE
84
85 #else /* CONFIG_CMD_NAND */
86
87 /* Environment in MMC */
88 #define CONFIG_ENV_SIZE                 (8 << 10)
89 #define CONFIG_ENV_OFFSET               (6 * 64 * 1024)
90 #define CONFIG_SYS_MMC_ENV_DEV          0
91
92 #endif /* CONFIG_CMD_NAND */
93
94 /*
95  * U-Boot configuration
96  */
97
98 /* Board startup config */
99 #define CONFIG_MISC_INIT_R
100
101 #define CONFIG_SYS_MEMTEST_START                PHYS_SDRAM
102 #define CONFIG_SYS_MEMTEST_END                  (CONFIG_SYS_MEMTEST_START + \
103                                                  PHYS_SDRAM_SIZE - (12 << 20))
104
105 #define CONFIG_BOOTCOMMAND                      "run bootubi_scr"
106
107 /* Miscellaneous configurable options */
108 #define CONFIG_PREBOOT
109
110 /* MTD/UBI/UBIFS config */
111 #define CONFIG_MTD_DEVICE
112 #define CONFIG_MTD_PARTITIONS
113
114 /*
115  * Environment configuration
116  */
117
118 #if (CONFIG_SYS_NAND_MAX_CHIPS == 1)
119 #define CONFIG_COMMON_ENV_UBI                                           \
120         "setubipartition=env set ubipartition ubi\0"                    \
121         "setubirfs=env set ubirfs $ubipartition:rootfs$boot_vol\0"
122 #elif (CONFIG_SYS_NAND_MAX_CHIPS == 2)
123 #define CONFIG_COMMON_ENV_UBI                                           \
124         "setubipartition=env set ubipartition ubi$boot_vol\0"           \
125         "setubirfs=env set ubirfs ubi0:rootfs\0"
126 #endif
127
128 #define CONFIG_COMMON_ENV_MISC                                          \
129         "user=user\0"                                                   \
130         "project="CONFIG_PLATINUM_PROJECT"\0"                           \
131         "uimage=uImage\0"                                               \
132         "dtb="CONFIG_PLATINUM_CPU"-platinum-"CONFIG_PLATINUM_PROJECT".dtb\0" \
133         "serverip=serverip\0"                                           \
134         "memaddrlinux=0x10800000\0"                                     \
135         "memaddrsrc=0x11000000\0"                                       \
136         "memaddrdtb=0x12000000\0"                                       \
137         "console=ttymxc0\0"                                             \
138         "baudrate=115200\0"                                             \
139         "boot_scr=boot.uboot\0"                                         \
140         "boot_vol=0\0"                                                  \
141         "mtdids="CONFIG_MTDIDS_DEFAULT"\0"                                      \
142         "mtdparts="CONFIG_MTDPARTS_DEFAULT"\0"                                  \
143         "mmcfs=ext2\0"                                                  \
144         "mmcrootpart=1\0"                                               \
145         \
146         "setnfspath=env set nfspath /home/nfs/$user/$project/root\0"    \
147         "settftpfilelinux=env set tftpfilelinux $user/$project/$uimage\0" \
148         "settftpfiledtb=env set tftpfiledtb $user/$project/$dtb\0"      \
149         "setubifilelinux=env set ubifilelinux boot/$uimage\0"           \
150         "setubipfiledtb=env set ubifiledtb boot/$dtb\0"                 \
151         "setmmcrootdev=env set mmcrootdev /dev/mmcblk0p$mmcrootpart\0"  \
152         "setmmcfilelinux=env set mmcfilelinux /boot/$uimage\0"          \
153         "setmmcfiledtb=env set mmcfiledtb /boot/$dtb\0"                 \
154         \
155         "loadtftpkernel=dhcp $memaddrlinux $tftpfilelinux\0"            \
156         "loadtftpdtb=dhcp $memaddrdtb $tftpfiledtb\0"                   \
157         "loadubikernel=ubifsload $memaddrlinux $ubifilelinux\0"         \
158         "loadubidtb=ubifsload $memaddrdtb $ubifiledtb\0"                \
159         "loadmmckernel=${mmcfs}load mmc 0:$mmcrootpart $memaddrlinux "  \
160                 "$mmcfilelinux\0"                                       \
161         "loadmmcdtb=${mmcfs}load mmc 0:$mmcrootpart $memaddrdtb "       \
162                 "$mmcfiledtb\0"                                         \
163         \
164         "ubipart=ubi part $ubipartition\0"                              \
165         "ubimount=ubifsmount $ubirfs\0"                                 \
166         \
167         "setbootargscommon=env set bootargs $bootargs "                 \
168                 "console=$console,$baudrate enable_wait_mode=off\0"     \
169         "setbootargsmtd=env set bootargs $bootargs $mtdparts\0"         \
170         "setbootargsdhcp=env set bootargs $bootargs ip=dhcp\0"          \
171         "setbootargsubirfs=env set bootargs $bootargs "                 \
172                 "ubi.mtd=$ubipartition root=$ubirfs rootfstype=ubifs\0" \
173         "setbootargsnfsrfs=env set bootargs $bootargs root=/dev/nfs "   \
174                 "nfsroot=$serverip:$nfspath,v3,tcp\0"                   \
175         "setbootargsmmcrfs=env set bootargs $bootargs "                 \
176                 "root=$mmcrootdev rootwait rw\0"                        \
177         \
178         "bootnet=run settftpfilelinux settftpfiledtb setnfspath "       \
179                 "setbootargscommon setbootargsmtd setbootargsdhcp "     \
180                         "setbootargsnfsrfs;"                            \
181                         "run loadtftpkernel loadtftpdtb;"               \
182                         "bootm $memaddrlinux - $memaddrdtb\0"           \
183         "bootnet_ubirfs=run settftpfilelinux settftpfiledtb;"           \
184                         "run setubipartition setubirfs;"                \
185                         "run setbootargscommon setbootargsmtd "         \
186                                 "setbootargsubirfs;"                    \
187                         "run loadtftpkernel loadtftpdtb;"               \
188                         "bootm $memaddrlinux - $memaddrdtb\0"           \
189         "bootubi=run setubipartition setubirfs setubifilelinux "        \
190                                 "setubipfiledtb;"                       \
191                         "run setbootargscommon setbootargsmtd "         \
192                                 "setbootargsubirfs;"                    \
193                         "run ubipart ubimount loadubikernel loadubidtb;" \
194                         "bootm $memaddrlinux - $memaddrdtb\0"           \
195         "bootubi_scr=run setubipartition setubirfs;"                    \
196                         "run ubipart ubimount;"                         \
197                         "if ubifsload ${memaddrsrc} boot/${boot_scr}; " \
198                         "then source ${memaddrsrc}; else run bootubi; fi\0" \
199         "bootmmc=run setmmcrootdev setmmcfilelinux setmmcfiledtb "      \
200                         "setbootargscommon setbootargsmmcrfs;"          \
201                         "run loadmmckernel loadmmcdtb;"                 \
202                         "bootm $memaddrlinux - $memaddrdtb\0"           \
203         \
204         "bootcmd="CONFIG_BOOTCOMMAND"\0"
205
206 #define CONFIG_COMMON_ENV_SETTINGS                      CONFIG_COMMON_ENV_MISC \
207                                                         CONFIG_COMMON_ENV_UBI
208 #endif /* __PLATINUM_CONFIG_H__ */