Merge branch 'master' of git://git.denx.de/u-boot
[platform/kernel/u-boot.git] / include / configs / ls1012ardb.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright 2020 NXP
4  * Copyright 2016 Freescale Semiconductor, Inc.
5  */
6
7 #ifndef __LS1012ARDB_H__
8 #define __LS1012ARDB_H__
9
10 #include "ls1012a_common.h"
11
12 /* DDR */
13 #define CONFIG_DIMM_SLOTS_PER_CTLR      1
14 #define CONFIG_CHIP_SELECTS_PER_CTRL    1
15 #define CONFIG_SYS_SDRAM_SIZE           0x40000000
16 #define CONFIG_CMD_MEMINFO
17
18
19 /* ENV */
20 #define CONFIG_SYS_FSL_QSPI_BASE        0x40000000
21 /*
22  * I2C IO expander
23  */
24
25 #define I2C_MUX_IO_ADDR         0x24
26 #define I2C_MUX_IO2_ADDR        0x25
27 #define I2C_MUX_IO_0            0
28 #define I2C_MUX_IO_1            1
29 #define SW_BOOT_MASK            0x03
30 #define SW_BOOT_EMU             0x02
31 #define SW_BOOT_BANK1           0x00
32 #define SW_BOOT_BANK2           0x01
33 #define SW_REV_MASK             0xF8
34 #define SW_REV_A                0xF8
35 #define SW_REV_B                0xF0
36 #define SW_REV_C                0xE8
37 #define SW_REV_C1               0xE0
38 #define SW_REV_C2               0xD8
39 #define SW_REV_D                0xD0
40 #define SW_REV_E                0xC8
41 #define __PHY_MASK              0xF9
42 #define __PHY_ETH2_MASK         0xFB
43 #define __PHY_ETH1_MASK         0xFD
44
45 /*  MMC  */
46 #ifdef CONFIG_MMC
47 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
48 #endif
49
50
51 #define CONFIG_PCIE1            /* PCIE controller 1 */
52
53 #define CONFIG_PCI_SCAN_SHOW
54
55 #define CONFIG_CMD_MEMINFO
56
57 #undef CONFIG_EXTRA_ENV_SETTINGS
58 #define CONFIG_EXTRA_ENV_SETTINGS               \
59         "verify=no\0"                           \
60         "fdt_high=0xffffffffffffffff\0"         \
61         "initrd_high=0xffffffffffffffff\0"      \
62         "fdt_addr=0x00f00000\0"                 \
63         "kernel_addr=0x01000000\0"              \
64         "kernelheader_addr=0x600000\0"          \
65         "scriptaddr=0x80000000\0"               \
66         "scripthdraddr=0x80080000\0"            \
67         "fdtheader_addr_r=0x80100000\0"         \
68         "kernelheader_addr_r=0x80200000\0"      \
69         "kernel_addr_r=0x96000000\0"            \
70         "fdt_addr_r=0x90000000\0"               \
71         "load_addr=0xa0000000\0"                \
72         "kernel_size=0x2800000\0"               \
73         "kernelheader_size=0x40000\0"           \
74         "console=ttyS0,115200\0"                \
75         BOOTENV                                 \
76         "boot_scripts=ls1012ardb_boot.scr\0"    \
77         "boot_script_hdr=hdr_ls1012ardb_bs.out\0"       \
78         "scan_dev_for_boot_part="               \
79              "part list ${devtype} ${devnum} devplist; "        \
80              "env exists devplist || setenv devplist 1; "       \
81              "for distro_bootpart in ${devplist}; do "          \
82                   "if fstype ${devtype} "                       \
83                       "${devnum}:${distro_bootpart} "           \
84                       "bootfstype; then "                       \
85                       "run scan_dev_for_boot; " \
86                   "fi; "                        \
87               "done\0"                          \
88         "scan_dev_for_boot="                              \
89                 "echo Scanning ${devtype} "               \
90                                 "${devnum}:${distro_bootpart}...; "  \
91                 "for prefix in ${boot_prefixes}; do "     \
92                         "run scan_dev_for_scripts; "      \
93                 "done;"                                   \
94                 "\0"                                      \
95         "boot_a_script="                                  \
96                 "load ${devtype} ${devnum}:${distro_bootpart} "  \
97                         "${scriptaddr} ${prefix}${script}; "    \
98                 "env exists secureboot && load ${devtype} "     \
99                         "${devnum}:${distro_bootpart} "         \
100                         "${scripthdraddr} ${prefix}${boot_script_hdr}; " \
101                         "env exists secureboot "        \
102                         "&& esbc_validate ${scripthdraddr};"    \
103                 "source ${scriptaddr}\0"          \
104         "installer=load mmc 0:2 $load_addr "    \
105                    "/flex_installer_arm64.itb; "        \
106                    "bootm $load_addr#$board\0"  \
107         "qspi_bootcmd=pfe stop; echo Trying load from qspi..;"  \
108                 "sf probe && sf read $load_addr "       \
109                 "$kernel_addr $kernel_size; env exists secureboot "     \
110                 "&& sf read $kernelheader_addr_r $kernelheader_addr "   \
111                 "$kernelheader_size && esbc_validate ${kernelheader_addr_r}; " \
112                 "bootm $load_addr#$board\0"
113
114 #undef CONFIG_BOOTCOMMAND
115 #ifdef CONFIG_TFABOOT
116 #undef QSPI_NOR_BOOTCOMMAND
117 #define QSPI_NOR_BOOTCOMMAND "pfe stop; run distro_bootcmd; run qspi_bootcmd; "\
118                              "env exists secureboot && esbc_halt;"
119 #else
120 #define CONFIG_BOOTCOMMAND "pfe stop; run distro_bootcmd; run qspi_bootcmd; "\
121                            "env exists secureboot && esbc_halt;"
122 #endif
123
124 #include <asm/fsl_secure_boot.h>
125
126 #endif /* __LS1012ARDB_H__ */