1if ARCH_ROCKCHIP 2 3config ROCKCHIP_PX30 4 bool "Support Rockchip PX30" 5 select ARM64 if !ARM64_BOOT_AARCH32 6 select GICV2 7 select ARM_SMCCC 8 select SUPPORT_SPL 9 select SUPPORT_TPL 10 select SPL if !ARM64_BOOT_AARCH32 11 select TPL if !ARM64_BOOT_AARCH32 12 select TPL_TINY_FRAMEWORK if TPL 13 14 imply SPL_SEPARATE_BSS 15 imply SPL_SERIAL_SUPPORT 16 imply TPL_SERIAL_SUPPORT 17 help 18 The Rockchip PX30 is a ARM-based SoC with a quad-core Cortex-A35 19 including NEON and GPU, Mali-400 graphics, several DDR3 options 20 and video codec support. Peripherals include Gigabit Ethernet, 21 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 22 23if ROCKCHIP_PX30 24 25config TPL_LDSCRIPT 26 default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 27 28config TPL_TEXT_BASE 29 default 0xff0e1000 30 31config TPL_MAX_SIZE 32 default 10240 33 34config ROCKCHIP_RK3326 35 bool "Support Rockchip RK3326 " 36 help 37 RK3326 can use most code from PX30, but at some situations we have 38 to distinguish between RK3326 and PX30, so this macro gives help. 39 It is usually selected in rk3326 board defconfig. 40endif 41 42config ROCKCHIP_RK3036 43 bool "Support Rockchip RK3036" 44 select CPU_V7 45 select SUPPORT_SPL 46 select SUPPORT_TPL 47 select SPL 48 select TPL 49 select BOARD_LATE_INIT 50 select ROCKCHIP_BROM_HELPER 51 select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 52 select TPL_NEEDS_SEPARATE_STACK if TPL 53 select ARM_SMCCC 54 help 55 The Rockchip RK3036 is a ARM-based SoC with a dual-core Cortex-A7 56 including NEON and GPU, Mali-400 graphics, several DDR3 options 57 and video codec support. Peripherals include Gigabit Ethernet, 58 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 59 60config ROCKCHIP_RK3128 61 bool "Support Rockchip RK3128" 62 select CPU_V7 63 select GICV2 64 select ARM_SMCCC 65 help 66 The Rockchip RK3128 is a ARM-based SoC with a quad-core Cortex-A7 67 including NEON and GPU, Mali-400 graphics, several DDR3 options 68 and video codec support. Peripherals include Gigabit Ethernet, 69 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 70 71if ROCKCHIP_RK3128 72 73config ROCKCHIP_RK3126 74 bool "Support Rockchip RK3126 " 75 help 76 RK3126 can use most code from RK3128, but at some situations we have 77 to distinguish between RK3126 and RK3128, so this macro gives help. 78 It is usually selected in rk3126 board defconfig. 79 80config ROCKCHIP_PX3SE 81 bool "Support Rockchip PX3SE" 82 help 83 PX3SE is a variant of RK3128, it shares codes with RK3128, but we still 84 need this macro to distinguish PX3SE and RK3128. 85endif 86 87config ROCKCHIP_RK3066 88 bool "Support Rockchip RK3066" 89 select CPU_V7 90 select SUPPORT_SPL 91 select SUPPORT_TPL 92 select SPL 93 select TPL 94 select BOARD_LATE_INIT 95 select ROCKCHIP_BROM_HELPER 96 select SPL_ROCKCHIP_EARLYRETURN_TO_BROM 97 help 98 The Rockchip RK3066 is a ARM-based SoC with a dual-core Cortex-A9 99 including NEON and GPU, Mali-400 graphics, several DDR3 options 100 and video codec support. Peripherals include ethernet, USB2 host 101 and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 102 103config ROCKCHIP_RK3188 104 bool "Support Rockchip RK3188" 105 select CPU_V7 106 select SPL_BOARD_INIT if SPL 107 select SUPPORT_SPL 108 select SPL 109 select SPL_CLK 110 select SPL_REGMAP 111 select SPL_SYSCON 112 select SPL_RAM 113 select SPL_DRIVERS_MISC_SUPPORT 114 select SPL_ROCKCHIP_EARLYRETURN_TO_BROM 115 select BOARD_LATE_INIT 116 select ROCKCHIP_BROM_HELPER 117 help 118 The Rockchip RK3188 is a ARM-based SoC with a quad-core Cortex-A9 119 including NEON and GPU, 512KB L2 cache, Mali-400 graphics, two 120 video interfaces, several memory options and video codec support. 121 Peripherals include Fast Ethernet, USB2 host and OTG, SDIO, I2S, 122 UART, SPI, I2C and PWMs. 123 124config ROCKCHIP_RK322X 125 bool "Support Rockchip RK3228/RK3229" 126 select CPU_V7 127 select SUPPORT_SPL 128 select SUPPORT_TPL 129 select SPL 130 select TPL 131 select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL 132 select TPL_NEEDS_SEPARATE_STACK if TPL 133 select SPL_DRIVERS_MISC_SUPPORT 134 imply SPL_SERIAL_SUPPORT 135 imply TPL_SERIAL_SUPPORT 136 select ROCKCHIP_BROM_HELPER 137 select TPL_LIBCOMMON_SUPPORT 138 select TPL_LIBGENERIC_SUPPORT 139 select GICV2 140 select ARM_SMCCC 141 help 142 The Rockchip RK3229 is a ARM-based SoC with a dual-core Cortex-A7 143 including NEON and GPU, Mali-400 graphics, several DDR3 options 144 and video codec support. Peripherals include Gigabit Ethernet, 145 USB2 host and OTG, SDIO, I2S, UART, SPI, I2C and PWMs. 146 147if ROCKCHIP_RK322X 148 149config ROCKCHIP_RK3128X 150 bool "Support Rockchip RK3128X " 151 help 152 RK3128X can use most code from RK322X, but at some situations we have 153 to distinguish between RK3128X and RK322X, so this macro gives help. 154 It is usually selected in RK3128X board defconfig. 155endif 156 157config ROCKCHIP_RK3288 158 bool "Support Rockchip RK3288" 159 select CPU_V7 160 select SPL_BOARD_INIT if SPL 161 select SUPPORT_SPL 162 select SUPPORT_TPL 163 select SPL 164 select TPL 165 select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 166 select TPL_NEEDS_SEPARATE_STACK if TPL 167 imply TPL_SERIAL_SUPPORT 168 select GICV2 169 select ARM_SMCCC 170 select SPL_OPTEE 171 select FIT 172 select SPL_LOAD_FIT 173 select TPL_LIBCOMMON_SUPPORT 174 select TPL_LIBGENERIC_SUPPORT 175 select TPL_SYS_MALLOC_SIMPLE 176 select TPL_BOOTROM_SUPPORT 177 select TPL_DRIVERS_MISC_SUPPORT 178 select TPL_OF_CONTROL 179 select TPL_DM 180 select TPL_REGMAP 181 select TPL_SYSCON 182 select TPL_RAM 183 select TPL_CLK 184 select TPL_TINY_MEMSET 185 help 186 The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17 187 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 188 video interfaces supporting HDMI and eDP, several DDR3 options 189 and video codec support. Peripherals include Gigabit Ethernet, 190 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 191 192if ROCKCHIP_RK3288 193config SPL_FIT_GENERATOR 194 default "arch/arm/mach-rockchip/make_fit_optee.sh" 195 196config TPL_LDSCRIPT 197 default "arch/arm/mach-rockchip/u-boot-tpl.lds" 198 199config TPL_TEXT_BASE 200 default 0xff704000 201 202config TPL_MAX_SIZE 203 default 32768 204 205config TPL_STACK 206 default 0xff718000 207 208endif 209 210config ROCKCHIP_RK3308 211 bool "Support Rockchip RK3308" 212 select ARM64 if !ARM64_BOOT_AARCH32 213 select ARM_SMCCC 214 select GICV2 215 select SUPPORT_SPL if !ARM64_BOOT_AARCH32 216 select SUPPORT_TPL if !ARM64_BOOT_AARCH32 217 select SPL if !ARM64_BOOT_AARCH32 218 select TPL if !ARM64_BOOT_AARCH32 219 imply SPL_CLK 220 imply SPL_REGMAP 221 imply SPL_SYSCON 222 imply SPL_RAM 223 imply SPL_SERIAL_SUPPORT 224 imply TPL_SERIAL_SUPPORT 225 imply SPL_SEPARATE_BSS 226 help 227 The Rockchip RK3308 is a ARM-based Soc which embeded with quad 228 Cortex-A35 and highly integrated audio interfaces. 229 230if ROCKCHIP_RK3308 231 232config TPL_LDSCRIPT 233 default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 234 235config TPL_TEXT_BASE 236 default 0xfff81000 237 238config TPL_MAX_SIZE 239 default 10240 240 241config TPL_STACK 242 default 0xfff84000 243 244endif 245 246config ROCKCHIP_RK3328 247 bool "Support Rockchip RK3328" 248 select ARM64 249 select GICV2 250 select SUPPORT_SPL 251 select SUPPORT_TPL 252 select SPL 253 select TPL 254 select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 255 select TPL_NEEDS_SEPARATE_STACK if TPL 256 imply SPL_SERIAL_SUPPORT 257 imply TPL_SERIAL_SUPPORT 258 imply SPL_SEPARATE_BSS 259 select ARM_SMCCC 260 help 261 The Rockchip RK3328 is a ARM-based SoC with a quad-core Cortex-A53. 262 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 263 video interfaces supporting HDMI and eDP, several DDR3 options 264 and video codec support. Peripherals include Gigabit Ethernet, 265 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 266 267if ROCKCHIP_RK3328 268 269config TPL_LDSCRIPT 270 default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 271 272config TPL_TEXT_BASE 273 default 0xff091000 274 275config TPL_MAX_SIZE 276 default 28672 277 278config TPL_STACK 279 default 0xff098000 280 281endif 282 283config ROCKCHIP_RK3368 284 bool "Support Rockchip RK3368" 285 select ARM64 286 select SUPPORT_SPL 287 select SUPPORT_TPL 288 select TPL_NEEDS_SEPARATE_TEXT_BASE if SPL 289 select TPL_NEEDS_SEPARATE_STACK if TPL 290 imply SPL_SEPARATE_BSS 291 imply SPL_SERIAL_SUPPORT 292 imply TPL_SERIAL_SUPPORT 293 select GICV2 294 select ARM_SMCCC 295 help 296 The Rockchip RK3368 is a ARM-based SoC with a octa-core (organised 297 into a big and little cluster with 4 cores each) Cortex-A53 including 298 AdvSIMD, 512KB L2 cache (for the big cluster) and 256 KB L2 cache 299 (for the little cluster), PowerVR G6110 based graphics, one video 300 output processor supporting LVDS/HDMI/eDP, several DDR3 options and 301 video codec support. 302 303 On-chip peripherals include Gigabit Ethernet, USB2 host and OTG, SDIO, 304 I2S, UARTs, SPI, I2C and PWMs. 305 306if ROCKCHIP_RK3368 307 308config ROCKCHIP_PX5 309 bool "Support Rockchip PX5" 310 help 311 PX5 is a variant of RK3368, it shares codes with RK3368, but we still 312 need this macro to distinguish PX5 and RK3368. 313 314config TPL_LDSCRIPT 315 default "arch/arm/mach-rockchip/rk3368/u-boot-tpl.lds" 316 317config TPL_TEXT_BASE 318 default 0xff8c1000 319 320config TPL_MAX_SIZE 321 default 28672 322 323config TPL_STACK 324 default 0xff8cffff 325 326endif 327 328config ROCKCHIP_RK3399 329 bool "Support Rockchip RK3399" 330 select ARM64 331 select SUPPORT_SPL 332 select SUPPORT_TPL 333 select SPL 334 select TPL 335 select TPL_NEEDS_SEPARATE_TEXT_BASE if TPL 336 select TPL_NEEDS_SEPARATE_STACK if TPL 337 imply TPL_SERIAL_SUPPORT 338 select SPL_SEPARATE_BSS 339 select SPL_SERIAL_SUPPORT 340 select SPL_DRIVERS_MISC_SUPPORT 341 select GICV3 342 select BOARD_LATE_INIT 343 select ROCKCHIP_BROM_HELPER 344 select ARM_SMCCC 345 select TPL_LIBCOMMON_SUPPORT 346 select TPL_LIBGENERIC_SUPPORT 347 select TPL_SYS_MALLOC_SIMPLE 348 select TPL_BOOTROM_SUPPORT 349 select TPL_DRIVERS_MISC_SUPPORT 350 select TPL_OF_CONTROL 351 select TPL_DM 352 select TPL_REGMAP 353 select TPL_SYSCON 354 select TPL_RAM 355 select TPL_CLK 356 select TPL_TINY_MEMSET 357 help 358 The Rockchip RK3399 is a ARM-based SoC with a dual-core Cortex-A72 359 and quad-core Cortex-A53. 360 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two 361 video interfaces supporting HDMI and eDP, several DDR3 options 362 and video codec support. Peripherals include Gigabit Ethernet, 363 USB2 host and OTG, SDIO, I2S, UARTs, SPI, I2C and PWMs. 364 365if ROCKCHIP_RK3399 366 367config ROCKCHIP_RK3399PRO 368 bool "Support Rockchip RK3399Pro" 369 370config TPL_LDSCRIPT 371 default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 372 373config TPL_TEXT_BASE 374 default 0xff8c2000 375 376config TPL_MAX_SIZE 377 default 188416 378 379config TPL_STACK 380 default 0xff8effff 381 382endif 383 384config ROCKCHIP_RK3568 385 bool "Support Rockchip RK3568" 386 select ARM64 if !ARM64_BOOT_AARCH32 387 select ARM_SMCCC 388 select GICV3 if !ARM64_BOOT_AARCH32 && !SUPPORT_USBPLUG 389 select SUPPORT_TPL if !ARM64_BOOT_AARCH32 390 select SUPPORT_SPL if !ARM64_BOOT_AARCH32 391 select TPL_TINY_FRAMEWORK if TPL 392 select DEBUG_UART_BOARD_INIT 393 imply TPL if !ARM64_BOOT_AARCH32 394 imply SPL if !ARM64_BOOT_AARCH32 395 imply TPL_SERIAL_SUPPORT 396 help 397 The Rockchip RK3568 is a ARM-based SoC with a quad-core Cortex-A55. 398 399if ROCKCHIP_RK3568 400 401config TPL_LDSCRIPT 402 default "arch/arm/mach-rockchip/u-boot-tpl-v8.lds" 403 404config TPL_TEXT_BASE 405 default 0xfdcc1000 406 407config TPL_MAX_SIZE 408 default 61440 409 410endif 411 412config ROCKCHIP_RK1808 413 bool "Support Rockchip RK1808" 414 select ARM64 415 select ARM_SMCCC 416 select GICV3 if !COPROCESSOR_RK1808 417 select SUPPORT_SPL if !COPROCESSOR_RK1808 418 select SUPPORT_TPL if !COPROCESSOR_RK1808 419 help 420 The Rockchip RK1808 is a ARM-based Soc which embedded with dual 421 Cortex-A35. 422 423if ROCKCHIP_RK1808 424 425config ROCKCHIP_RK1806 426 bool "Support Rockchip RK1806" 427 help 428 The Rockchip RK1806 is a ARM-based Soc which embedded with dual 429 Cortex-A35. 430 431config COPROCESSOR_RK1808 432 bool "RK1808 coprocessor" 433 help 434 This indicates the RK1808 is working as a coprocessor for another 435 more powerful SoC. 436 437endif 438 439config ROCKCHIP_RV1108 440 bool "Support Rockchip RV1108" 441 select CPU_V7 442 select SUPPORT_SPL 443 select SUPPORT_TPL 444 select SPL 445 select TPL 446 select BOARD_LATE_INIT 447 help 448 The Rockchip RV1108 is a ARM-based SoC with a single-core Cortex-A7 449 and a DSP. 450 451if ROCKCHIP_RV1108 452 453config TPL_LDSCRIPT 454 default "arch/arm/mach-rockchip/u-boot-tpl.lds" 455 456config TPL_TEXT_BASE 457 default 0x10080800 458 459config TPL_MAX_SIZE 460 default 6144 461 462config TPL_STACK 463 default 0x10082000 464 465endif 466 467config ROCKCHIP_RV1126 468 bool "Support Rockchip RV1126" 469 select CPU_V7 470 select SUPPORT_TPL 471 select SUPPORT_SPL 472 select TPL_TINY_FRAMEWORK if TPL 473 select DEBUG_UART_BOARD_INIT 474 imply TPL 475 imply SPL 476 imply GICV2 477 imply ARM_SMCCC 478 imply BOARD_LATE_INIT 479 imply ROCKCHIP_GPIO_V2 480 imply TPL_SERIAL_SUPPORT 481 help 482 The Rockchip RV1126 is a ARM-based SoC with a quad-core Cortex-A7 483 and a risc-v core. 484 485if ROCKCHIP_RV1126 486 487config TPL_LDSCRIPT 488 default "arch/arm/mach-rockchip/u-boot-tpl.lds" 489 490config TPL_TEXT_BASE 491 default 0xff701000 492 493config TPL_MAX_SIZE 494 default 32768 495endif 496 497config SPL_ROCKCHIP_BACK_TO_BROM 498 bool "SPL returns to bootrom" 499 default y if ROCKCHIP_RK3036 500 select ROCKCHIP_BROM_HELPER 501 depends on SPL 502 help 503 Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled, 504 SPL will return to the boot rom, which will then load the U-Boot 505 binary to keep going on. 506 507config TPL_ROCKCHIP_BACK_TO_BROM 508 bool "TPL returns to bootrom" 509 default y 510 select ROCKCHIP_BROM_HELPER 511 depends on TPL 512 help 513 Rockchip SoCs have ability to load SPL & U-Boot binary. If enabled, 514 SPL will return to the boot rom, which will then load the U-Boot 515 binary to keep going on. 516 517config ARM64_BOOT_AARCH32 518 bool "Support Boot an ARM64 on AArch32 execution state" 519 select CPU_V7 520 default n 521 help 522 If you want to boot an ARM64 processor on 32-bit mode, say y here. 523 524config ROCKCHIP_BOOT_MODE_REG 525 hex "Rockchip boot mode flag register address" 526 default 0xff010200 if ROCKCHIP_PX30 527 default 0x200081c8 if ROCKCHIP_RK3036 528 default 0x100a0038 if ROCKCHIP_RK3128 529 default 0x20004040 if ROCKCHIP_RK3188 530 default 0x110005c8 if ROCKCHIP_RK322X 531 default 0xff730094 if ROCKCHIP_RK3288 532 default 0xff000500 if ROCKCHIP_RK3308 533 default 0xff1005c8 if ROCKCHIP_RK3328 534 default 0xff738200 if ROCKCHIP_RK3368 535 default 0xff320300 if ROCKCHIP_RK3399 536 default 0xfdc20200 if ROCKCHIP_RK3568 537 default 0xfe020200 if ROCKCHIP_RK1808 538 default 0x10300580 if ROCKCHIP_RV1108 539 default 0xfe020200 if ROCKCHIP_RV1126 540 default 0 541 help 542 The Soc will enter to different boot mode(defined in asm/arch/boot_mode.h) 543 according to the value from this register. 544 545config ROCKCHIP_STIMER_BASE 546 hex "Rockchip Secure timer base address" 547 default 0xff220020 if ROCKCHIP_PX30 548 default 0x200440a0 if ROCKCHIP_RK3036 549 default 0x2000e000 if ROCKCHIP_RK3066 550 default 0x20018020 if ROCKCHIP_RK3126 551 default 0x200440a0 if ROCKCHIP_RK3128 552 default 0x2000e000 if ROCKCHIP_RK3188 553 default 0x110d0020 if ROCKCHIP_RK322X 554 default 0xff810020 if ROCKCHIP_RK3288 555 default 0xff1b00a0 if ROCKCHIP_RK3308 556 default 0xff1d0020 if ROCKCHIP_RK3328 557 default 0xff830020 if ROCKCHIP_RK3368 558 default 0xff8680a0 if ROCKCHIP_RK3399 559 default 0xfdd1c020 if ROCKCHIP_RK3568 560 default 0x10350020 if ROCKCHIP_RV1108 561 default 0xff670020 if ROCKCHIP_RV1126 562 default 0 563 help 564 The secure timer inited in SPL/TPL in secure word, ARM generic timer 565 works after this timer work. 566 567config ROCKCHIP_IRAM_START_ADDR 568 hex "Rockchip Secure timer base address" 569 default 0xff0e0000 if ROCKCHIP_PX30 570 default 0x10080000 if ROCKCHIP_RK3036 571 default 0x10080000 if ROCKCHIP_RK3128 572 default 0x10080000 if ROCKCHIP_RK3188 573 default 0x10080000 if ROCKCHIP_RK322X 574 default 0xff700000 if ROCKCHIP_RK3288 575 default 0xfff80000 if ROCKCHIP_RK3308 576 default 0xff091000 if ROCKCHIP_RK3328 577 default 0xff8c0000 if ROCKCHIP_RK3368 578 default 0xff8c0000 if ROCKCHIP_RK3399 579 default 0xfdcc0000 if ROCKCHIP_RK3568 580 default 0x10080000 if ROCKCHIP_RV1108 581 default 0xff700000 if ROCKCHIP_RV1126 582 default 0 583 help 584 The IRAM start addr is to locate variant of the boot device from 585 bootrom. 586 587config ROCKCHIP_SPL_RESERVE_IRAM 588 hex "Size of IRAM reserved in SPL" 589 default 0 590 help 591 SPL may need reserve memory for firmware loaded by SPL, whose load 592 address is in IRAM and may overlay with SPL text area if not 593 reserved. 594 595config ROCKCHIP_BROM_HELPER 596 bool 597 598config SPL_ROCKCHIP_EARLYRETURN_TO_BROM 599 bool "SPL requires early-return (for RK3188-style BROM) to BROM" 600 depends on SPL && ENABLE_ARM_SOC_BOOT0_HOOK 601 help 602 Some Rockchip BROM variants (e.g. on the RK3188) load the 603 first stage in segments and enter multiple times. E.g. on 604 the RK3188, the first 1KB of the first stage are loaded 605 first and entered; after returning to the BROM, the 606 remainder of the first stage is loaded, but the BROM 607 re-enters at the same address/to the same code as previously. 608 609 This enables support code in the BOOT0 hook for the SPL stage 610 to allow multiple entries. 611 612config TPL_ROCKCHIP_EARLYRETURN_TO_BROM 613 bool "TPL requires early-return (for RK3188-style BROM) to BROM" 614 depends on TPL && ENABLE_ARM_SOC_BOOT0_HOOK 615 help 616 Some Rockchip BROM variants (e.g. on the RK3188) load the 617 first stage in segments and enter multiple times. E.g. on 618 the RK3188, the first 1KB of the first stage are loaded 619 first and entered; after returning to the BROM, the 620 remainder of the first stage is loaded, but the BROM 621 re-enters at the same address/to the same code as previously. 622 623 This enables support code in the BOOT0 hook for the TPL stage 624 to allow multiple entries. 625 626config SPL_MMC_SUPPORT 627 default y if !SPL_ROCKCHIP_BACK_TO_BROM 628 629config RKIMG_BOOTLOADER 630 bool "Support for Rockchip platform features" 631 default y 632 help 633 Actually this is a compatible configure for code compilation. 634 635config RKIMG_ANDROID_BOOTMODE_LEGACY 636 bool "Support set androidboot.mode with legacy rule" 637 depends on RKIMG_BOOTLOADER 638 default n 639 help 640 Rockchip set "androidboot.mode=" as "charger" or boot media for android, 641 which is a rockchip private solution(SDK < 8.1) and deprecated. 642 643config ROCKCHIP_RESOURCE_IMAGE 644 bool "Enable support for rockchip resource image" 645 depends on RKIMG_BOOTLOADER 646 default y 647 help 648 This enables support to get dtb or logo files from 649 rockchip resource image format partition. 650 651config ROCKCHIP_DTB_VERIFY 652 bool "Enable hash verify for DTB in the resource file" 653 depends on ROCKCHIP_RESOURCE_IMAGE 654 select SHA1 if !DM_CRYPTO 655 select SHA256 if !DM_CRYPTO 656 default y 657 help 658 This enables the hash verify for DTB in the resource file, it means we 659 always read DTB from second position even the DTB position is present. 660 661config ROCKCHIP_USB_BOOT 662 bool "Enable support for rockchip U-disk boot" 663 depends on USB 664 default n 665 help 666 This enables support for rockchip U-disk boot. 667 668config ROCKCHIP_FIT_IMAGE 669 bool "Enable support for FIT image" 670 depends on FIT && USING_KERNEL_DTB 671 select CMD_BOOT_FIT 672 default n 673 help 674 This enables loading dtb from fit image. 675 676config ROCKCHIP_UIMAGE 677 bool "Enable support for legacy uImage" 678 depends on !FIT_SIGNATURE && USING_KERNEL_DTB 679 select CMD_BOOT_UIMAGE 680 default n 681 help 682 This enables loading dtb from uImage image. 683 684config ROCKCHIP_EARLY_DISTRO_DTB 685 bool "Enable support for distro dtb early" 686 depends on DISTRO_DEFAULTS && USING_KERNEL_DTB && CMD_FS_GENERIC 687 default n 688 help 689 This enables loading dtb from distro bootable partition when there 690 is no valid dtb in android boot.img and rockchip resource.img. 691 692if ROCKCHIP_EARLY_DISTRO_DTB 693 694config ROCKCHIP_EARLY_DISTRO_DTB_PATH 695 string "/rk-kernel.dtb" 696 help 697 "DTB file path in the bootable partition image" 698endif 699 700config ROCKCHIP_HWID_DTB 701 bool "Enable support for selecting DTB by hardware id" 702 depends on ROCKCHIP_RESOURCE_IMAGE 703 default n 704 help 705 This enables select the expected DTB from sets by hardware id, 706 i.e. GPIO or ADC value. 707 708config ROCKCHIP_VENDOR_PARTITION 709 bool "Rockchip vendor storage partition support" 710 depends on RKIMG_BOOTLOADER 711 help 712 This enable support to read/write vendor configuration data from/to 713 this partition. 714 715config USING_KERNEL_DTB 716 bool "Using dtb from Kernel/resource for U-Boot" 717 depends on RKIMG_BOOTLOADER && OF_LIVE 718 default y 719 help 720 This enable support to read dtb from resource and use it for U-Boot, 721 the uart and emmc will still using U-Boot dtb, but other devices like 722 regulator/pmic, display, usb will use dts node from kernel. 723 724config EMBED_KERNEL_DTB_PATH 725 string "Embeded kernel dtb file path" 726 depends on USING_KERNEL_DTB 727 default "dts/kern.dtb" 728 help 729 This file will auto be appended to the u-boot.bin. 730 731config EMBED_KERNEL_DTB_ALWAYS 732 bool "Always using embed kernel dtb" 733 depends on USING_KERNEL_DTB 734 default n 735 help 736 Allow fallback to always use a prepared kernel dtb even USING_KERNEL_DTB 737 is set. This makes U-Boot stage more stable but not flexible any more to 738 compatible different boards. 739 740config ROCKCHIP_CRC 741 bool "Rockchip CRC verify images" 742 help 743 This enable support Rockchip CRC verify images. It takes a lot of time, 744 so it is better only used for debug. 745 746config ROCKCHIP_SMCCC 747 bool "Rockchip SMCCC" 748 default y if ARM_SMCCC 749 help 750 This enable support for Rockchip SMC calls 751 752config ROCKCHIP_DEBUGGER 753 bool "Rockchip debugger" 754 depends on IRQ 755 help 756 This enable support for Rockchip debugger. Now we install a timer interrupt 757 and dump pt_regs when the timeout event trigger. This helps us to know cpu 758 state when system hang. 759 760config ROCKCHIP_CRASH_DUMP 761 bool "Rockchip crash dump registers" 762 help 763 This enable dump registers when system crash, the registers you would like 764 to dump can be added in show_regs(). 765 766config ROCKCHIP_PRELOADER_ATAGS 767 bool "Rockchip pre-loader atags" 768 default y if ARCH_ROCKCHIP 769 help 770 This enable support Rockchip atags among pre-loaders, i.e. ddr, miniloader, ATF, 771 tos, U-Boot, etc. It delivers boot and configure information, shared with pre-loaders 772 and finally ends with U-Boot. 773 774config ROCKCHIP_PRELOADER_SERIAL 775 bool "Rockchip pre-loader serial" 776 default y if ROCKCHIP_PRELOADER_ATAGS 777 help 778 This enable U-Boot using pre-loader atags serial configure to initialize console. 779 It denpends on serial aliases to find pre-loader serial number. 780 781config ROCKCHIP_FIT_IMAGE_PACK 782 bool "Rockchip fit image pack of U-Boot and TEE" 783 depends on ROCKCHIP_FIT_IMAGE 784 default n 785 help 786 This enable fit image pack of U-Boot and TEE, it's used for make.sh script. 787 788config ROCKCHIP_UART_MUX_SEL_M 789 int "UART mux select" 790 default 0 791 depends on TPL 792 help 793 This select uart multiplexer for debug uart iomux in board_debug_uart_init. 794 795config ROCKCHIP_REBOOT_TEST 796 bool "Rockchip reboot stress test before kernel" 797 default n 798 help 799 It's a reboot stress test before kernel stages. 800 801config BASE_DEFCONFIG 802 string "Base defconfig of config fragment" 803 default "" 804 help 805 Indicate the base defconfig of config fragment. 806 807config LOADER_INI 808 string "Name of Loader ini file in rkbin repository" 809 default "" 810 help 811 The ini file is used to pack loader image. 812 813config TRUST_INI 814 string "Name of Trust ini file in rkbin repository" 815 default "" 816 help 817 The ini file is used to pack trust image. 818 819config GICV2 820 bool "ARM GICv2" 821 822config GICV3 823 bool "ARM GICv3" 824 825config ROCKCHIP_EMMC_IOMUX 826 bool "ROCKCHIP EMMC IOMUX" 827 default n 828 help 829 This enable U-Boot to config EMMC iomux. 830 831config ROCKCHIP_NAND_IOMUX 832 bool "ROCKCHIP NAND IOMUX" 833 default n 834 help 835 This enable U-Boot to config NAND iomux. 836 837config ROCKCHIP_SFC_IOMUX 838 bool "ROCKCHIP SFC IOMUX" 839 default n 840 help 841 This enable U-Boot to config SFC iomux. 842 843source "arch/arm/mach-rockchip/px30/Kconfig" 844source "arch/arm/mach-rockchip/rk3036/Kconfig" 845source "arch/arm/mach-rockchip/rk3066/Kconfig" 846source "arch/arm/mach-rockchip/rk3128/Kconfig" 847source "arch/arm/mach-rockchip/rk3188/Kconfig" 848source "arch/arm/mach-rockchip/rk322x/Kconfig" 849source "arch/arm/mach-rockchip/rk3288/Kconfig" 850source "arch/arm/mach-rockchip/rk3308/Kconfig" 851source "arch/arm/mach-rockchip/rk3328/Kconfig" 852source "arch/arm/mach-rockchip/rk3368/Kconfig" 853source "arch/arm/mach-rockchip/rk3399/Kconfig" 854source "arch/arm/mach-rockchip/rk3568/Kconfig" 855source "arch/arm/mach-rockchip/rk1808/Kconfig" 856source "arch/arm/mach-rockchip/rv1108/Kconfig" 857source "arch/arm/mach-rockchip/rv1126/Kconfig" 858 859endif 860