xref: /rk3399_rockchip-uboot/arch/arm/mach-rockchip/Kconfig (revision eb4fc8a10985fdeaa0010e60db8a713fb5a4c104)
1if ARCH_ROCKCHIP
2
3config ROCKCHIP_RK3036
4	bool "Support Rockchip RK3036"
5	select CPU_V7
6	select SUPPORT_SPL
7	select SPL
8	help
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.
13
14config ROCKCHIP_RK3128
15	bool "Support Rockchip RK3128"
16	select CPU_V7
17	select GICV2
18	help
19	  The Rockchip RK3128 is a ARM-based SoC with a quad-core Cortex-A7
20	  including NEON and GPU, Mali-400 graphics, several DDR3 options
21	  and video codec support. Peripherals include Gigabit Ethernet,
22	  USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
23
24config ROCKCHIP_RK3188
25	bool "Support Rockchip RK3188"
26	select CPU_V7
27	select SPL_BOARD_INIT if SPL
28	select SUPPORT_SPL
29	select SUPPORT_TPL
30	select SPL
31	select TPL
32	select BOARD_LATE_INIT
33	select ROCKCHIP_BROM_HELPER
34	help
35	  The Rockchip RK3188 is a ARM-based SoC with a quad-core Cortex-A9
36	  including NEON and GPU, 512KB L2 cache, Mali-400 graphics, two
37	  video interfaces, several memory options and video codec support.
38	  Peripherals include Fast Ethernet, USB2 host and OTG, SDIO, I2S,
39	  UART, SPI, I2C and PWMs.
40
41config ROCKCHIP_RK322X
42	bool "Support Rockchip RK3228/RK3229"
43	select CPU_V7
44	select SUPPORT_SPL
45	select SUPPORT_TPL
46	select SPL
47	select TPL
48	select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL
49	select TPL_NEEDS_SEPARATE_STACK if TPL
50	select SPL_DRIVERS_MISC_SUPPORT
51	imply SPL_SERIAL_SUPPORT
52	imply TPL_SERIAL_SUPPORT
53	select ROCKCHIP_BROM_HELPER
54	select DEBUG_UART_BOARD_INIT
55	select TPL_LIBCOMMON_SUPPORT
56	select TPL_LIBGENERIC_SUPPORT
57	select GICV2
58	help
59	  The Rockchip RK3229 is a ARM-based SoC with a dual-core Cortex-A7
60	  including NEON and GPU, Mali-400 graphics, several DDR3 options
61	  and video codec support. Peripherals include Gigabit Ethernet,
62	  USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs.
63
64config ROCKCHIP_RK3288
65	bool "Support Rockchip RK3288"
66	select CPU_V7
67	select SPL_BOARD_INIT if SPL
68	select SUPPORT_SPL
69	select SPL
70	select GICV2
71	help
72	  The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17
73	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
74	  video interfaces supporting HDMI and eDP, several DDR3 options
75	  and video codec support. Peripherals include Gigabit Ethernet,
76	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
77
78config ROCKCHIP_RK3328
79	bool "Support Rockchip RK3328"
80	select ARM64
81	select GICV2
82	help
83	  The Rockchip RK3328 is a ARM-based SoC with a quad-core Cortex-A53.
84	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
85	  video interfaces supporting HDMI and eDP, several DDR3 options
86	  and video codec support. Peripherals include Gigabit Ethernet,
87	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
88
89config ROCKCHIP_RK3368
90	bool "Support Rockchip RK3368"
91	select ARM64
92	select SUPPORT_SPL
93	select SUPPORT_TPL
94	select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL
95	select TPL_NEEDS_SEPARATE_STACK if TPL
96	imply SPL_SEPARATE_BSS
97	imply SPL_SERIAL_SUPPORT
98	imply TPL_SERIAL_SUPPORT
99	select ENABLE_ARM_SOC_BOOT0_HOOK
100	select DEBUG_UART_BOARD_INIT
101	select SYS_NS16550
102	select GICV2
103	help
104	  The Rockchip RK3368 is a ARM-based SoC with a octa-core (organised
105	  into a big and little cluster with 4 cores each) Cortex-A53 including
106	  AdvSIMD, 512KB L2 cache (for the big cluster) and 256 KB L2 cache
107	  (for the little cluster), PowerVR G6110 based graphics, one video
108	  output processor supporting LVDS/HDMI/eDP, several DDR3 options and
109	  video codec support.
110
111	  On-chip peripherals include Gigabit Ethernet, USB2 host and OTG, SDIO,
112	  I2S, UARTs, SPI, I2C and PWMs.
113
114if ROCKCHIP_RK3368
115
116config TPL_LDSCRIPT
117	default "arch/arm/mach-rockchip/rk3368/u-boot-tpl.lds"
118
119config TPL_TEXT_BASE
120        default 0xff8c1000
121
122config TPL_MAX_SIZE
123        default 28672
124
125config TPL_STACK
126        default 0xff8cffff
127
128endif
129
130config ROCKCHIP_RK3399
131	bool "Support Rockchip RK3399"
132	select ARM64
133	select SUPPORT_SPL
134	select SPL
135	select SPL_SEPARATE_BSS
136	select SPL_SERIAL_SUPPORT
137	select SPL_DRIVERS_MISC_SUPPORT
138	select ENABLE_ARM_SOC_BOOT0_HOOK
139	select DEBUG_UART_BOARD_INIT
140	select GICV3
141	help
142	  The Rockchip RK3399 is a ARM-based SoC with a dual-core Cortex-A72
143	  and quad-core Cortex-A53.
144	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
145	  video interfaces supporting HDMI and eDP, several DDR3 options
146	  and video codec support. Peripherals include Gigabit Ethernet,
147	  USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs.
148
149config ROCKCHIP_RV1108
150	bool "Support Rockchip RV1108"
151	select CPU_V7
152	help
153	  The Rockchip RV1108 is a ARM-based SoC with a single-core Cortex-A7
154	  and a DSP.
155
156config SPL_ROCKCHIP_BACK_TO_BROM
157	bool "SPL returns to bootrom"
158	default y if ROCKCHIP_RK3036
159	select ROCKCHIP_BROM_HELPER
160	depends on SPL
161	help
162	  Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
163          SPL will return to the boot rom, which will then load the U-Boot
164          binary to keep going on.
165
166config TPL_ROCKCHIP_BACK_TO_BROM
167	bool "TPL returns to bootrom"
168	default y if ROCKCHIP_RK3368
169	select ROCKCHIP_BROM_HELPER
170	depends on TPL
171	help
172	  Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled,
173          SPL will return to the boot rom, which will then load the U-Boot
174          binary to keep going on.
175
176config ROCKCHIP_SPL_RESERVE_IRAM
177	hex "Size of IRAM reserved in SPL"
178	default 0x4000
179	help
180	  SPL may need reserve memory for firmware loaded by SPL, whose load
181	  address is in IRAM and may overlay with SPL text area if not
182	  reserved.
183
184config ROCKCHIP_BROM_HELPER
185	bool
186
187config SPL_MMC_SUPPORT
188	default y if !SPL_ROCKCHIP_BACK_TO_BROM
189
190config ROCKCHIP_BLOCK_API
191	bool "Rockchip block device api support"
192	help
193	  This enable read access to block device on
194	  rockchip platform.
195
196config ROCKCHIP_PARAM
197	bool "Rockchip parameter support"
198	depends on ROCKCHIP_BLOCK_API
199	help
200	  This enable support to get partition from rockchip
201	  parameter
202
203config ROCKCHIP_RESOURCE_IMAGE
204	bool "Enable support for rockchip resource image"
205	depends on ROCKCHIP_PARAM
206	help
207	  This enables support to get dtb or logo files from
208	  rockchip resource image format partition.
209
210config ROCKCHIP_PARTITION_BOOT
211	bool "Enable support for booting system from rockchip format partition"
212	depends on ROCKCHIP_RESOURCE_IMAGE
213	help
214	  This enables support for bootimg system from rockchip format partition
215
216config GICV2
217	bool "ARM GICv2"
218
219config GICV3
220	bool "ARM GICv3"
221
222source "arch/arm/mach-rockchip/rk3036/Kconfig"
223source "arch/arm/mach-rockchip/rk3128/Kconfig"
224source "arch/arm/mach-rockchip/rk3188/Kconfig"
225source "arch/arm/mach-rockchip/rk322x/Kconfig"
226source "arch/arm/mach-rockchip/rk3288/Kconfig"
227source "arch/arm/mach-rockchip/rk3328/Kconfig"
228source "arch/arm/mach-rockchip/rk3368/Kconfig"
229source "arch/arm/mach-rockchip/rk3399/Kconfig"
230source "arch/arm/mach-rockchip/rv1108/Kconfig"
231endif
232