arm-trusted-firmware/plat
Jayanth Dodderi Chidanand 0a9c244b05 fix(psci): mask the Last in Level nibble in StateId
In the ARM recommended StateID Encoding, the index for the power
level where the calling core is last to go idle use the last niblle
of the StateId.

Even if this nibble is necessary for OS-initiated mode, it can be
used by caller even when this OSI mode is not used.

In arm_validate_power_state() function, the StateId is compared with
content of arm_pm_idle_states[] build with the arm_make_pwrstate_lvl2
macro, without Last in Level information. So it is safe to mask this
nibble for ARM platform in all the cases, and that avoids issues with
caller with use the same StateId encoding with OSI mode activated or
not (in tftf tests for example, the input(power state) parameter =
(0x40001022) and the associated power state is 0x40000022).

Change-Id: I45e8e2b8f526fb61b94cf134d7d4aa3bac4c215d
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2024-05-08 10:09:07 +01:00
..
allwinner refactor(allwinner): console runtime switch on bl31 exit 2024-03-04 20:11:25 +01:00
amlogic build: use toolchain identifiers in conditions 2024-02-06 11:14:52 +00:00
arm fix(psci): mask the Last in Level nibble in StateId 2024-05-08 10:09:07 +01:00
aspeed/ast2700 fix(ast2700): add device mapping for coherent memory 2023-10-30 11:30:03 +02:00
brcm chore(brcm): include cpu_helpers.S for bl2 build 2023-07-27 09:35:12 +01:00
common refactor(bl1): clean up bl2 layout calculation 2024-04-26 09:00:12 +00:00
hisilicon fix(spmd): fix build error with spmd 2023-05-10 15:57:29 -05:00
imx build: remove MAKE_BUILD_STRINGS function 2024-04-29 12:47:01 +00:00
intel/soc refactor: fix common misspelling of init* 2024-03-20 11:44:00 +00:00
marvell fix(tree): correct some typos 2023-05-09 15:57:12 +01:00
mediatek feat(mt8188): remove apusys kernel handler usage constraints 2024-04-29 16:56:32 +08:00
nuvoton fix(nuvoton): prevent changing clock frequency 2024-03-26 16:44:07 +02:00
nvidia/tegra build: use toolchain identifiers in conditions 2024-02-06 11:14:52 +00:00
nxp fix(tree): correct some typos 2023-05-09 15:57:12 +01:00
qemu refactor(cpufeat): add macro to simplify is_feat_xx_present 2024-05-02 12:16:16 -05:00
qti chore: remove MULTI_CONSOLE_API references 2023-09-12 15:28:36 +02:00
renesas build(rzg): separate BL2 and BL31 SREC generation 2024-04-29 12:47:01 +00:00
rockchip fix(rockchip): add support for building with LTO enabled 2024-02-24 00:42:50 +03:00
rpi feat(rpi): add Raspberry Pi 5 support 2024-03-08 21:05:08 +02:00
socionext refactor(console): disable getc() by default 2023-10-11 08:40:14 +02:00
st refactor(stm32mp1): move the MCU security to BL32 2024-03-19 15:49:14 +01:00
ti/k3 Revert "fix(ti): do not take system power reference in bl31_platform_setup()" 2024-02-05 10:45:48 +05:30
xilinx Merge "feat(zynqmp): remove unused pm_get_proc_by_node()" into integration 2024-05-02 10:13:54 +02:00