| acad3b0f | 07-Mar-2025 |
Saivardhan Thatikonda <saivardhan.thatikonda@amd.com> |
fix(console): match function parameter is decleration
This corrects the MISRA violation C2012-8.3: matching the function parameter name in declaration with the function definition.
Change-Id: Ib9a3
fix(console): match function parameter is decleration
This corrects the MISRA violation C2012-8.3: matching the function parameter name in declaration with the function definition.
Change-Id: Ib9a3b82db85bbf4fa94dc1e9a9203262c5606cd4 Signed-off-by: Saivardhan Thatikonda <saivardhan.thatikonda@amd.com>
show more ...
|
| 399cfdd4 | 20-Jan-2021 |
Nicolas Le Bayon <nicolas.le.bayon@st.com> |
feat(st-drivers): add RISAF driver
Introduction of Resource Isolation Slave for Address space - Full (RISAF) driver to configure main memory regions with access rights defined in device node in DT(t
feat(st-drivers): add RISAF driver
Introduction of Resource Isolation Slave for Address space - Full (RISAF) driver to configure main memory regions with access rights defined in device node in DT(through FCONF compliance) or statically.
The driver is enabled as BL2 sources. Add driver-related platform services. RISAF base addresses and key size are set in platform definitions.
Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com> Signed-off-by: Loic Pallardy <loic.pallardy@st.com> Signed-off-by: Maxime Méré <maxime.mere@foss.st.com> Change-Id: Iae99985e8db7cb2b27f9ca25669e74c8e08792d2
show more ...
|
| 6d797402 | 10-Dec-2020 |
Nicolas Le Bayon <nicolas.le.bayon@st.com> |
feat(st-drivers): add Memory Cipher Engine driver
Memory Cipher Engine (MCE) defines, in a given address space, one region with specific security setup (encryption). FCONF compliance ensures region
feat(st-drivers): add Memory Cipher Engine driver
Memory Cipher Engine (MCE) defines, in a given address space, one region with specific security setup (encryption). FCONF compliance ensures region definition through DT.
Change-Id: I1bca9c0a89af88a72651e1a71e3f8950807eec40 Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com> Signed-off-by: Maxime Méré <maxime.mere@foss.st.com>
show more ...
|
| 02b770ae | 22-Feb-2024 |
Maxime Méré <maxime.mere@foss.st.com> |
feat(st-crypto): add multi instance and error management in RNG driver
Allows the driver to initialize as many RNG instances as enabled in the device tree. The driver will still use only one instanc
feat(st-crypto): add multi instance and error management in RNG driver
Allows the driver to initialize as many RNG instances as enabled in the device tree. The driver will still use only one instance for the TF-A purpose as it needs only one to work. The others are activated because needed by specific IPs.
Seed errors are now also checked after null data read. The Reference Manual recommends to always verify that RNG_DR is different from zero. Because when it is the case a seed error can occur between RNG_SR polling and RND_DR output reading (rare event).
Signed-off-by: Maxime Méré <maxime.mere@foss.st.com> Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@foss.st.com> Change-Id: Ie4d7f01f4ffe5a9e2d0e5e7317b008edd3b80a17
show more ...
|
| 5718d0f5 | 21-Jul-2025 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "fix(console): ensured proper bitwise shift operation" into integration |
| 1ec2c39b | 07-Mar-2025 |
Saivardhan Thatikonda <saivardhan.thatikonda@amd.com> |
fix(console): ensured proper bitwise shift operation
This corrects the MISRA violation C2012-12.2: Used BIT_32() rather than manual bit shifting to prevent shifting beyond the essential type width o
fix(console): ensured proper bitwise shift operation
This corrects the MISRA violation C2012-12.2: Used BIT_32() rather than manual bit shifting to prevent shifting beyond the essential type width of the left operand. This ensures compliance with MISRA C 2012 Rule 12.2.
Change-Id: I1a4ed9366bd9ab773c4a5f6798508ead991593d2 Signed-off-by: Saivardhan Thatikonda <saivardhan.thatikonda@amd.com>
show more ...
|
| 3d7caf47 | 24-Apr-2024 |
Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com> |
fix(arm): typecast operands to match data type
This corrects the MISRA violation C2012-10.3: The value of an expression shall not be assigned to an object with a narrower essential type or of a diff
fix(arm): typecast operands to match data type
This corrects the MISRA violation C2012-10.3: The value of an expression shall not be assigned to an object with a narrower essential type or of a different essential type category. The condition is explicitly checked against 0U, appending 'U' and typecasting for unsigned comparison.
Change-Id: I7a2565ce6b8beb71dc9c711327ab72ce825111cc Signed-off-by: Nithin G <nithing@amd.com> Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
show more ...
|
| d90bb650 | 23-Jun-2025 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "build(handoff)!: switch to LibTL submodule" into integration |
| f8901e38 | 23-Jun-2025 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "feat(dsu): support power control and autonomous powerdown config" into integration |
| 5d772a44 | 23-Jun-2025 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes Iea4c11de,Icae1fb08 into integration
* changes: fix(lx2160): add DDRC missing DIMMs fix(nxp): driver crypto caam |
| d52ff2b3 | 07-May-2025 |
Arvind Ram Prakash <arvind.ramprakash@arm.com> |
feat(dsu): support power control and autonomous powerdown config
This patch allows platforms to enable certain DSU settings to ensure memory retention and control over cache power requests. We also
feat(dsu): support power control and autonomous powerdown config
This patch allows platforms to enable certain DSU settings to ensure memory retention and control over cache power requests. We also move the driver out of css into drivers/arm. Platforms can configure the CLUSTERPWRCTLR and CLUSTERPWRDN registers [1] to improve power efficiency.
These registers enable finer-grained control of DSU power state transitions, including powerdown and retention.
IMP_CLUSTERPWRCTLR_EL1 provides: - Functional retention: Allows configuration of the duration of inactivity before the DSU uses CLUSTERPACTIVE to request functional retention.
- Cache power request: These bits are output on CLUSTERPACTIVE[19:16] to indicate to the power controller which cache portions must remain powered.
IMP_CLUSTERPWRDN_EL1 includes: - Powerdown: Triggers full cluster powerdown, including control logic.
- Memory retention: Requests memory retention mode, keeping L3 RAM contents while powering off the rest of the DSU.
The DSU-120 TRM [2] provides the full field definitions, which are used as references in the `dsu_driver_data` structure.
References: [1]: https://developer.arm.com/documentation/100453/latest/ [2]: https://developer.arm.com/documentation/102547/0201/?lang=en
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com> Change-Id: I2eba808b8f2a27797782a333c65dd092b03208fe
show more ...
|
| b5d0740e | 13-May-2025 |
Harrison Mutai <harrison.mutai@arm.com> |
build(handoff)!: switch to LibTL submodule
Removes in-tree Transfer List implementation and updates all references to use the external LibTL submodule. Updates include paths, Makefile macros, and pl
build(handoff)!: switch to LibTL submodule
Removes in-tree Transfer List implementation and updates all references to use the external LibTL submodule. Updates include paths, Makefile macros, and platform integration logic to link with LibTL as a static library.
If you cloned TF-A without the `--recurse-submodules` flag, you can ensure that this submodule is present by running:
git submodule update --init --recursive
BREAKING-CHANGE: LibTL is now included in TF-A as a submodule. Please run `git submodule update --init --recursive` if you encounter issues after migrating to the latest version of TF-A.
Change-Id: I1fa31f7b730066c27985d968698e553b00b07c38 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| 46a11670 | 13-Jun-2025 |
Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com> |
feat(mmc): add define for no response
Introduce a new macro definition to represent the response type for commands that do not expect a response. This is particularly applicable to commands like Com
feat(mmc): add define for no response
Introduce a new macro definition to represent the response type for commands that do not expect a response. This is particularly applicable to commands like Command 0, which is used to reset the card and place it into the idle state.
Change-Id: I6fe298504a7166ccd7e47c23f88945b2ce064cf9 Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
show more ...
|
| e2e90fa1 | 13-Feb-2025 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(fvp): add GICv5 support
Factors out GICv3 specific code and replace it with GICv5. This can be selected with FVP_USE_GIC_DRIVER=FVP_GICV5. Specifically, the FCONF logic does not apply to GICv5
feat(fvp): add GICv5 support
Factors out GICv3 specific code and replace it with GICv5. This can be selected with FVP_USE_GIC_DRIVER=FVP_GICV5. Specifically, the FCONF logic does not apply to GICv5 as the bindings are completely different.
This patch does not include a device tree. This will be added at a later date.
Change-Id: Ifd0c7b4e0bc2ea1e53a6779ab4c50c4aec39dafb Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 4db6bf9f | 05-Feb-2025 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): probe components
Asserts that the platform configuration is correct. No dynamic discovery so only done in debug builds.
Change-Id: I56763cb422dcaa4a816a619ab4acfc6946427c64 Signed-off-
feat(gicv5): probe components
Asserts that the platform configuration is correct. No dynamic discovery so only done in debug builds.
Change-Id: I56763cb422dcaa4a816a619ab4acfc6946427c64 Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 71799209 | 09-Dec-2024 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): initialise the IWB
Same idea as the IRS - do IWB initialisation that's only accessible from EL3 when it is the MPPAS. Relies on the platform to provide wire domain assignments and trig
feat(gicv5): initialise the IWB
Same idea as the IRS - do IWB initialisation that's only accessible from EL3 when it is the MPPAS. Relies on the platform to provide wire domain assignments and triggers as well as to map the config frame in device nGnRnE memory. All wires will default to the NS domain and the platform can override this.
Change-Id: I93aec5809aec4328d1cba832c2c6e5891e398e5b Co-developed-by: Sascha Bischoff <sascha.bischoff@arm.com> Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| dfb37a2d | 09-Dec-2024 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): initialise the IRS
Do IRS initialisation that's only accessible from the EL3 interrupt domain. Relies on the platform to provide SPI domain assignments and trigger modes as well as to m
feat(gicv5): initialise the IRS
Do IRS initialisation that's only accessible from the EL3 interrupt domain. Relies on the platform to provide SPI domain assignments and trigger modes as well as to map the config frame in device nGnRnE memory. All wires will default to NS and the platform may override this.
Change-Id: Icbd43503753cd76fd3d80ed47eba6926494bc323 Co-developed-by: Sascha Bischoff <sascha.bischoff@arm.com> Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 82b228ba | 09-Dec-2024 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): assign interrupt sources to appropriate security states
Assign the PPI interrupts we commonly have in the device tree to the NS domain. This is a short-term solution that allows Linux t
feat(gicv5): assign interrupt sources to appropriate security states
Assign the PPI interrupts we commonly have in the device tree to the NS domain. This is a short-term solution that allows Linux to fully boot. This is expected to be fully replaced with context management when adding world switching support as some of these are expected to be shared between worlds.
Change-Id: I59a7b5a63f878c9a717ef81e977be7133a402f3f Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 13b62814 | 20-Nov-2024 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): add a barebones GICv5 driver
This is the absolute minimum that's needed to compile an NS-only build end exit out of EL3. The GIC is not used and/or configured in any way but all the nec
feat(gicv5): add a barebones GICv5 driver
This is the absolute minimum that's needed to compile an NS-only build end exit out of EL3. The GIC is not used and/or configured in any way but all the necessary hooks are populated.
Notably, SCR_EL3.FIQ becomes RES1 as GICv5 behaves in a similar manner to a GICv3 with FIQ set.
Change-Id: Idae52b9df97f4ca2996b2dcd1e5efc45478a43f2 Co-developed-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 8cef63d6 | 07-Jan-2025 |
Boyan Karatotev <boyan.karatotev@arm.com> |
feat(gicv5): add support for building with gicv5
The Generic Interrupt Controller v5 (GICv5) is the next generation of Arm interrupt controllers. It is a clean slate design and has native support fo
feat(gicv5): add support for building with gicv5
The Generic Interrupt Controller v5 (GICv5) is the next generation of Arm interrupt controllers. It is a clean slate design and has native support for the latest Armv9 features. As such it is entirely backwards incompatible with GICv3/v4.
This patch adds the necessary boilerplate to select a build with GICv5. The GIC has always had two parts. BL31 deals directly with the CPU interface while platform code is responsible for managing the IRI. In v5 this split is formalised and the CPU interface, FEAT_GCIE, may be implemented on its own. So reflect this split in our code with ENABLE_FEAT_GCIE which only affects BL31 and the GICv5 IRI lies in the generic GIC driver.
No actual functionality yet.
Change-Id: I97a0c3ba708877c213e50e7ef148e3412aa2af90 Co-developed-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
|
| 4f6c787e | 09-Jun-2025 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes I6422cd05,Idd01179d,I5c557616,I343a46d6,Id48671ae, ... into integration
* changes: feat(st-clock): add STM32MP21 and STM32MP23 RCC variants feat(stm32mp21): add RCC registers file
Merge changes I6422cd05,Idd01179d,I5c557616,I343a46d6,Id48671ae, ... into integration
* changes: feat(st-clock): add STM32MP21 and STM32MP23 RCC variants feat(stm32mp21): add RCC registers file feat(stm32mp21): add clock and reset bindings refactor(stm32mp2): update display of reset reason feat(stm32mp25): add RCC register to display all IWDG flags feat(stm32mp21): add PWR registers file feat(st): introduce SoC family compilation switch docs(changelog): add subsections for STM32MP2 docs(stm32mp2): introduce new STM32MP23 family docs(stm32mp2): introduce new STM32MP21 family
show more ...
|
| 58cf812a | 28-Apr-2023 |
Yann Gautier <yann.gautier@foss.st.com> |
feat(stm32mp21): add RCC registers file
Add stm32mp21_rcc.h file which describes RCC peripheral registers for STM32MP21.
Change-Id: Idd01179da3925aa4d7b4f934ebd3d95fc0780f6d Signed-off-by: Yann Gau
feat(stm32mp21): add RCC registers file
Add stm32mp21_rcc.h file which describes RCC peripheral registers for STM32MP21.
Change-Id: Idd01179da3925aa4d7b4f934ebd3d95fc0780f6d Signed-off-by: Yann Gautier <yann.gautier@foss.st.com> Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@foss.st.com> Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
show more ...
|
| e957c337 | 07-May-2025 |
Gabriel Fernandez <gabriel.fernandez@foss.st.com> |
feat(stm32mp25): add RCC register to display all IWDG flags
Add a new define RCC_C1BOOTRSTSCLRR_IWDGXSYSRSTF to check all IWDG flags.
Change-Id: Id48671ae935e3100d4c42bc341d770f702d661de Signed-off
feat(stm32mp25): add RCC register to display all IWDG flags
Add a new define RCC_C1BOOTRSTSCLRR_IWDGXSYSRSTF to check all IWDG flags.
Change-Id: Id48671ae935e3100d4c42bc341d770f702d661de Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
show more ...
|
| 2ec3cec5 | 24-Jan-2024 |
Nicolas Le Bayon <nicolas.le.bayon@st.com> |
feat(stm32mp21): add PWR registers file
Use the new file stm32mp21_pwr.h for STM32MP21 PWR peripheral registers definition. Update platform code for backup domain write protection disabling.
Change
feat(stm32mp21): add PWR registers file
Use the new file stm32mp21_pwr.h for STM32MP21 PWR peripheral registers definition. Update platform code for backup domain write protection disabling.
Change-Id: Iedfa764529bcd5119be8e94da7f7b84699e86086 Signed-off-by: Yann Gautier <yann.gautier@foss.st.com> Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
show more ...
|
| 701178dc | 01-Aug-2024 |
Maxime Méré <maxime.mere@foss.st.com> |
feat(st): introduce SoC family compilation switch
add STM32MP1X and STM3MP2X compilation switch to replace #if STM32MP21 || STM32MP23 || STM32MP25 for MP2 SoCs and #if STM32MP13 || STM32MP15 for MP1
feat(st): introduce SoC family compilation switch
add STM32MP1X and STM3MP2X compilation switch to replace #if STM32MP21 || STM32MP23 || STM32MP25 for MP2 SoCs and #if STM32MP13 || STM32MP15 for MP1 SoCs.
This will avoid to forget to modify all these files when a new SoC is introduced.
Change-Id: Ib984b22a19e08af5bc1b62fe2032f10240ec9122 Signed-off-by: Maxime Méré <maxime.mere@foss.st.com>
show more ...
|