
Trying to answer Simon's question whether the address of the secure timer (for initialising stimer1 and starting up the ARMv8 generic timer) can be obtained from the DTS, here's a series that tries to give an answer.
To summarise this answer in plain English: - The answer to the original question is: "no, but..." - The "but" is what's implemented here: we don't need the ARMv8 generic timer ticking in U-Boot, so we won't have to initialise it at all (this removing the need to obtain the address for stimer1). - We also have a "however": the size of the TPL binary increases by approx. 800 bytes, as we need the DM timer support.
This series is based on-top-of my RK3368 enablement series.
If we go ahead with merging this, then I'll have to add support for the RK3399 as well...
Philipp Tomsich (6): timer: add OF_PLATDATA support for timer-uclass dm: timer: normalise SPL and TPL support rockchip: timer: add device-model timer driver for RK3368 (and similar) dts: rk3368: make timer0 accessible for SPL and TPL rockchip: lion-rk3368: defconfig: enable DM timer for all stages rockchip: rk3368: remove setup of secure timer from TPL/SPL
arch/arm/cpu/armv8/Makefile | 2 + arch/arm/dts/rk3368-lion-u-boot.dtsi | 2 +- arch/arm/dts/rk3368.dtsi | 2 +- arch/arm/mach-rockchip/rk3368-board-spl.c | 20 ------ arch/arm/mach-rockchip/rk3368-board-tpl.c | 19 ------ common/spl/Kconfig | 8 --- configs/chromebook_link64_defconfig | 2 +- configs/lion-rk3368_defconfig | 4 ++ configs/qemu-x86_64_defconfig | 2 +- drivers/Makefile | 3 +- drivers/timer/Kconfig | 25 +++++++ drivers/timer/Makefile | 3 +- drivers/timer/rockchip_timer.c | 105 ++++++++++++++++++++++++++++++ drivers/timer/timer-uclass.c | 6 +- 14 files changed, 148 insertions(+), 55 deletions(-) create mode 100644 drivers/timer/rockchip_timer.c