arm-trusted-firmware/plat/allwinner
Andrey Skvortsov 188a9888e7 fix(allwinner): enable dtb modifications for CPU idle states to the rich OS
Commit e2b18771fc ("feat(allwinner):
provide CPU idle states to the rich OS") added functionality to amend
dtb, when SCPI as the PSCI backend is available. But this
functionality is disabled by default even for platforms, that support
it, like A64. As a result rich OS don't get information about
available CPU idle states.

Due to size constraints of A64 platform DEBUG=1 can be built with
dtb amend functionality only with LTO enabled. So ENABLE_LTO is
enabled by default for this platform.

```
aarch64-linux-gnu-ld.bfd: address 0x500dd of build/sun50i_a64/debug/bl31/bl31.elf section `.data' is not within region `RAM'
aarch64-linux-gnu-ld.bfd: BL31 image has exceeded its limit.
aarch64-linux-gnu-ld.bfd: region `RAM' overflowed by 224 bytes
```

To build with ENABLE_LTO=0 and DEBUG=1 it's required SUNXI_AMEND_DTB=0
to explicitly disable dtb amend functionality.

sun50i_r329 SUNXI_AMEND_DTB=1 DEBUG=1 build fails with 'region `RAM'
overflowed by 120 bytes'. To avoid unnecessary RAM consumption on
other resource-constraints platforms (like sun50i_r329)
SUNXI_AMEND_DTB is enabled only on sun50i_a64. Otherwise
On other platforms sunxi_idle_states are empty.

Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Change-Id: I81fcf31b5bd2bd02a9f3361a6a519632f087445d
2024-09-17 21:44:39 +03:00
..
common feat(allwinner): adjust H616 L2 cache size in DTB 2024-07-09 15:55:23 +02:00
sun50i_a64 fix(allwinner): enable dtb modifications for CPU idle states to the rich OS 2024-09-17 21:44:39 +03:00
sun50i_h6 feat(allwinner): add function to detect H616 die variant 2023-04-26 17:45:29 +01:00
sun50i_h616 fix(allwinner): dtb: check for correct error condition 2024-07-31 10:58:55 +01:00
sun50i_r329 refactor(allwinner): consolidate sunxi_cfg.h files 2023-04-26 17:45:29 +01:00