12444dae5SSimon Glassif ARCH_ROCKCHIP 22444dae5SSimon Glass 310e73f7bSKever Yangconfig ROCKCHIP_PX30 410e73f7bSKever Yang bool "Support Rockchip PX30" 56db22b33SJoseph Chen select ARM64 if !ARM64_BOOT_AARCH32 660848109SJoseph Chen select GICV2 793f9f019SJoseph Chen select ARM_SMCCC 8f6d4196eSYouMin Chen select SUPPORT_SPL 9f6d4196eSYouMin Chen select SUPPORT_TPL 106db22b33SJoseph Chen select SPL if !ARM64_BOOT_AARCH32 116db22b33SJoseph Chen select TPL if !ARM64_BOOT_AARCH32 12f6d4196eSYouMin Chen select TPL_TINY_FRAMEWORK if TPL 13f6d4196eSYouMin Chen 141024781fSKever Yang imply SPL_SEPARATE_BSS 15f6d4196eSYouMin Chen imply SPL_SERIAL_SUPPORT 16f6d4196eSYouMin Chen imply TPL_SERIAL_SUPPORT 1710e73f7bSKever Yang help 1810e73f7bSKever Yang The Rockchip PX30 is a ARM-based SoC with a quad-core Cortex-A35 1910e73f7bSKever Yang including NEON and GPU, Mali-400 graphics, several DDR3 options 2010e73f7bSKever Yang and video codec support. Peripherals include Gigabit Ethernet, 2110e73f7bSKever Yang USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 2210e73f7bSKever Yang 23a08ded54SJoseph Chenif ROCKCHIP_PX30 24a08ded54SJoseph Chen 25f6d4196eSYouMin Chenconfig TPL_LDSCRIPT 26f6d4196eSYouMin Chen default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 27f6d4196eSYouMin Chen 28f6d4196eSYouMin Chenconfig TPL_TEXT_BASE 29f6d4196eSYouMin Chen default 0xff0e1000 30f6d4196eSYouMin Chen 31f6d4196eSYouMin Chenconfig TPL_MAX_SIZE 32f6d4196eSYouMin Chen default 10240 33f6d4196eSYouMin Chen 34a08ded54SJoseph Chenconfig ROCKCHIP_RK3326 35a08ded54SJoseph Chen bool "Support Rockchip RK3326 " 36a08ded54SJoseph Chen help 37a08ded54SJoseph Chen RK3326 can use most code from PX30, but at some situations we have 38a08ded54SJoseph Chen to distinguish between RK3326 and PX30, so this macro gives help. 39a08ded54SJoseph Chen It is usually selected in rk3326 board defconfig. 40a08ded54SJoseph Chenendif 41a08ded54SJoseph Chen 42041cdb5fSHeiko Stübnerconfig ROCKCHIP_RK3036 43041cdb5fSHeiko Stübner bool "Support Rockchip RK3036" 44041cdb5fSHeiko Stübner select CPU_V7 45a381bcf5SKever Yang select SUPPORT_SPL 46cdfcfbccSDavid Wu select SUPPORT_TPL 47a381bcf5SKever Yang select SPL 48cdfcfbccSDavid Wu select TPL 49cdfcfbccSDavid Wu select BOARD_LATE_INIT 50cdfcfbccSDavid Wu select ROCKCHIP_BROM_HELPER 51cdfcfbccSDavid Wu select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 52cdfcfbccSDavid Wu select TPL_NEEDS_SEPARATE_STACK if TPL 536ba2d5cbSJoseph Chen select ARM_SMCCC 54041cdb5fSHeiko Stübner help 55041cdb5fSHeiko Stübner The Rockchip RK3036 is a ARM-based SoC with a dual-core Cortex-A7 56041cdb5fSHeiko Stübner including NEON and GPU, Mali-400 graphics, several DDR3 options 57041cdb5fSHeiko Stübner and video codec support. Peripherals include Gigabit Ethernet, 58041cdb5fSHeiko Stübner USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 59041cdb5fSHeiko Stübner 606a13bde3SKever Yangconfig ROCKCHIP_RK3128 616a13bde3SKever Yang bool "Support Rockchip RK3128" 626a13bde3SKever Yang select CPU_V7 63f3d84b4aSJoseph Chen select GICV2 64965c1b10SJoseph Chen select ARM_SMCCC 656a13bde3SKever Yang help 666a13bde3SKever Yang The Rockchip RK3128 is a ARM-based SoC with a quad-core Cortex-A7 676a13bde3SKever Yang including NEON and GPU, Mali-400 graphics, several DDR3 options 686a13bde3SKever Yang and video codec support. Peripherals include Gigabit Ethernet, 696a13bde3SKever Yang USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 706a13bde3SKever Yang 71e1048023SJoseph Chenif ROCKCHIP_RK3128 72e1048023SJoseph Chen 73e1048023SJoseph Chenconfig ROCKCHIP_RK3126 74e1048023SJoseph Chen bool "Support Rockchip RK3126 " 75e1048023SJoseph Chen help 76e1048023SJoseph Chen RK3126 can use most code from RK3128, but at some situations we have 77e1048023SJoseph Chen to distinguish between RK3126 and RK3128, so this macro gives help. 78e1048023SJoseph Chen It is usually selected in rk3126 board defconfig. 79f094cb29SShunqian Zheng 80f094cb29SShunqian Zhengconfig ROCKCHIP_PX3SE 81f094cb29SShunqian Zheng bool "Support Rockchip PX3SE" 82f094cb29SShunqian Zheng help 83f094cb29SShunqian Zheng PX3SE is a variant of RK3128, it shares codes with RK3128, but we still 84f094cb29SShunqian Zheng need this macro to distinguish PX3SE and RK3128. 85e1048023SJoseph Chenendif 86e1048023SJoseph Chen 87578306eaSPaweł Jaroszconfig ROCKCHIP_RK3066 88578306eaSPaweł Jarosz bool "Support Rockchip RK3066" 89578306eaSPaweł Jarosz select CPU_V7 90578306eaSPaweł Jarosz select SUPPORT_SPL 91578306eaSPaweł Jarosz select SUPPORT_TPL 92578306eaSPaweł Jarosz select SPL 93578306eaSPaweł Jarosz select TPL 94578306eaSPaweł Jarosz select BOARD_LATE_INIT 95578306eaSPaweł Jarosz select ROCKCHIP_BROM_HELPER 96ffb06671SKever Yang select SPL_ROCKCHIP_EARLYRETURN_TO_BROM 97578306eaSPaweł Jarosz help 98578306eaSPaweł Jarosz The Rockchip RK3066 is a ARM-based SoC with a dual-core Cortex-A9 99578306eaSPaweł Jarosz including NEON and GPU, Mali-400 graphics, several DDR3 options 100578306eaSPaweł Jarosz and video codec support. Peripherals include ethernet, USB2 host 101578306eaSPaweł Jarosz and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 102578306eaSPaweł Jarosz 1030a2be69fSHeiko Stübnerconfig ROCKCHIP_RK3188 1040a2be69fSHeiko Stübner bool "Support Rockchip RK3188" 1050a2be69fSHeiko Stübner select CPU_V7 1060680f1b1SLey Foon Tan select SPL_BOARD_INIT if SPL 1070a2be69fSHeiko Stübner select SUPPORT_SPL 1080a2be69fSHeiko Stübner select SPL 109397403c7SPhilipp Tomsich select SPL_CLK 110397403c7SPhilipp Tomsich select SPL_REGMAP 111397403c7SPhilipp Tomsich select SPL_SYSCON 112397403c7SPhilipp Tomsich select SPL_RAM 113397403c7SPhilipp Tomsich select SPL_DRIVERS_MISC_SUPPORT 114885cc66fSPhilipp Tomsich select SPL_ROCKCHIP_EARLYRETURN_TO_BROM 115008a610bSHeiko Stübner select BOARD_LATE_INIT 1160a2be69fSHeiko Stübner select ROCKCHIP_BROM_HELPER 1170a2be69fSHeiko Stübner help 1180a2be69fSHeiko Stübner The Rockchip RK3188 is a ARM-based SoC with a quad-core Cortex-A9 1190a2be69fSHeiko Stübner including NEON and GPU, 512KB L2 cache, Mali-400 graphics, two 1200a2be69fSHeiko Stübner video interfaces, several memory options and video codec support. 1210a2be69fSHeiko Stübner Peripherals include Fast Ethernet, USB2 host and OTG, SDIO, I2S, 1220a2be69fSHeiko Stübner UART, SPI, I2C and PWMs. 1230a2be69fSHeiko Stübner 124168eef7aSKever Yangconfig ROCKCHIP_RK322X 125168eef7aSKever Yang bool "Support Rockchip RK3228/RK3229" 126168eef7aSKever Yang select CPU_V7 127168eef7aSKever Yang select SUPPORT_SPL 12806d27531SKever Yang select SUPPORT_TPL 129168eef7aSKever Yang select SPL 13006d27531SKever Yang select TPL 13106d27531SKever Yang select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL 13206d27531SKever Yang select TPL_NEEDS_SEPARATE_STACK if TPL 13306d27531SKever Yang select SPL_DRIVERS_MISC_SUPPORT 13406d27531SKever Yang imply SPL_SERIAL_SUPPORT 13506d27531SKever Yang imply TPL_SERIAL_SUPPORT 136168eef7aSKever Yang select ROCKCHIP_BROM_HELPER 13706d27531SKever Yang select TPL_LIBCOMMON_SUPPORT 13806d27531SKever Yang select TPL_LIBGENERIC_SUPPORT 139d1d395d7SJoseph Chen select GICV2 1406ba2d5cbSJoseph Chen select ARM_SMCCC 141168eef7aSKever Yang help 142168eef7aSKever Yang The Rockchip RK3229 is a ARM-based SoC with a dual-core Cortex-A7 143168eef7aSKever Yang including NEON and GPU, Mali-400 graphics, several DDR3 options 144168eef7aSKever Yang and video codec support. Peripherals include Gigabit Ethernet, 145168eef7aSKever Yang USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 146168eef7aSKever Yang 147ad9ba815SJoseph Chenif ROCKCHIP_RK322X 148ad9ba815SJoseph Chen 149ad9ba815SJoseph Chenconfig ROCKCHIP_RK3128X 150ad9ba815SJoseph Chen bool "Support Rockchip RK3128X " 151ad9ba815SJoseph Chen help 152ad9ba815SJoseph Chen RK3128X can use most code from RK322X, but at some situations we have 153ad9ba815SJoseph Chen to distinguish between RK3128X and RK322X, so this macro gives help. 154ad9ba815SJoseph Chen It is usually selected in RK3128X board defconfig. 155ad9ba815SJoseph Chenendif 156ad9ba815SJoseph Chen 1572444dae5SSimon Glassconfig ROCKCHIP_RK3288 1582444dae5SSimon Glass bool "Support Rockchip RK3288" 159e0f5dbcbSAndreas Färber select CPU_V7 1600680f1b1SLey Foon Tan select SPL_BOARD_INIT if SPL 161a381bcf5SKever Yang select SUPPORT_SPL 1620adb4998SKever Yang select SUPPORT_TPL 163a381bcf5SKever Yang select SPL 1640adb4998SKever Yang select TPL 1650adb4998SKever Yang select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 1660adb4998SKever Yang select TPL_NEEDS_SEPARATE_STACK if TPL 1670adb4998SKever Yang imply TPL_SERIAL_SUPPORT 16886a31622SJoseph Chen select GICV2 1696ba2d5cbSJoseph Chen select ARM_SMCCC 1703ddbcffeSKever Yang select SPL_OPTEE 1713ddbcffeSKever Yang select FIT 1723ddbcffeSKever Yang select SPL_LOAD_FIT 1730adb4998SKever Yang select TPL_LIBCOMMON_SUPPORT 1740adb4998SKever Yang select TPL_LIBGENERIC_SUPPORT 1750adb4998SKever Yang select TPL_SYS_MALLOC_SIMPLE 1760adb4998SKever Yang select TPL_BOOTROM_SUPPORT 1770adb4998SKever Yang select TPL_DRIVERS_MISC_SUPPORT 1780adb4998SKever Yang select TPL_OF_CONTROL 1790adb4998SKever Yang select TPL_DM 1800adb4998SKever Yang select TPL_REGMAP 1810adb4998SKever Yang select TPL_SYSCON 1820adb4998SKever Yang select TPL_RAM 1830adb4998SKever Yang select TPL_CLK 1840adb4998SKever Yang select TPL_TINY_MEMSET 1852444dae5SSimon Glass help 1862444dae5SSimon Glass The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17 1872444dae5SSimon Glass including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 1882444dae5SSimon Glass video interfaces supporting HDMI and eDP, several DDR3 options 1892444dae5SSimon Glass and video codec support. Peripherals include Gigabit Ethernet, 190ef904bf2SAndreas Färber USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 1912444dae5SSimon Glass 1920adb4998SKever Yangif ROCKCHIP_RK3288 1933ddbcffeSKever Yangconfig SPL_FIT_GENERATOR 1943ddbcffeSKever Yang default "arch/arm/mach-rockchip/make_fit_optee.sh" 1950adb4998SKever Yang 1960adb4998SKever Yangconfig TPL_LDSCRIPT 1970adb4998SKever Yang default "arch/arm/mach-rockchip/u-boot-tpl.lds" 1980adb4998SKever Yang 1990adb4998SKever Yangconfig TPL_TEXT_BASE 2000adb4998SKever Yang default 0xff704000 2010adb4998SKever Yang 2020adb4998SKever Yangconfig TPL_MAX_SIZE 203231617c5SKever Yang default 32768 2040adb4998SKever Yang 2050adb4998SKever Yangconfig TPL_STACK 2060adb4998SKever Yang default 0xff718000 2070adb4998SKever Yang 2080adb4998SKever Yangendif 2090adb4998SKever Yang 2103d78ac3eSAndy Yanconfig ROCKCHIP_RK3308 2113d78ac3eSAndy Yan bool "Support Rockchip RK3308" 212b4bed602SAndy Yan select ARM64 if !ARM64_BOOT_AARCH32 2136ba2d5cbSJoseph Chen select ARM_SMCCC 2140b4bf976SJoseph Chen select GICV2 215951488b0SAndy Yan select SUPPORT_SPL if !ARM64_BOOT_AARCH32 216951488b0SAndy Yan select SUPPORT_TPL if !ARM64_BOOT_AARCH32 217951488b0SAndy Yan select SPL if !ARM64_BOOT_AARCH32 218951488b0SAndy Yan select TPL if !ARM64_BOOT_AARCH32 219951488b0SAndy Yan imply SPL_CLK 220951488b0SAndy Yan imply SPL_REGMAP 221951488b0SAndy Yan imply SPL_SYSCON 222951488b0SAndy Yan imply SPL_RAM 223951488b0SAndy Yan imply SPL_SERIAL_SUPPORT 224951488b0SAndy Yan imply TPL_SERIAL_SUPPORT 225951488b0SAndy Yan imply SPL_SEPARATE_BSS 2263d78ac3eSAndy Yan help 2273d78ac3eSAndy Yan The Rockchip RK3308 is a ARM-based Soc which embeded with quad 2283d78ac3eSAndy Yan Cortex-A35 and highly integrated audio interfaces. 2293d78ac3eSAndy Yan 230379e9cabSZhihuan Heif ROCKCHIP_RK3308 231379e9cabSZhihuan He 232379e9cabSZhihuan Heconfig TPL_LDSCRIPT 233379e9cabSZhihuan He default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 234379e9cabSZhihuan He 235379e9cabSZhihuan Heconfig TPL_TEXT_BASE 236379e9cabSZhihuan He default 0xfff81000 237379e9cabSZhihuan He 238379e9cabSZhihuan Heconfig TPL_MAX_SIZE 239355cdcf3SZhihuan He default 10240 240379e9cabSZhihuan He 241379e9cabSZhihuan Heconfig TPL_STACK 242379e9cabSZhihuan He default 0xfff84000 243379e9cabSZhihuan He 244379e9cabSZhihuan Heendif 245379e9cabSZhihuan He 24685a3cfb8SKever Yangconfig ROCKCHIP_RK3328 24785a3cfb8SKever Yang bool "Support Rockchip RK3328" 24885a3cfb8SKever Yang select ARM64 24955da6f73SJoseph Chen select GICV2 250430b0146SKever Yang select SUPPORT_SPL 251430b0146SKever Yang select SUPPORT_TPL 252430b0146SKever Yang select SPL 253430b0146SKever Yang select TPL 254430b0146SKever Yang select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 255430b0146SKever Yang select TPL_NEEDS_SEPARATE_STACK if TPL 256430b0146SKever Yang imply SPL_SERIAL_SUPPORT 257430b0146SKever Yang imply TPL_SERIAL_SUPPORT 258430b0146SKever Yang imply SPL_SEPARATE_BSS 2596ba2d5cbSJoseph Chen select ARM_SMCCC 26085a3cfb8SKever Yang help 26185a3cfb8SKever Yang The Rockchip RK3328 is a ARM-based SoC with a quad-core Cortex-A53. 26285a3cfb8SKever Yang including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 26385a3cfb8SKever Yang video interfaces supporting HDMI and eDP, several DDR3 options 26485a3cfb8SKever Yang and video codec support. Peripherals include Gigabit Ethernet, 26585a3cfb8SKever Yang USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 26685a3cfb8SKever Yang 267430b0146SKever Yangif ROCKCHIP_RK3328 268430b0146SKever Yang 269430b0146SKever Yangconfig TPL_LDSCRIPT 270430b0146SKever Yang default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 271430b0146SKever Yang 272430b0146SKever Yangconfig TPL_TEXT_BASE 273430b0146SKever Yang default 0xff091000 274430b0146SKever Yang 275430b0146SKever Yangconfig TPL_MAX_SIZE 276430b0146SKever Yang default 28672 277430b0146SKever Yang 278430b0146SKever Yangconfig TPL_STACK 279430b0146SKever Yang default 0xff098000 280430b0146SKever Yang 281430b0146SKever Yangendif 282430b0146SKever Yang 28337a0c600SAndreas Färberconfig ROCKCHIP_RK3368 28437a0c600SAndreas Färber bool "Support Rockchip RK3368" 28537a0c600SAndreas Färber select ARM64 2865071457eSPhilipp Tomsich select SUPPORT_SPL 2875071457eSPhilipp Tomsich select SUPPORT_TPL 2884cf4378eSPhilipp Tomsich select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL 2894cf4378eSPhilipp Tomsich select TPL_NEEDS_SEPARATE_STACK if TPL 2905071457eSPhilipp Tomsich imply SPL_SEPARATE_BSS 2915071457eSPhilipp Tomsich imply SPL_SERIAL_SUPPORT 2925071457eSPhilipp Tomsich imply TPL_SERIAL_SUPPORT 293503f955fSJoseph Chen select GICV2 2946ba2d5cbSJoseph Chen select ARM_SMCCC 29537a0c600SAndreas Färber help 2969a8f009fSPhilipp Tomsich The Rockchip RK3368 is a ARM-based SoC with a octa-core (organised 2979a8f009fSPhilipp Tomsich into a big and little cluster with 4 cores each) Cortex-A53 including 2989a8f009fSPhilipp Tomsich AdvSIMD, 512KB L2 cache (for the big cluster) and 256 KB L2 cache 2999a8f009fSPhilipp Tomsich (for the little cluster), PowerVR G6110 based graphics, one video 3009a8f009fSPhilipp Tomsich output processor supporting LVDS/HDMI/eDP, several DDR3 options and 3019a8f009fSPhilipp Tomsich video codec support. 3029a8f009fSPhilipp Tomsich 3039a8f009fSPhilipp Tomsich On-chip peripherals include Gigabit Ethernet, USB2 host and OTG, SDIO, 3049a8f009fSPhilipp Tomsich I2S, UARTs, SPI, I2C and PWMs. 30537a0c600SAndreas Färber 306d9d1242bSPhilipp Tomsichif ROCKCHIP_RK3368 307d9d1242bSPhilipp Tomsich 308f67455c9SKever Yangconfig ROCKCHIP_PX5 309f67455c9SKever Yang bool "Support Rockchip PX5" 310f67455c9SKever Yang help 311f67455c9SKever Yang PX5 is a variant of RK3368, it shares codes with RK3368, but we still 312f67455c9SKever Yang need this macro to distinguish PX5 and RK3368. 313f67455c9SKever Yang 314d9d1242bSPhilipp Tomsichconfig TPL_LDSCRIPT 315d9d1242bSPhilipp Tomsich default "arch/arm/mach-rockchip/rk3368/u-boot-tpl.lds" 316d9d1242bSPhilipp Tomsich 3175aa49af3SPhilipp Tomsichconfig TPL_TEXT_BASE 3185aa49af3SPhilipp Tomsich default 0xff8c1000 3195aa49af3SPhilipp Tomsich 3205aa49af3SPhilipp Tomsichconfig TPL_MAX_SIZE 3215aa49af3SPhilipp Tomsich default 28672 3225aa49af3SPhilipp Tomsich 3235aa49af3SPhilipp Tomsichconfig TPL_STACK 3245aa49af3SPhilipp Tomsich default 0xff8cffff 3255aa49af3SPhilipp Tomsich 326d9d1242bSPhilipp Tomsichendif 327d9d1242bSPhilipp Tomsich 328a381bcf5SKever Yangconfig ROCKCHIP_RK3399 329a381bcf5SKever Yang bool "Support Rockchip RK3399" 330a381bcf5SKever Yang select ARM64 33166e87cc8SKever Yang select SUPPORT_SPL 332c7b9ee6bSKever Yang select SUPPORT_TPL 33366e87cc8SKever Yang select SPL 334c7b9ee6bSKever Yang select TPL 335c7b9ee6bSKever Yang select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 336c7b9ee6bSKever Yang select TPL_NEEDS_SEPARATE_STACK if TPL 337c7b9ee6bSKever Yang imply TPL_SERIAL_SUPPORT 33866e87cc8SKever Yang select SPL_SEPARATE_BSS 339c0508e42SPhilipp Tomsich select SPL_SERIAL_SUPPORT 340c0508e42SPhilipp Tomsich select SPL_DRIVERS_MISC_SUPPORT 3418f557da1SJoseph Chen select GICV3 342be55ced3SAndy Yan select BOARD_LATE_INIT 34347a9f8fcSAndy Yan select ROCKCHIP_BROM_HELPER 3446ba2d5cbSJoseph Chen select ARM_SMCCC 345c7b9ee6bSKever Yang select TPL_LIBCOMMON_SUPPORT 346c7b9ee6bSKever Yang select TPL_LIBGENERIC_SUPPORT 347c7b9ee6bSKever Yang select TPL_SYS_MALLOC_SIMPLE 348c7b9ee6bSKever Yang select TPL_BOOTROM_SUPPORT 349c7b9ee6bSKever Yang select TPL_DRIVERS_MISC_SUPPORT 350c7b9ee6bSKever Yang select TPL_OF_CONTROL 351c7b9ee6bSKever Yang select TPL_DM 352c7b9ee6bSKever Yang select TPL_REGMAP 353c7b9ee6bSKever Yang select TPL_SYSCON 354c7b9ee6bSKever Yang select TPL_RAM 355c7b9ee6bSKever Yang select TPL_CLK 356c7b9ee6bSKever Yang select TPL_TINY_MEMSET 357a381bcf5SKever Yang help 358a381bcf5SKever Yang The Rockchip RK3399 is a ARM-based SoC with a dual-core Cortex-A72 359a381bcf5SKever Yang and quad-core Cortex-A53. 360a381bcf5SKever Yang including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 361a381bcf5SKever Yang video interfaces supporting HDMI and eDP, several DDR3 options 362a381bcf5SKever Yang and video codec support. Peripherals include Gigabit Ethernet, 363a381bcf5SKever Yang USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 364a381bcf5SKever Yang 365c7b9ee6bSKever Yangif ROCKCHIP_RK3399 366c7b9ee6bSKever Yang 367d60cbc66SJoseph Chenconfig ROCKCHIP_RK3399PRO 368d60cbc66SJoseph Chen bool "Support Rockchip RK3399Pro" 369d60cbc66SJoseph Chen 370c7b9ee6bSKever Yangconfig TPL_LDSCRIPT 371c7b9ee6bSKever Yang default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 372c7b9ee6bSKever Yang 373c7b9ee6bSKever Yangconfig TPL_TEXT_BASE 374c7b9ee6bSKever Yang default 0xff8c2000 375c7b9ee6bSKever Yang 376c7b9ee6bSKever Yangconfig TPL_MAX_SIZE 377c7b9ee6bSKever Yang default 188416 378c7b9ee6bSKever Yang 379c7b9ee6bSKever Yangconfig TPL_STACK 380c7b9ee6bSKever Yang default 0xff8effff 381c7b9ee6bSKever Yang 382c7b9ee6bSKever Yangendif 383c7b9ee6bSKever Yang 3847e26af38SJoseph Chenconfig ROCKCHIP_RK3568 3857e26af38SJoseph Chen bool "Support Rockchip RK3568" 386f345af8bSJoseph Chen select ARM64 if !ARM64_BOOT_AARCH32 387a39ea685SJoseph Chen select ARM_SMCCC 3885f73fdb1SYifeng Zhao select GICV3 if !ARM64_BOOT_AARCH32 && !SUPPORT_USBPLUG 389f345af8bSJoseph Chen select SUPPORT_TPL if !ARM64_BOOT_AARCH32 390f345af8bSJoseph Chen select SUPPORT_SPL if !ARM64_BOOT_AARCH32 391bc5b1ed8SJoseph Chen select TPL_TINY_FRAMEWORK if TPL 3927b5df4cdSYouMin Chen select DEBUG_UART_BOARD_INIT 393f345af8bSJoseph Chen imply TPL if !ARM64_BOOT_AARCH32 394f345af8bSJoseph Chen imply SPL if !ARM64_BOOT_AARCH32 395bc5b1ed8SJoseph Chen imply TPL_SERIAL_SUPPORT 3967e26af38SJoseph Chen help 3977e26af38SJoseph Chen The Rockchip RK3568 is a ARM-based SoC with a quad-core Cortex-A55. 3987e26af38SJoseph Chen 399bc5b1ed8SJoseph Chenif ROCKCHIP_RK3568 400bc5b1ed8SJoseph Chen 401bc5b1ed8SJoseph Chenconfig TPL_LDSCRIPT 402bc5b1ed8SJoseph Chen default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 403bc5b1ed8SJoseph Chen 404bc5b1ed8SJoseph Chenconfig TPL_TEXT_BASE 405bc5b1ed8SJoseph Chen default 0xfdcc1000 406bc5b1ed8SJoseph Chen 407bc5b1ed8SJoseph Chenconfig TPL_MAX_SIZE 408bc5b1ed8SJoseph Chen default 61440 409bc5b1ed8SJoseph Chen 410bc5b1ed8SJoseph Chenendif 411bc5b1ed8SJoseph Chen 412e1cfe1c9SJoseph Chenconfig ROCKCHIP_RK3588 413e1cfe1c9SJoseph Chen bool "Support Rockchip RK3588" 4141f1e8631SJoseph Chen select ARM64 if !ARM64_BOOT_AARCH32 415e1cfe1c9SJoseph Chen select ARM_SMCCC 416e1cfe1c9SJoseph Chen select DEBUG_UART_BOARD_INIT 4171f1e8631SJoseph Chen select GICV3 if !ARM64_BOOT_AARCH32 && !SUPPORT_USBPLUG 418e1cfe1c9SJoseph Chen select ROCKCHIP_BROM_HELPER 4191f1e8631SJoseph Chen select SUPPORT_SPL if !ARM64_BOOT_AARCH32 4201f1e8631SJoseph Chen select SUPPORT_TPL if !ARM64_BOOT_AARCH32 421e1cfe1c9SJoseph Chen select TPL_TINY_FRAMEWORK if TPL 4221f1e8631SJoseph Chen imply TPL if !ARM64_BOOT_AARCH32 4231f1e8631SJoseph Chen imply SPL if !ARM64_BOOT_AARCH32 424e1cfe1c9SJoseph Chen imply TPL_SERIAL_SUPPORT 425e1cfe1c9SJoseph Chen select DEBUG_UART_BOARD_INIT 426e1cfe1c9SJoseph Chen help 427e1cfe1c9SJoseph Chen The Rockchip RK3588 is a ARM-based SoC with a quad-core Cortex-A55. 428e1cfe1c9SJoseph Chen 429e1cfe1c9SJoseph Chenif ROCKCHIP_RK3588 430e1cfe1c9SJoseph Chen 431e1cfe1c9SJoseph Chenconfig TPL_LDSCRIPT 432e1cfe1c9SJoseph Chen default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 433e1cfe1c9SJoseph Chen 434e1cfe1c9SJoseph Chenconfig TPL_TEXT_BASE 435e1cfe1c9SJoseph Chen default 0xfdcc1000 436e1cfe1c9SJoseph Chen 437e1cfe1c9SJoseph Chenconfig TPL_MAX_SIZE 438e1cfe1c9SJoseph Chen default 61440 439e1cfe1c9SJoseph Chenendif 440e1cfe1c9SJoseph Chen 441b8fa3d2aSJoseph Chenconfig ROCKCHIP_RK1808 442b8fa3d2aSJoseph Chen bool "Support Rockchip RK1808" 443b8fa3d2aSJoseph Chen select ARM64 444b8fa3d2aSJoseph Chen select ARM_SMCCC 44573595a32SJoseph Chen select GICV3 if !COPROCESSOR_RK1808 4463d95740aSJason Zhu select SUPPORT_SPL if !COPROCESSOR_RK1808 4473d95740aSJason Zhu select SUPPORT_TPL if !COPROCESSOR_RK1808 448b8fa3d2aSJoseph Chen help 449b8fa3d2aSJoseph Chen The Rockchip RK1808 is a ARM-based Soc which embedded with dual 450b8fa3d2aSJoseph Chen Cortex-A35. 451b8fa3d2aSJoseph Chen 4522aa1fe77SJoseph Chenif ROCKCHIP_RK1808 4532aa1fe77SJoseph Chen 454760b0468SJoseph Chenconfig ROCKCHIP_RK1806 455760b0468SJoseph Chen bool "Support Rockchip RK1806" 456760b0468SJoseph Chen help 457760b0468SJoseph Chen The Rockchip RK1806 is a ARM-based Soc which embedded with dual 458760b0468SJoseph Chen Cortex-A35. 459760b0468SJoseph Chen 4602aa1fe77SJoseph Chenconfig COPROCESSOR_RK1808 4612aa1fe77SJoseph Chen bool "RK1808 coprocessor" 4622aa1fe77SJoseph Chen help 4632aa1fe77SJoseph Chen This indicates the RK1808 is working as a coprocessor for another 4642aa1fe77SJoseph Chen more powerful SoC. 4652aa1fe77SJoseph Chen 4662aa1fe77SJoseph Chenendif 4672aa1fe77SJoseph Chen 4682c1e11ddSAndy Yanconfig ROCKCHIP_RV1108 4692c1e11ddSAndy Yan bool "Support Rockchip RV1108" 4702c1e11ddSAndy Yan select CPU_V7 47152f7b21dSZhihuan He select SUPPORT_SPL 472491dd334SZhihuan He select SUPPORT_TPL 47352f7b21dSZhihuan He select SPL 474491dd334SZhihuan He select TPL 475dfe03786SAndy Yan select BOARD_LATE_INIT 4762c1e11ddSAndy Yan help 4772c1e11ddSAndy Yan The Rockchip RV1108 is a ARM-based SoC with a single-core Cortex-A7 4782c1e11ddSAndy Yan and a DSP. 4792c1e11ddSAndy Yan 480491dd334SZhihuan Heif ROCKCHIP_RV1108 481491dd334SZhihuan He 482491dd334SZhihuan Heconfig TPL_LDSCRIPT 483491dd334SZhihuan He default "arch/arm/mach-rockchip/u-boot-tpl.lds" 484491dd334SZhihuan He 485491dd334SZhihuan Heconfig TPL_TEXT_BASE 486491dd334SZhihuan He default 0x10080800 487491dd334SZhihuan He 488491dd334SZhihuan Heconfig TPL_MAX_SIZE 489491dd334SZhihuan He default 6144 490491dd334SZhihuan He 491491dd334SZhihuan Heconfig TPL_STACK 492491dd334SZhihuan He default 0x10082000 493491dd334SZhihuan He 494491dd334SZhihuan Heendif 495491dd334SZhihuan He 496e7c03ac6SJoseph Chenconfig ROCKCHIP_RV1126 497e7c03ac6SJoseph Chen bool "Support Rockchip RV1126" 4980dc03778SJoseph Chen select CPU_V7 499*41ebb2b6SJoseph Chen imply SUPPORT_TPL 500*41ebb2b6SJoseph Chen imply SUPPORT_SPL 501*41ebb2b6SJoseph Chen imply TPL_TINY_FRAMEWORK if TPL 502c2d71f78SYouMin Chen select DEBUG_UART_BOARD_INIT 5031e83a6cbSJoseph Chen imply TPL 5041e83a6cbSJoseph Chen imply SPL 5051e83a6cbSJoseph Chen imply GICV2 5061e83a6cbSJoseph Chen imply ARM_SMCCC 5071e83a6cbSJoseph Chen imply BOARD_LATE_INIT 5087c7344b1SJoseph Chen imply ROCKCHIP_GPIO_V2 509c2d71f78SYouMin Chen imply TPL_SERIAL_SUPPORT 5100dc03778SJoseph Chen help 511e7c03ac6SJoseph Chen The Rockchip RV1126 is a ARM-based SoC with a quad-core Cortex-A7 5120dc03778SJoseph Chen and a risc-v core. 5130dc03778SJoseph Chen 514c2d71f78SYouMin Chenif ROCKCHIP_RV1126 515c2d71f78SYouMin Chen 516c2d71f78SYouMin Chenconfig TPL_LDSCRIPT 517c2d71f78SYouMin Chen default "arch/arm/mach-rockchip/u-boot-tpl.lds" 518c2d71f78SYouMin Chen 519c2d71f78SYouMin Chenconfig TPL_TEXT_BASE 520c2d71f78SYouMin Chen default 0xff701000 521c2d71f78SYouMin Chen 522c2d71f78SYouMin Chenconfig TPL_MAX_SIZE 523c2d71f78SYouMin Chen default 32768 524c2d71f78SYouMin Chenendif 525c2d71f78SYouMin Chen 526ee14d29dSPhilipp Tomsichconfig SPL_ROCKCHIP_BACK_TO_BROM 527b47ea792SXu Ziyuan bool "SPL returns to bootrom" 528b47ea792SXu Ziyuan default y if ROCKCHIP_RK3036 5291d845947SHeiko Stübner select ROCKCHIP_BROM_HELPER 530ee14d29dSPhilipp Tomsich depends on SPL 531ee14d29dSPhilipp Tomsich help 532ee14d29dSPhilipp Tomsich Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled, 533ee14d29dSPhilipp Tomsich SPL will return to the boot rom, which will then load the U-Boot 534ee14d29dSPhilipp Tomsich binary to keep going on. 535ee14d29dSPhilipp Tomsich 536ee14d29dSPhilipp Tomsichconfig TPL_ROCKCHIP_BACK_TO_BROM 537ee14d29dSPhilipp Tomsich bool "TPL returns to bootrom" 538c7b9ee6bSKever Yang default y 539ee14d29dSPhilipp Tomsich select ROCKCHIP_BROM_HELPER 540ee14d29dSPhilipp Tomsich depends on TPL 541b47ea792SXu Ziyuan help 542b47ea792SXu Ziyuan Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled, 543b47ea792SXu Ziyuan SPL will return to the boot rom, which will then load the U-Boot 544b47ea792SXu Ziyuan binary to keep going on. 545b47ea792SXu Ziyuan 546b4bed602SAndy Yanconfig ARM64_BOOT_AARCH32 5478a155fd4SJoseph Chen bool "Support Boot an ARM64 on AArch32 execution state, ie. U-Boot is in AArch32" 548b4bed602SAndy Yan select CPU_V7 549b4bed602SAndy Yan default n 550b4bed602SAndy Yan help 551b4bed602SAndy Yan If you want to boot an ARM64 processor on 32-bit mode, say y here. 552b4bed602SAndy Yan 5538a155fd4SJoseph Chenconfig ARM64_SWITCH_TO_AARCH32 5548a155fd4SJoseph Chen bool "Support AArch64 U-Boot boot AArch32 kernel" 5558a155fd4SJoseph Chen default n 5568a155fd4SJoseph Chen help 5578a155fd4SJoseph Chen If you want AArch64 U-Boot to boot AArch32 kernel, say y here. 5588a155fd4SJoseph Chen This feature needs ATF to help switch the PE state. 5598a155fd4SJoseph Chen 560be55ced3SAndy Yanconfig ROCKCHIP_BOOT_MODE_REG 561be55ced3SAndy Yan hex "Rockchip boot mode flag register address" 56210e73f7bSKever Yang default 0xff010200 if ROCKCHIP_PX30 563be55ced3SAndy Yan default 0x200081c8 if ROCKCHIP_RK3036 564dd9a11eaSAndy Yan default 0x100a0038 if ROCKCHIP_RK3128 565be55ced3SAndy Yan default 0x20004040 if ROCKCHIP_RK3188 566be55ced3SAndy Yan default 0x110005c8 if ROCKCHIP_RK322X 567be55ced3SAndy Yan default 0xff730094 if ROCKCHIP_RK3288 5683d78ac3eSAndy Yan default 0xff000500 if ROCKCHIP_RK3308 5698ec39620SKever Yang default 0xff1005c8 if ROCKCHIP_RK3328 570be55ced3SAndy Yan default 0xff738200 if ROCKCHIP_RK3368 571be55ced3SAndy Yan default 0xff320300 if ROCKCHIP_RK3399 5727e26af38SJoseph Chen default 0xfdc20200 if ROCKCHIP_RK3568 5738bcae395SJoseph Chen default 0xfd588080 if ROCKCHIP_RK3588 574b8fa3d2aSJoseph Chen default 0xfe020200 if ROCKCHIP_RK1808 575be55ced3SAndy Yan default 0x10300580 if ROCKCHIP_RV1108 576e7c03ac6SJoseph Chen default 0xfe020200 if ROCKCHIP_RV1126 577be55ced3SAndy Yan default 0 578be55ced3SAndy Yan help 579be55ced3SAndy Yan The Soc will enter to different boot mode(defined in asm/arch/boot_mode.h) 580be55ced3SAndy Yan according to the value from this register. 581be55ced3SAndy Yan 582d5ed5c22SKever Yangconfig ROCKCHIP_STIMER_BASE 583d5ed5c22SKever Yang hex "Rockchip Secure timer base address" 584d5ed5c22SKever Yang default 0xff220020 if ROCKCHIP_PX30 585d5ed5c22SKever Yang default 0x200440a0 if ROCKCHIP_RK3036 586d5ed5c22SKever Yang default 0x2000e000 if ROCKCHIP_RK3066 587d5ed5c22SKever Yang default 0x20018020 if ROCKCHIP_RK3126 588d5ed5c22SKever Yang default 0x200440a0 if ROCKCHIP_RK3128 589d5ed5c22SKever Yang default 0x2000e000 if ROCKCHIP_RK3188 590d5ed5c22SKever Yang default 0x110d0020 if ROCKCHIP_RK322X 591d5ed5c22SKever Yang default 0xff810020 if ROCKCHIP_RK3288 592379e9cabSZhihuan He default 0xff1b00a0 if ROCKCHIP_RK3308 593d5ed5c22SKever Yang default 0xff1d0020 if ROCKCHIP_RK3328 594d5ed5c22SKever Yang default 0xff830020 if ROCKCHIP_RK3368 595d5ed5c22SKever Yang default 0xff8680a0 if ROCKCHIP_RK3399 5967e26af38SJoseph Chen default 0xfdd1c020 if ROCKCHIP_RK3568 597e1cfe1c9SJoseph Chen default 0xfd8c8000 if ROCKCHIP_RK3588 598d5ed5c22SKever Yang default 0x10350020 if ROCKCHIP_RV1108 599e7c03ac6SJoseph Chen default 0xff670020 if ROCKCHIP_RV1126 600d5ed5c22SKever Yang default 0 601d5ed5c22SKever Yang help 602d5ed5c22SKever Yang The secure timer inited in SPL/TPL in secure word, ARM generic timer 603d5ed5c22SKever Yang works after this timer work. 604d5ed5c22SKever Yang 605e8078e90SKever Yangconfig ROCKCHIP_IRAM_START_ADDR 606e8078e90SKever Yang hex "Rockchip Secure timer base address" 607e8078e90SKever Yang default 0xff0e0000 if ROCKCHIP_PX30 608e8078e90SKever Yang default 0x10080000 if ROCKCHIP_RK3036 609e8078e90SKever Yang default 0x10080000 if ROCKCHIP_RK3128 610e8078e90SKever Yang default 0x10080000 if ROCKCHIP_RK3188 611e8078e90SKever Yang default 0x10080000 if ROCKCHIP_RK322X 612e8078e90SKever Yang default 0xff700000 if ROCKCHIP_RK3288 613ade6d65fSZhihuan He default 0xfff80000 if ROCKCHIP_RK3308 614e8078e90SKever Yang default 0xff091000 if ROCKCHIP_RK3328 615e8078e90SKever Yang default 0xff8c0000 if ROCKCHIP_RK3368 616e8078e90SKever Yang default 0xff8c0000 if ROCKCHIP_RK3399 6177e26af38SJoseph Chen default 0xfdcc0000 if ROCKCHIP_RK3568 618e1cfe1c9SJoseph Chen default 0xff000000 if ROCKCHIP_RK3588 619e8078e90SKever Yang default 0x10080000 if ROCKCHIP_RV1108 620e7c03ac6SJoseph Chen default 0xff700000 if ROCKCHIP_RV1126 621e8078e90SKever Yang default 0 622e8078e90SKever Yang help 623e8078e90SKever Yang The IRAM start addr is to locate variant of the boot device from 624e8078e90SKever Yang bootrom. 625e8078e90SKever Yang 626fa1392a2SKever Yangconfig ROCKCHIP_SPL_RESERVE_IRAM 627fa1392a2SKever Yang hex "Size of IRAM reserved in SPL" 628b2870221SKever Yang default 0 629fa1392a2SKever Yang help 630fa1392a2SKever Yang SPL may need reserve memory for firmware loaded by SPL, whose load 631fa1392a2SKever Yang address is in IRAM and may overlay with SPL text area if not 632fa1392a2SKever Yang reserved. 633fa1392a2SKever Yang 6341d845947SHeiko Stübnerconfig ROCKCHIP_BROM_HELPER 6351d845947SHeiko Stübner bool 6361d845947SHeiko Stübner 637dff737c4SPhilipp Tomsichconfig SPL_ROCKCHIP_EARLYRETURN_TO_BROM 638dff737c4SPhilipp Tomsich bool "SPL requires early-return (for RK3188-style BROM) to BROM" 639dff737c4SPhilipp Tomsich depends on SPL && ENABLE_ARM_SOC_BOOT0_HOOK 640dff737c4SPhilipp Tomsich help 641dff737c4SPhilipp Tomsich Some Rockchip BROM variants (e.g. on the RK3188) load the 642dff737c4SPhilipp Tomsich first stage in segments and enter multiple times. E.g. on 643dff737c4SPhilipp Tomsich the RK3188, the first 1KB of the first stage are loaded 644dff737c4SPhilipp Tomsich first and entered; after returning to the BROM, the 645dff737c4SPhilipp Tomsich remainder of the first stage is loaded, but the BROM 646dff737c4SPhilipp Tomsich re-enters at the same address/to the same code as previously. 647dff737c4SPhilipp Tomsich 648dff737c4SPhilipp Tomsich This enables support code in the BOOT0 hook for the SPL stage 649dff737c4SPhilipp Tomsich to allow multiple entries. 650dff737c4SPhilipp Tomsich 651dff737c4SPhilipp Tomsichconfig TPL_ROCKCHIP_EARLYRETURN_TO_BROM 652dff737c4SPhilipp Tomsich bool "TPL requires early-return (for RK3188-style BROM) to BROM" 653dff737c4SPhilipp Tomsich depends on TPL && ENABLE_ARM_SOC_BOOT0_HOOK 654dff737c4SPhilipp Tomsich help 655dff737c4SPhilipp Tomsich Some Rockchip BROM variants (e.g. on the RK3188) load the 656dff737c4SPhilipp Tomsich first stage in segments and enter multiple times. E.g. on 657dff737c4SPhilipp Tomsich the RK3188, the first 1KB of the first stage are loaded 658dff737c4SPhilipp Tomsich first and entered; after returning to the BROM, the 659dff737c4SPhilipp Tomsich remainder of the first stage is loaded, but the BROM 660dff737c4SPhilipp Tomsich re-enters at the same address/to the same code as previously. 661dff737c4SPhilipp Tomsich 662dff737c4SPhilipp Tomsich This enables support code in the BOOT0 hook for the TPL stage 663dff737c4SPhilipp Tomsich to allow multiple entries. 664dff737c4SPhilipp Tomsich 665230e0e09SSandy Pattersonconfig SPL_MMC_SUPPORT 666f6fef99aSZiyuan Xu default y if !SPL_ROCKCHIP_BACK_TO_BROM && MMC 667230e0e09SSandy Patterson 66806621a79SKever Yangconfig RKIMG_BOOTLOADER 669aa1eec08SJoseph Chen bool "Support for Rockchip platform features" 670aa1eec08SJoseph Chen default y 67106621a79SKever Yang help 672aa1eec08SJoseph Chen Actually this is a compatible configure for code compilation. 67306621a79SKever Yang 674a7774f59SZhangbin Tongconfig RKIMG_ANDROID_BOOTMODE_LEGACY 675a7774f59SZhangbin Tong bool "Support set androidboot.mode with legacy rule" 676a7774f59SZhangbin Tong depends on RKIMG_BOOTLOADER 677a7774f59SZhangbin Tong default n 678a7774f59SZhangbin Tong help 679a7774f59SZhangbin Tong Rockchip set "androidboot.mode=" as "charger" or boot media for android, 680a7774f59SZhangbin Tong which is a rockchip private solution(SDK < 8.1) and deprecated. 681a7774f59SZhangbin Tong 68208dcd37cSAndy Yanconfig ROCKCHIP_RESOURCE_IMAGE 68308dcd37cSAndy Yan bool "Enable support for rockchip resource image" 684a12bbc34SJason Zhu depends on RKIMG_BOOTLOADER 685aae0febbSJoseph Chen default y 68608dcd37cSAndy Yan help 68708dcd37cSAndy Yan This enables support to get dtb or logo files from 68808dcd37cSAndy Yan rockchip resource image format partition. 68908dcd37cSAndy Yan 690e0cee412SJoseph Chenconfig ROCKCHIP_DTB_VERIFY 691e0cee412SJoseph Chen bool "Enable hash verify for DTB in the resource file" 692e0cee412SJoseph Chen depends on ROCKCHIP_RESOURCE_IMAGE 693e0cee412SJoseph Chen select SHA1 if !DM_CRYPTO 694e0cee412SJoseph Chen select SHA256 if !DM_CRYPTO 695e0cee412SJoseph Chen default y 696e0cee412SJoseph Chen help 697e0cee412SJoseph Chen This enables the hash verify for DTB in the resource file, it means we 698e0cee412SJoseph Chen always read DTB from second position even the DTB position is present. 699e0cee412SJoseph Chen 7000ed06f16SJoseph Chenconfig ROCKCHIP_USB_BOOT 7010ed06f16SJoseph Chen bool "Enable support for rockchip U-disk boot" 7020ed06f16SJoseph Chen depends on USB 7030ed06f16SJoseph Chen default n 7040ed06f16SJoseph Chen help 7050ed06f16SJoseph Chen This enables support for rockchip U-disk boot. 7060ed06f16SJoseph Chen 707059c50acSJoseph Chenconfig ROCKCHIP_FIT_IMAGE 708059c50acSJoseph Chen bool "Enable support for FIT image" 70901c76730SJoseph Chen depends on FIT 710059c50acSJoseph Chen select CMD_BOOT_FIT 711059c50acSJoseph Chen default n 712059c50acSJoseph Chen help 713059c50acSJoseph Chen This enables loading dtb from fit image. 714059c50acSJoseph Chen 715191c6877SJoseph Chenconfig ROCKCHIP_UIMAGE 716191c6877SJoseph Chen bool "Enable support for legacy uImage" 717191c6877SJoseph Chen depends on !FIT_SIGNATURE && USING_KERNEL_DTB 718191c6877SJoseph Chen select CMD_BOOT_UIMAGE 719191c6877SJoseph Chen default n 720191c6877SJoseph Chen help 721191c6877SJoseph Chen This enables loading dtb from uImage image. 722191c6877SJoseph Chen 723a0ceee92SJoseph Chenconfig ROCKCHIP_EARLY_DISTRO_DTB 724a0ceee92SJoseph Chen bool "Enable support for distro dtb early" 725bc4ccd53SJoseph Chen depends on DISTRO_DEFAULTS && USING_KERNEL_DTB && CMD_FS_GENERIC 726a0ceee92SJoseph Chen default n 727a0ceee92SJoseph Chen help 728a0ceee92SJoseph Chen This enables loading dtb from distro bootable partition when there 729a0ceee92SJoseph Chen is no valid dtb in android boot.img and rockchip resource.img. 730a0ceee92SJoseph Chen 731a0ceee92SJoseph Chenif ROCKCHIP_EARLY_DISTRO_DTB 732a0ceee92SJoseph Chen 733a0ceee92SJoseph Chenconfig ROCKCHIP_EARLY_DISTRO_DTB_PATH 734a0ceee92SJoseph Chen string "/rk-kernel.dtb" 735a0ceee92SJoseph Chen help 736a0ceee92SJoseph Chen "DTB file path in the bootable partition image" 737a0ceee92SJoseph Chenendif 738a0ceee92SJoseph Chen 739ca6fb291SJoseph Chenconfig ROCKCHIP_HWID_DTB 740ca6fb291SJoseph Chen bool "Enable support for selecting DTB by hardware id" 741ca6fb291SJoseph Chen depends on ROCKCHIP_RESOURCE_IMAGE 742ca6fb291SJoseph Chen default n 743ca6fb291SJoseph Chen help 744ca6fb291SJoseph Chen This enables select the expected DTB from sets by hardware id, 745ca6fb291SJoseph Chen i.e. GPIO or ADC value. 746ca6fb291SJoseph Chen 74791441457Sfrancis.fanconfig ROCKCHIP_VENDOR_PARTITION 7485bd6dc27SKever Yang bool "Rockchip vendor storage partition support" 7495bd6dc27SKever Yang depends on RKIMG_BOOTLOADER 75091441457Sfrancis.fan help 75191441457Sfrancis.fan This enable support to read/write vendor configuration data from/to 7525bd6dc27SKever Yang this partition. 75391441457Sfrancis.fan 754f8aaa2c2SKever Yangconfig USING_KERNEL_DTB 755f8aaa2c2SKever Yang bool "Using dtb from Kernel/resource for U-Boot" 756f8aaa2c2SKever Yang depends on RKIMG_BOOTLOADER && OF_LIVE 757f8aaa2c2SKever Yang default y 758f8aaa2c2SKever Yang help 759f8aaa2c2SKever Yang This enable support to read dtb from resource and use it for U-Boot, 760f8aaa2c2SKever Yang the uart and emmc will still using U-Boot dtb, but other devices like 761f8aaa2c2SKever Yang regulator/pmic, display, usb will use dts node from kernel. 762f8aaa2c2SKever Yang 76395eb462eSJoseph Chenconfig USING_KERNEL_DTB_V2 76495eb462eSJoseph Chen bool "Version 2 of kernel dtb mechanism" 76595eb462eSJoseph Chen depends on USING_KERNEL_DTB 76695eb462eSJoseph Chen default n 76795eb462eSJoseph Chen help 76895eb462eSJoseph Chen The V2 mechanism: 76995eb462eSJoseph Chen - both of U-Boot and kernel's *ALL* devices are exist in dm tree. 77095eb462eSJoseph Chen - put the necessary U-Boot devices in the head of device uclass list. 77195eb462eSJoseph Chen - the both existence policy don't require phandle fixup any more. 77295eb462eSJoseph Chen - it is for the next generation(rk3588 ...) or necessary platforms. 77395eb462eSJoseph Chen The V1 mechanism(legacy): 77495eb462eSJoseph Chen - U-Boot: only some necessary U-Boot devices(storage, crypto...) in dm tree. 77595eb462eSJoseph Chen - kernel: all the devices(except the U-Boot only) in dm tree. 77695eb462eSJoseph Chen 77703781805SJoseph Chenconfig EMBED_KERNEL_DTB_PATH 778abfd1c5eSJoseph Chen string "Embeded kernel dtb file path" 779abfd1c5eSJoseph Chen depends on USING_KERNEL_DTB 780abfd1c5eSJoseph Chen default "dts/kern.dtb" 78103781805SJoseph Chen help 78203781805SJoseph Chen This file will auto be appended to the u-boot.bin. 78303781805SJoseph Chen 78403781805SJoseph Chenconfig EMBED_KERNEL_DTB_ALWAYS 78503781805SJoseph Chen bool "Always using embed kernel dtb" 78603781805SJoseph Chen depends on USING_KERNEL_DTB 78703781805SJoseph Chen default n 78803781805SJoseph Chen help 78903781805SJoseph Chen Allow fallback to always use a prepared kernel dtb even USING_KERNEL_DTB 79003781805SJoseph Chen is set. This makes U-Boot stage more stable but not flexible any more to 79103781805SJoseph Chen compatible different boards. 792abfd1c5eSJoseph Chen 793882c7251SJoseph Chenconfig ROCKCHIP_CRC 794882c7251SJoseph Chen bool "Rockchip CRC verify images" 795882c7251SJoseph Chen help 796882c7251SJoseph Chen This enable support Rockchip CRC verify images. It takes a lot of time, 797882c7251SJoseph Chen so it is better only used for debug. 798882c7251SJoseph Chen 799f270a3f8SJoseph Chenconfig ROCKCHIP_SMCCC 800f270a3f8SJoseph Chen bool "Rockchip SMCCC" 801f270a3f8SJoseph Chen default y if ARM_SMCCC 802f270a3f8SJoseph Chen help 803f270a3f8SJoseph Chen This enable support for Rockchip SMC calls 804f270a3f8SJoseph Chen 805c563adc7SJoseph Chenconfig ROCKCHIP_DEBUGGER 806c563adc7SJoseph Chen bool "Rockchip debugger" 807c563adc7SJoseph Chen depends on IRQ 808c563adc7SJoseph Chen help 809c563adc7SJoseph Chen This enable support for Rockchip debugger. Now we install a timer interrupt 810c563adc7SJoseph Chen and dump pt_regs when the timeout event trigger. This helps us to know cpu 811c563adc7SJoseph Chen state when system hang. 812c563adc7SJoseph Chen 81324cd8f36SJoseph Chenconfig ROCKCHIP_CRASH_DUMP 81424cd8f36SJoseph Chen bool "Rockchip crash dump registers" 81524cd8f36SJoseph Chen help 81624cd8f36SJoseph Chen This enable dump registers when system crash, the registers you would like 81724cd8f36SJoseph Chen to dump can be added in show_regs(). 81824cd8f36SJoseph Chen 819dc490422SJoseph Chenconfig ROCKCHIP_PRELOADER_ATAGS 820dc490422SJoseph Chen bool "Rockchip pre-loader atags" 821dc490422SJoseph Chen default y if ARCH_ROCKCHIP 822dc490422SJoseph Chen help 823dc490422SJoseph Chen This enable support Rockchip atags among pre-loaders, i.e. ddr, miniloader, ATF, 824dc490422SJoseph Chen tos, U-Boot, etc. It delivers boot and configure information, shared with pre-loaders 825dc490422SJoseph Chen and finally ends with U-Boot. 826dc490422SJoseph Chen 827064eb493SJoseph Chenconfig ROCKCHIP_PRELOADER_SERIAL 828064eb493SJoseph Chen bool "Rockchip pre-loader serial" 829064eb493SJoseph Chen default y if ROCKCHIP_PRELOADER_ATAGS 830064eb493SJoseph Chen help 831064eb493SJoseph Chen This enable U-Boot using pre-loader atags serial configure to initialize console. 832064eb493SJoseph Chen It denpends on serial aliases to find pre-loader serial number. 833064eb493SJoseph Chen 834b9e68cc3SJoseph Chenconfig ROCKCHIP_FIT_IMAGE_PACK 835b9e68cc3SJoseph Chen bool "Rockchip fit image pack of U-Boot and TEE" 8361392e218SJoseph Chen depends on ROCKCHIP_FIT_IMAGE 837b9e68cc3SJoseph Chen default n 838b9e68cc3SJoseph Chen help 839b9e68cc3SJoseph Chen This enable fit image pack of U-Boot and TEE, it's used for make.sh script. 840b9e68cc3SJoseph Chen 8419994e220SYouMin Chenconfig ROCKCHIP_UART_MUX_SEL_M 8429994e220SYouMin Chen int "UART mux select" 8439994e220SYouMin Chen default 0 8449994e220SYouMin Chen depends on TPL 8459994e220SYouMin Chen help 8469994e220SYouMin Chen This select uart multiplexer for debug uart iomux in board_debug_uart_init. 8479994e220SYouMin Chen 848a225402cSJoseph Chenconfig ROCKCHIP_REBOOT_TEST 849a225402cSJoseph Chen bool "Rockchip reboot stress test before kernel" 850a225402cSJoseph Chen default n 851a225402cSJoseph Chen help 852a225402cSJoseph Chen It's a reboot stress test before kernel stages. 853a225402cSJoseph Chen 85461507290SJoseph Chenconfig ROCKCHIP_NEW_IDB 85561507290SJoseph Chen bool "Rockchip new IDB header" 85661507290SJoseph Chen default n 85761507290SJoseph Chen help 85861507290SJoseph Chen The new IDB header was introduced from RK356X. 85961507290SJoseph Chen 860a93252dfSJoseph Chenconfig GICV2 861a93252dfSJoseph Chen bool "ARM GICv2" 862a93252dfSJoseph Chen 863a93252dfSJoseph Chenconfig GICV3 864a93252dfSJoseph Chen bool "ARM GICv3" 865a93252dfSJoseph Chen 8665f10b846SYifeng Zhaoconfig ROCKCHIP_EMMC_IOMUX 8675f10b846SYifeng Zhao bool "ROCKCHIP EMMC IOMUX" 8685f10b846SYifeng Zhao default n 8695f10b846SYifeng Zhao help 8705f10b846SYifeng Zhao This enable U-Boot to config EMMC iomux. 8715f10b846SYifeng Zhao 8725f10b846SYifeng Zhaoconfig ROCKCHIP_NAND_IOMUX 8735f10b846SYifeng Zhao bool "ROCKCHIP NAND IOMUX" 8745f10b846SYifeng Zhao default n 8755f10b846SYifeng Zhao help 8765f10b846SYifeng Zhao This enable U-Boot to config NAND iomux. 8775f10b846SYifeng Zhao 8785f10b846SYifeng Zhaoconfig ROCKCHIP_SFC_IOMUX 8795f10b846SYifeng Zhao bool "ROCKCHIP SFC IOMUX" 8805f10b846SYifeng Zhao default n 8815f10b846SYifeng Zhao help 8825f10b846SYifeng Zhao This enable U-Boot to config SFC iomux. 8835f10b846SYifeng Zhao 884c6d55e4aSJoseph Chenconfig BASE_DEFCONFIG 885c6d55e4aSJoseph Chen string "Base defconfig of config fragment" 886c6d55e4aSJoseph Chen default "" 887c6d55e4aSJoseph Chen help 888c6d55e4aSJoseph Chen Indicate the base defconfig of config fragment. 889c6d55e4aSJoseph Chen 890c6d55e4aSJoseph Chenconfig CHIP_NAME 891c6d55e4aSJoseph Chen string "Chip label name" 892c6d55e4aSJoseph Chen default "" 893c6d55e4aSJoseph Chen 894c6d55e4aSJoseph Chenconfig LOADER_INI 895c6d55e4aSJoseph Chen string "Name of Loader ini file in rkbin repository" 896c6d55e4aSJoseph Chen default "" 897c6d55e4aSJoseph Chen help 898c6d55e4aSJoseph Chen The ini file is used to pack loader image. 899c6d55e4aSJoseph Chen 900c6d55e4aSJoseph Chenconfig TRUST_INI 901c6d55e4aSJoseph Chen string "Name of Trust ini file in rkbin repository" 902c6d55e4aSJoseph Chen default "" 903c6d55e4aSJoseph Chen help 904c6d55e4aSJoseph Chen The ini file is used to pack trust image. 905c6d55e4aSJoseph Chen 906b2d5967aSJoseph Chenif !ROCKCHIP_FIT_IMAGE_PACK 907c6d55e4aSJoseph Chenconfig UBOOT_SIZE_KB 908c6d55e4aSJoseph Chen int "Per u-boot.bin Image size, unit: KB" 909c6d55e4aSJoseph Chen default 1024 910c6d55e4aSJoseph Chen 911c6d55e4aSJoseph Chenconfig UBOOT_NUM 912c6d55e4aSJoseph Chen int "Number of u-boot.bin image being packed into trust.img" 913c6d55e4aSJoseph Chen default 4 914c6d55e4aSJoseph Chen 915c6d55e4aSJoseph Chenconfig TRUST_SIZE_KB 916c6d55e4aSJoseph Chen int "Per trust Image size, unit: KB" 917c6d55e4aSJoseph Chen default 2048 918c6d55e4aSJoseph Chen 919c6d55e4aSJoseph Chenconfig TRUST_NUM 920c6d55e4aSJoseph Chen int "Number of trust image being packed into trust.img" 921c6d55e4aSJoseph Chen default 2 922c6d55e4aSJoseph Chen 923c6d55e4aSJoseph Chenconfig TRUST_RSA_MODE 924c6d55e4aSJoseph Chen int "RSA mode of trust.img on ARM64" 925c6d55e4aSJoseph Chen default 2 926c6d55e4aSJoseph Chen help 927c6d55e4aSJoseph Chen The RSA mode for tools to pack, the mode id can be: 928c6d55e4aSJoseph Chen 0: none; 1: RSA-1024; 2: RSA-2048; 3: RSA-2048-pss. 929c6d55e4aSJoseph Chen 930c6d55e4aSJoseph Chenconfig TRUST_SHA_MODE 931c6d55e4aSJoseph Chen int "SHA mode of trust.img on ARM64" 932c6d55e4aSJoseph Chen default 3 933c6d55e4aSJoseph Chen help 934c6d55e4aSJoseph Chen The SHA mode for tools to pack, the mode id can be: 935c6d55e4aSJoseph Chen 0: none; 1: sha1; 2: sha256 RK big endian; 3: sha256 little endian. 936b2d5967aSJoseph Chenendif 937c6d55e4aSJoseph Chen 938448a4b38SKever Yangsource "arch/arm/mach-rockchip/px30/Kconfig" 939be1d5e03Shuang linsource "arch/arm/mach-rockchip/rk3036/Kconfig" 940578306eaSPaweł Jaroszsource "arch/arm/mach-rockchip/rk3066/Kconfig" 9416a13bde3SKever Yangsource "arch/arm/mach-rockchip/rk3128/Kconfig" 9420a2be69fSHeiko Stübnersource "arch/arm/mach-rockchip/rk3188/Kconfig" 943b24a8ec1SKever Yangsource "arch/arm/mach-rockchip/rk322x/Kconfig" 944041cdb5fSHeiko Stübnersource "arch/arm/mach-rockchip/rk3288/Kconfig" 945c1e43163SAndy Yansource "arch/arm/mach-rockchip/rk3308/Kconfig" 94685a3cfb8SKever Yangsource "arch/arm/mach-rockchip/rk3328/Kconfig" 94737a0c600SAndreas Färbersource "arch/arm/mach-rockchip/rk3368/Kconfig" 948a381bcf5SKever Yangsource "arch/arm/mach-rockchip/rk3399/Kconfig" 9497e26af38SJoseph Chensource "arch/arm/mach-rockchip/rk3568/Kconfig" 950e1cfe1c9SJoseph Chensource "arch/arm/mach-rockchip/rk3588/Kconfig" 9518870d6b7SJoseph Chensource "arch/arm/mach-rockchip/rk1808/Kconfig" 9522c1e11ddSAndy Yansource "arch/arm/mach-rockchip/rv1108/Kconfig" 953e7c03ac6SJoseph Chensource "arch/arm/mach-rockchip/rv1126/Kconfig" 9540dc03778SJoseph Chen 9552444dae5SSimon Glassendif 956