4 bool "Support Rockchip RK3036"
9 The Rockchip RK3036 is a ARM-based SoC with a dual-core Cortex-A7
10 including NEON and GPU, Mali-400 graphics, several DDR3 options
11 and video codec support. Peripherals include Gigabit Ethernet,
12 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
14 config ROCKCHIP_RK3188
15 bool "Support Rockchip RK3188"
17 select SPL_BOARD_INIT if SPL
25 select SPL_DRIVERS_MISC_SUPPORT
26 select SPL_ROCKCHIP_EARLYRETURN_TO_BROM
27 select BOARD_LATE_INIT
28 select ROCKCHIP_BROM_HELPER
30 The Rockchip RK3188 is a ARM-based SoC with a quad-core Cortex-A9
31 including NEON and GPU, 512KB L2 cache, Mali-400 graphics, two
32 video interfaces, several memory options and video codec support.
33 Peripherals include Fast Ethernet, USB2 host and OTG, SDIO, I2S,
34 UART, SPI, I2C and PWMs.
36 config ROCKCHIP_RK322X
37 bool "Support Rockchip RK3228/RK3229"
41 select ROCKCHIP_BROM_HELPER
42 select DEBUG_UART_BOARD_INIT
44 The Rockchip RK3229 is a ARM-based SoC with a dual-core Cortex-A7
45 including NEON and GPU, Mali-400 graphics, several DDR3 options
46 and video codec support. Peripherals include Gigabit Ethernet,
47 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
49 config ROCKCHIP_RK3288
50 bool "Support Rockchip RK3288"
52 select SPL_BOARD_INIT if SPL
56 The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17
57 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
58 video interfaces supporting HDMI and eDP, several DDR3 options
59 and video codec support. Peripherals include Gigabit Ethernet,
60 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
62 config ROCKCHIP_RK3328
63 bool "Support Rockchip RK3328"
66 The Rockchip RK3328 is a ARM-based SoC with a quad-core Cortex-A53.
67 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
68 video interfaces supporting HDMI and eDP, several DDR3 options
69 and video codec support. Peripherals include Gigabit Ethernet,
70 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
72 config ROCKCHIP_RK3368
73 bool "Support Rockchip RK3368"
77 select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL
78 select TPL_NEEDS_SEPARATE_STACK if TPL
79 imply SPL_SEPARATE_BSS
80 imply SPL_SERIAL_SUPPORT
81 imply TPL_SERIAL_SUPPORT
82 select DEBUG_UART_BOARD_INIT
85 The Rockchip RK3368 is a ARM-based SoC with a octa-core (organised
86 into a big and little cluster with 4 cores each) Cortex-A53 including
87 AdvSIMD, 512KB L2 cache (for the big cluster) and 256 KB L2 cache
88 (for the little cluster), PowerVR G6110 based graphics, one video
89 output processor supporting LVDS/HDMI/eDP, several DDR3 options and
92 On-chip peripherals include Gigabit Ethernet, USB2 host and OTG, SDIO,
93 I2S, UARTs, SPI, I2C and PWMs.
98 default "arch/arm/mach-rockchip/rk3368/u-boot-tpl.lds"
111 config ROCKCHIP_RK3399
112 bool "Support Rockchip RK3399"
116 select SPL_SEPARATE_BSS
117 select SPL_SERIAL_SUPPORT
118 select SPL_DRIVERS_MISC_SUPPORT
119 select DEBUG_UART_BOARD_INIT
121 The Rockchip RK3399 is a ARM-based SoC with a dual-core Cortex-A72
122 and quad-core Cortex-A53.
123 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
124 video interfaces supporting HDMI and eDP, several DDR3 options
125 and video codec support. Peripherals include Gigabit Ethernet,
126 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
128 config ROCKCHIP_RV1108
129 bool "Support Rockchip RV1108"
132 The Rockchip RV1108 is a ARM-based SoC with a single-core Cortex-A7
135 config SPL_ROCKCHIP_BACK_TO_BROM
136 bool "SPL returns to bootrom"
137 default y if ROCKCHIP_RK3036
138 select ROCKCHIP_BROM_HELPER
141 Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
142 SPL will return to the boot rom, which will then load the U-Boot
143 binary to keep going on.
145 config TPL_ROCKCHIP_BACK_TO_BROM
146 bool "TPL returns to bootrom"
147 default y if ROCKCHIP_RK3368
148 select ROCKCHIP_BROM_HELPER
151 Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
152 SPL will return to the boot rom, which will then load the U-Boot
153 binary to keep going on.
155 config ROCKCHIP_SPL_RESERVE_IRAM
156 hex "Size of IRAM reserved in SPL"
159 SPL may need reserve memory for firmware loaded by SPL, whose load
160 address is in IRAM and may overlay with SPL text area if not
163 config ROCKCHIP_BROM_HELPER
166 config SPL_ROCKCHIP_EARLYRETURN_TO_BROM
167 bool "SPL requires early-return (for RK3188-style BROM) to BROM"
168 depends on SPL && ENABLE_ARM_SOC_BOOT0_HOOK
170 Some Rockchip BROM variants (e.g. on the RK3188) load the
171 first stage in segments and enter multiple times. E.g. on
172 the RK3188, the first 1KB of the first stage are loaded
173 first and entered; after returning to the BROM, the
174 remainder of the first stage is loaded, but the BROM
175 re-enters at the same address/to the same code as previously.
177 This enables support code in the BOOT0 hook for the SPL stage
178 to allow multiple entries.
180 config TPL_ROCKCHIP_EARLYRETURN_TO_BROM
181 bool "TPL requires early-return (for RK3188-style BROM) to BROM"
182 depends on TPL && ENABLE_ARM_SOC_BOOT0_HOOK
184 Some Rockchip BROM variants (e.g. on the RK3188) load the
185 first stage in segments and enter multiple times. E.g. on
186 the RK3188, the first 1KB of the first stage are loaded
187 first and entered; after returning to the BROM, the
188 remainder of the first stage is loaded, but the BROM
189 re-enters at the same address/to the same code as previously.
191 This enables support code in the BOOT0 hook for the TPL stage
192 to allow multiple entries.
194 config SPL_MMC_SUPPORT
195 default y if !SPL_ROCKCHIP_BACK_TO_BROM
197 source "arch/arm/mach-rockchip/rk3036/Kconfig"
198 source "arch/arm/mach-rockchip/rk3188/Kconfig"
199 source "arch/arm/mach-rockchip/rk322x/Kconfig"
200 source "arch/arm/mach-rockchip/rk3288/Kconfig"
201 source "arch/arm/mach-rockchip/rk3328/Kconfig"
202 source "arch/arm/mach-rockchip/rk3368/Kconfig"
203 source "arch/arm/mach-rockchip/rk3399/Kconfig"
204 source "arch/arm/mach-rockchip/rv1108/Kconfig"