1*54fd6939SJiyong ParkRockchip SoCs 2*54fd6939SJiyong Park============= 3*54fd6939SJiyong Park 4*54fd6939SJiyong ParkTrusted Firmware-A supports a number of Rockchip ARM SoCs from both 5*54fd6939SJiyong ParkAARCH32 and AARCH64 fields. 6*54fd6939SJiyong Park 7*54fd6939SJiyong ParkThis includes right now: 8*54fd6939SJiyong Park- px30: Quad-Core Cortex-A53 9*54fd6939SJiyong Park- rk3288: Quad-Core Cortex-A17 (past A12) 10*54fd6939SJiyong Park- rk3328: Quad-Core Cortex-A53 11*54fd6939SJiyong Park- rk3368: Octa-Core Cortex-A53 12*54fd6939SJiyong Park- rk3399: Hexa-Core Cortex-A53/A72 13*54fd6939SJiyong Park 14*54fd6939SJiyong Park 15*54fd6939SJiyong ParkBoot Sequence 16*54fd6939SJiyong Park------------- 17*54fd6939SJiyong Park 18*54fd6939SJiyong ParkFor AARCH32: 19*54fd6939SJiyong Park Bootrom --> BL1/BL2 --> BL32 --> BL33 --> Linux kernel 20*54fd6939SJiyong Park 21*54fd6939SJiyong ParkFor AARCH64: 22*54fd6939SJiyong Park Bootrom --> BL1/BL2 --> BL31 --> BL33 --> Linux kernel 23*54fd6939SJiyong Park 24*54fd6939SJiyong ParkBL1/2 and BL33 can currently be supplied from either: 25*54fd6939SJiyong Park- Coreboot + Depthcharge 26*54fd6939SJiyong Park- U-Boot - either separately as TPL+SPL or only SPL 27*54fd6939SJiyong Park 28*54fd6939SJiyong Park 29*54fd6939SJiyong ParkHow to build 30*54fd6939SJiyong Park------------ 31*54fd6939SJiyong Park 32*54fd6939SJiyong ParkRockchip SoCs expect TF-A's BL31 (AARCH64) or BL32 (AARCH32) to get 33*54fd6939SJiyong Parkintegrated with other boot software like U-Boot or Coreboot, so only 34*54fd6939SJiyong Parkthese images need to get build from the TF-A repository. 35*54fd6939SJiyong Park 36*54fd6939SJiyong ParkFor AARCH64 architectures the build command looks like 37*54fd6939SJiyong Park 38*54fd6939SJiyong Park make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl32 39*54fd6939SJiyong Park 40*54fd6939SJiyong Parkwhile AARCH32 needs a slightly different command 41*54fd6939SJiyong Park 42*54fd6939SJiyong Park make ARCH=aarch32 CROSS_COMPILE=arm-linux-gnueabihf- PLAT=rk3288 AARCH32_SP=sp_min bl32 43*54fd6939SJiyong Park 44*54fd6939SJiyong ParkBoth need replacing the PLAT argument with the platform from above you 45*54fd6939SJiyong Parkwant to build for and the CROSS_COMPILE argument with you cross- 46*54fd6939SJiyong Parkcompilation toolchain. 47*54fd6939SJiyong Park 48*54fd6939SJiyong Park 49*54fd6939SJiyong ParkHow to deploy 50*54fd6939SJiyong Park------------- 51*54fd6939SJiyong Park 52*54fd6939SJiyong ParkBoth upstream U-Boot and Coreboot projects contain instructions on where 53*54fd6939SJiyong Parkto put the built images during their respective build process. 54*54fd6939SJiyong ParkSo after successfully building TF-A just follow their build instructions 55*54fd6939SJiyong Parkto continue. 56