xref: /openbmc/u-boot/arch/arm/mach-rockchip/Kconfig (revision 5aa49af3)
12444dae5SSimon Glassif ARCH_ROCKCHIP
22444dae5SSimon Glass
3041cdb5fSHeiko Stübnerconfig ROCKCHIP_RK3036
4041cdb5fSHeiko Stübner	bool "Support Rockchip RK3036"
5041cdb5fSHeiko Stübner	select CPU_V7
6a381bcf5SKever Yang	select SUPPORT_SPL
7a381bcf5SKever Yang	select SPL
8041cdb5fSHeiko Stübner	help
9041cdb5fSHeiko Stübner	  The Rockchip RK3036 is a ARM-based SoC with a dual-core Cortex-A7
10041cdb5fSHeiko Stübner	  including NEON and GPU, Mali-400 graphics, several DDR3 options
11041cdb5fSHeiko Stübner	  and video codec support. Peripherals include Gigabit Ethernet,
12041cdb5fSHeiko Stübner	  USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
13041cdb5fSHeiko Stübner
140a2be69fSHeiko Stübnerconfig ROCKCHIP_RK3188
150a2be69fSHeiko Stübner	bool "Support Rockchip RK3188"
160a2be69fSHeiko Stübner	select CPU_V7
170680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
180a2be69fSHeiko Stübner	select SUPPORT_SPL
190a2be69fSHeiko Stübner	select SUPPORT_TPL
200a2be69fSHeiko Stübner	select SPL
210a2be69fSHeiko Stübner	select TPL
22008a610bSHeiko Stübner	select BOARD_LATE_INIT
230a2be69fSHeiko Stübner	select ROCKCHIP_BROM_HELPER
240a2be69fSHeiko Stübner	help
250a2be69fSHeiko Stübner	  The Rockchip RK3188 is a ARM-based SoC with a quad-core Cortex-A9
260a2be69fSHeiko Stübner	  including NEON and GPU, 512KB L2 cache, Mali-400 graphics, two
270a2be69fSHeiko Stübner	  video interfaces, several memory options and video codec support.
280a2be69fSHeiko Stübner	  Peripherals include Fast Ethernet, USB2 host and OTG, SDIO, I2S,
290a2be69fSHeiko Stübner	  UART, SPI, I2C and PWMs.
300a2be69fSHeiko Stübner
31168eef7aSKever Yangconfig ROCKCHIP_RK322X
32168eef7aSKever Yang	bool "Support Rockchip RK3228/RK3229"
33168eef7aSKever Yang	select CPU_V7
34168eef7aSKever Yang	select SUPPORT_SPL
35168eef7aSKever Yang	select SPL
36168eef7aSKever Yang	select ROCKCHIP_BROM_HELPER
37168eef7aSKever Yang	select DEBUG_UART_BOARD_INIT
38168eef7aSKever Yang	help
39168eef7aSKever Yang	  The Rockchip RK3229 is a ARM-based SoC with a dual-core Cortex-A7
40168eef7aSKever Yang	  including NEON and GPU, Mali-400 graphics, several DDR3 options
41168eef7aSKever Yang	  and video codec support. Peripherals include Gigabit Ethernet,
42168eef7aSKever Yang	  USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
43168eef7aSKever Yang
442444dae5SSimon Glassconfig ROCKCHIP_RK3288
452444dae5SSimon Glass	bool "Support Rockchip RK3288"
46e0f5dbcbSAndreas Färber	select CPU_V7
470680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
48a381bcf5SKever Yang	select SUPPORT_SPL
49a381bcf5SKever Yang	select SPL
502444dae5SSimon Glass	help
512444dae5SSimon Glass	  The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17
522444dae5SSimon Glass	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
532444dae5SSimon Glass	  video interfaces supporting HDMI and eDP, several DDR3 options
542444dae5SSimon Glass	  and video codec support. Peripherals include Gigabit Ethernet,
55ef904bf2SAndreas Färber	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
562444dae5SSimon Glass
5785a3cfb8SKever Yangconfig ROCKCHIP_RK3328
5885a3cfb8SKever Yang	bool "Support Rockchip RK3328"
5985a3cfb8SKever Yang	select ARM64
6085a3cfb8SKever Yang	help
6185a3cfb8SKever Yang	  The Rockchip RK3328 is a ARM-based SoC with a quad-core Cortex-A53.
6285a3cfb8SKever Yang	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
6385a3cfb8SKever Yang	  video interfaces supporting HDMI and eDP, several DDR3 options
6485a3cfb8SKever Yang	  and video codec support. Peripherals include Gigabit Ethernet,
6585a3cfb8SKever Yang	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
6685a3cfb8SKever Yang
6737a0c600SAndreas Färberconfig ROCKCHIP_RK3368
6837a0c600SAndreas Färber	bool "Support Rockchip RK3368"
6937a0c600SAndreas Färber	select ARM64
705071457eSPhilipp Tomsich	select SUPPORT_SPL
715071457eSPhilipp Tomsich	select SUPPORT_TPL
724cf4378eSPhilipp Tomsich	select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL
734cf4378eSPhilipp Tomsich	select TPL_NEEDS_SEPARATE_STACK if TPL
745071457eSPhilipp Tomsich	imply SPL_SEPARATE_BSS
755071457eSPhilipp Tomsich	imply SPL_SERIAL_SUPPORT
765071457eSPhilipp Tomsich	imply TPL_SERIAL_SUPPORT
775071457eSPhilipp Tomsich	select ENABLE_ARM_SOC_BOOT0_HOOK
785071457eSPhilipp Tomsich	select DEBUG_UART_BOARD_INIT
7937a0c600SAndreas Färber	select SYS_NS16550
8037a0c600SAndreas Färber	help
819a8f009fSPhilipp Tomsich	  The Rockchip RK3368 is a ARM-based SoC with a octa-core (organised
829a8f009fSPhilipp Tomsich	  into a big and little cluster with 4 cores each) Cortex-A53 including
839a8f009fSPhilipp Tomsich	  AdvSIMD, 512KB L2 cache (for the big cluster) and 256 KB L2 cache
849a8f009fSPhilipp Tomsich	  (for the little cluster), PowerVR G6110 based graphics, one video
859a8f009fSPhilipp Tomsich	  output processor supporting LVDS/HDMI/eDP, several DDR3 options and
869a8f009fSPhilipp Tomsich	  video codec support.
879a8f009fSPhilipp Tomsich
889a8f009fSPhilipp Tomsich	  On-chip peripherals include Gigabit Ethernet, USB2 host and OTG, SDIO,
899a8f009fSPhilipp Tomsich	  I2S, UARTs, SPI, I2C and PWMs.
9037a0c600SAndreas Färber
91d9d1242bSPhilipp Tomsichif ROCKCHIP_RK3368
92d9d1242bSPhilipp Tomsich
93d9d1242bSPhilipp Tomsichconfig TPL_LDSCRIPT
94d9d1242bSPhilipp Tomsich	default "arch/arm/mach-rockchip/rk3368/u-boot-tpl.lds"
95d9d1242bSPhilipp Tomsich
96*5aa49af3SPhilipp Tomsichconfig TPL_TEXT_BASE
97*5aa49af3SPhilipp Tomsich        default 0xff8c1000
98*5aa49af3SPhilipp Tomsich
99*5aa49af3SPhilipp Tomsichconfig TPL_MAX_SIZE
100*5aa49af3SPhilipp Tomsich        default 28672
101*5aa49af3SPhilipp Tomsich
102*5aa49af3SPhilipp Tomsichconfig TPL_STACK
103*5aa49af3SPhilipp Tomsich        default 0xff8cffff
104*5aa49af3SPhilipp Tomsich
105d9d1242bSPhilipp Tomsichendif
106d9d1242bSPhilipp Tomsich
107a381bcf5SKever Yangconfig ROCKCHIP_RK3399
108a381bcf5SKever Yang	bool "Support Rockchip RK3399"
109a381bcf5SKever Yang	select ARM64
11066e87cc8SKever Yang	select SUPPORT_SPL
11166e87cc8SKever Yang	select SPL
11266e87cc8SKever Yang	select SPL_SEPARATE_BSS
113c0508e42SPhilipp Tomsich	select SPL_SERIAL_SUPPORT
114c0508e42SPhilipp Tomsich	select SPL_DRIVERS_MISC_SUPPORT
1153d54eabcSPhilipp Tomsich	select ENABLE_ARM_SOC_BOOT0_HOOK
1167ee16de5SPhilipp Tomsich	select DEBUG_UART_BOARD_INIT
117a381bcf5SKever Yang	help
118a381bcf5SKever Yang	  The Rockchip RK3399 is a ARM-based SoC with a dual-core Cortex-A72
119a381bcf5SKever Yang	  and quad-core Cortex-A53.
120a381bcf5SKever Yang	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
121a381bcf5SKever Yang	  video interfaces supporting HDMI and eDP, several DDR3 options
122a381bcf5SKever Yang	  and video codec support. Peripherals include Gigabit Ethernet,
123a381bcf5SKever Yang	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
124a381bcf5SKever Yang
1252c1e11ddSAndy Yanconfig ROCKCHIP_RV1108
1262c1e11ddSAndy Yan	bool "Support Rockchip RV1108"
1272c1e11ddSAndy Yan	select CPU_V7
1282c1e11ddSAndy Yan	help
1292c1e11ddSAndy Yan	  The Rockchip RV1108 is a ARM-based SoC with a single-core Cortex-A7
1302c1e11ddSAndy Yan	  and a DSP.
1312c1e11ddSAndy Yan
132ee14d29dSPhilipp Tomsichconfig SPL_ROCKCHIP_BACK_TO_BROM
133b47ea792SXu Ziyuan	bool "SPL returns to bootrom"
134b47ea792SXu Ziyuan	default y if ROCKCHIP_RK3036
1351d845947SHeiko Stübner	select ROCKCHIP_BROM_HELPER
136ee14d29dSPhilipp Tomsich	depends on SPL
137ee14d29dSPhilipp Tomsich	help
138ee14d29dSPhilipp Tomsich	  Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
139ee14d29dSPhilipp Tomsich          SPL will return to the boot rom, which will then load the U-Boot
140ee14d29dSPhilipp Tomsich          binary to keep going on.
141ee14d29dSPhilipp Tomsich
142ee14d29dSPhilipp Tomsichconfig TPL_ROCKCHIP_BACK_TO_BROM
143ee14d29dSPhilipp Tomsich	bool "TPL returns to bootrom"
144ee14d29dSPhilipp Tomsich	default y if ROCKCHIP_RK3368
145ee14d29dSPhilipp Tomsich	select ROCKCHIP_BROM_HELPER
146ee14d29dSPhilipp Tomsich	depends on TPL
147b47ea792SXu Ziyuan	help
148b47ea792SXu Ziyuan	  Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
149b47ea792SXu Ziyuan          SPL will return to the boot rom, which will then load the U-Boot
150b47ea792SXu Ziyuan          binary to keep going on.
151b47ea792SXu Ziyuan
152fa1392a2SKever Yangconfig ROCKCHIP_SPL_RESERVE_IRAM
153fa1392a2SKever Yang	hex "Size of IRAM reserved in SPL"
154fa1392a2SKever Yang	default 0x4000
155fa1392a2SKever Yang	help
156fa1392a2SKever Yang	  SPL may need reserve memory for firmware loaded by SPL, whose load
157fa1392a2SKever Yang	  address is in IRAM and may overlay with SPL text area if not
158fa1392a2SKever Yang	  reserved.
159fa1392a2SKever Yang
1601d845947SHeiko Stübnerconfig ROCKCHIP_BROM_HELPER
1611d845947SHeiko Stübner	bool
1621d845947SHeiko Stübner
163230e0e09SSandy Pattersonconfig SPL_MMC_SUPPORT
164ee14d29dSPhilipp Tomsich	default y if !SPL_ROCKCHIP_BACK_TO_BROM
165230e0e09SSandy Patterson
166be1d5e03Shuang linsource "arch/arm/mach-rockchip/rk3036/Kconfig"
1670a2be69fSHeiko Stübnersource "arch/arm/mach-rockchip/rk3188/Kconfig"
168b24a8ec1SKever Yangsource "arch/arm/mach-rockchip/rk322x/Kconfig"
169041cdb5fSHeiko Stübnersource "arch/arm/mach-rockchip/rk3288/Kconfig"
17085a3cfb8SKever Yangsource "arch/arm/mach-rockchip/rk3328/Kconfig"
17137a0c600SAndreas Färbersource "arch/arm/mach-rockchip/rk3368/Kconfig"
172a381bcf5SKever Yangsource "arch/arm/mach-rockchip/rk3399/Kconfig"
1732c1e11ddSAndy Yansource "arch/arm/mach-rockchip/rv1108/Kconfig"
1742444dae5SSimon Glassendif
175