| 3d9fea94 | 18-Jan-2024 |
Sascha Hauer <s.hauer@pengutronix.de> |
feat(imx8mp): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if
feat(imx8mp): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if arg0 can safely be accessed as a pointer and actually contains a bl_params_t structure. If not, the hardcoded parameter values are used as before.
Change-Id: I44537ba2baa7543e459e5691b69df14b0bd6e942 Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
show more ...
|
| c37a877e | 18-Jan-2024 |
Sascha Hauer <s.hauer@pengutronix.de> |
feat(imx8mn): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if
feat(imx8mn): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if arg0 can safely be accessed as a pointer and actually contains a bl_params_t structure. If not, the hardcoded parameter values are used as before.
Change-Id: Ia12d35778f4d550860e517f2a1f5c5d062f3283a Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
show more ...
|
| 11d32b33 | 18-Jan-2024 |
Sascha Hauer <s.hauer@pengutronix.de> |
feat(imx8mm): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if
feat(imx8mm): optionally take params from BL2
Optionally take params from BL2 to offer more flexibility to BL2 on where and if a BL32 image is expected. This uses imx_bl31_params_parse() to check if arg0 can safely be accessed as a pointer and actually contains a bl_params_t structure. If not, the hardcoded parameter values are used as before.
Change-Id: I06b3012c67e43ea1e42946d863226bd93ccd4638 Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
show more ...
|
| 566d3944 | 05-Mar-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
style(imx8m): add parenthesis to CSU_HP_REG
To be inline with CSU_SA_REG and CSU_HPCONTROL_REG.
Change-Id: Ia7332096312df41a8cf994d58fad76a99493dd02 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengu
style(imx8m): add parenthesis to CSU_HP_REG
To be inline with CSU_SA_REG and CSU_HPCONTROL_REG.
Change-Id: Ia7332096312df41a8cf994d58fad76a99493dd02 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| 0324081a | 04-Mar-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8mp): restrict peripheral access to secure world
This restricts and locks all security relevant peripherals to only be changeable by the secure world. Otherwise the normal world can simply c
feat(imx8mp): restrict peripheral access to secure world
This restricts and locks all security relevant peripherals to only be changeable by the secure world. Otherwise the normal world can simply change the access settings and defeat all security measures put in place.
Change-Id: I248ef8dd67f1de7e528c3da456311bb138b77540 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| cba7daa1 | 04-Mar-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8mp): set and lock almost all peripherals as non-secure
This sets and locks all peripheral type-1 masters, except CAAM, access as non-secure, so that they can't access secure world resources
feat(imx8mp): set and lock almost all peripherals as non-secure
This sets and locks all peripheral type-1 masters, except CAAM, access as non-secure, so that they can't access secure world resources from the normal world.
The CAAM itself is TrustZone aware and handles memory access between the normal world and the secure world on its own. Pinning it as non-secure access results in bus aborts if the secure memory region is protected by the TZASC380.
Change-Id: Iedf3d67481dc35d56aa7b291749b999a56d6e85e Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| 1156c763 | 04-Mar-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8mm): restrict peripheral access to secure world
This restricts and locks all security relevant peripherals to only be changeable by the secure world. Otherwise the normal world can simply c
feat(imx8mm): restrict peripheral access to secure world
This restricts and locks all security relevant peripherals to only be changeable by the secure world. Otherwise the normal world can simply change the access settings and defeat all security measures put in place.
Change-Id: I484a2c8164e58b68256d829470e00d5ec473e266 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| f4b11e59 | 04-Mar-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8mm): set and lock almost all peripherals as non-secure
This sets and locks all peripheral type-1 masters, except CAAM, access as non-secure, so that they can't access secure world resources
feat(imx8mm): set and lock almost all peripherals as non-secure
This sets and locks all peripheral type-1 masters, except CAAM, access as non-secure, so that they can't access secure world resources from the normal world.
The CAAM itself is TrustZone aware and handles memory access between the normal world and the secure world on its own. Pinning it as non-secure access results in bus aborts if the secure memory region is protected by the TZASC380.
Change-Id: Idba4d8a491ccce0491489c61e73545baab1889c4 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| 81de5037 | 28-Feb-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8m): add defines for csu_sa access security
This enables the usage of speaking defines instead of magic numbers:
CSU_SA(CSU_SA_SDMA1, 1, LOCKED)
becomes:
CSU_SA(CSU_SA_SDMA1, NON_SEC_
feat(imx8m): add defines for csu_sa access security
This enables the usage of speaking defines instead of magic numbers:
CSU_SA(CSU_SA_SDMA1, 1, LOCKED)
becomes:
CSU_SA(CSU_SA_SDMA1, NON_SEC_ACCESS, LOCKED)
Change-Id: Idcabcda677bf7840084a2ea66d321b50aa0b2b20 Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| 2ac4909a | 28-Feb-2024 |
Stefan Kerkmann <s.kerkmann@pengutronix.de> |
feat(imx8m): add imx csu_sa enum type defines for imx8m
This ports the missing enum defines for the central security unit found in NXPs i.MX8M socs. The defines itself where imported from NXP's down
feat(imx8m): add imx csu_sa enum type defines for imx8m
This ports the missing enum defines for the central security unit found in NXPs i.MX8M socs. The defines itself where imported from NXP's downstream version of the trusted-firmware-a version 2.8[1].
[1]: https://github.com/nxp-imx/imx-atf/commit/0c52279fc4
Change-Id: Iad0c5d3733e9d29ead86334ba4bc5ce915018142 Signed-off-by: Ji Luo <ji.luo@nxp.com> Signed-off-by: Stefan Kerkmann <s.kerkmann@pengutronix.de>
show more ...
|
| f1bb459c | 30-Nov-2023 |
Marek Vasut <marex@denx.de> |
feat(imx8m): add 3600 MTps DDR PLL rate
Add 3600 MTps DRAM and its 900 MHz PLL setting M=300 P=8 S=0 , so 24 MHz * 300 / 8 / 2^0 = 900 MHz ~ 3600 MTps (x4) .
Signed-off-by: Marek Vasut <marex@denx.
feat(imx8m): add 3600 MTps DDR PLL rate
Add 3600 MTps DRAM and its 900 MHz PLL setting M=300 P=8 S=0 , so 24 MHz * 300 / 8 / 2^0 = 900 MHz ~ 3600 MTps (x4) .
Signed-off-by: Marek Vasut <marex@denx.de> Change-Id: If2743827294efc0f981718f04b772cc462846195
show more ...
|
| 060fe633 | 30-Nov-2023 |
Marek Vasut <marex@denx.de> |
fix(imx8m): align 3200 MTps rate with U-Boot
The 3200 MTps DRAM and its 800 MHz PLL setting in U-Boot is set to M=300 P=9 S=0 , so 24 MHz * 300 / 9 / 2^0 = 800 MHz ~ 3200 MTps (x4) . Make sure the P
fix(imx8m): align 3200 MTps rate with U-Boot
The 3200 MTps DRAM and its 800 MHz PLL setting in U-Boot is set to M=300 P=9 S=0 , so 24 MHz * 300 / 9 / 2^0 = 800 MHz ~ 3200 MTps (x4) . Make sure the PLL settings are aligned across software components.
Signed-off-by: Marek Vasut <marex@denx.de> Change-Id: I163f81696be213acf6ecebe89ff2c76d41484cc5
show more ...
|
| 4827613c | 06-Sep-2023 |
Marco Felsch <m.felsch@pengutronix.de> |
fix(imx8m): map BL32 memory only if SPD_opteed or SPD_trusty is enabled
Always map the BL32 memory can interfere with the BL33 mapping if the BL33 is not aware of the mapping, e.g. different memory
fix(imx8m): map BL32 memory only if SPD_opteed or SPD_trusty is enabled
Always map the BL32 memory can interfere with the BL33 mapping if the BL33 is not aware of the mapping, e.g. different memory tagging secure/non-secure. Therefore map the memory only if BL32 (opteed, trusty) is enabled and BL33 is aware of this memory mapping.
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> Change-Id: I9c2bf78aa6e88c93e749a9248724186fee9df864
show more ...
|