Commit graph

15035 commits

Author SHA1 Message Date
Ryan Everett
1c20f05c5a refactor(cpus): directly invoke errata reporter
In all non-trivial cases the CPU specific errata functions
already call generic_errata_report, this cuts out the middleman
by directly calling generic_errata_report from
print_errata_status.

The CPU specific errata functions (cpu_ops->errata_func)
can now be removed from all cores, and this field can be
removed from cpu_ops.

Also removes the now unused old errata reporting
function and macros.

Change-Id: Ie4a4fd60429aca37cf434e79c0ce2992a5ff5d68
Signed-off-by: Ryan Everett <ryan.everett@arm.com>
2024-07-26 11:19:52 +01:00
Manish Pandey
a3939b1bda Merge "feat(handoff): fix register convention r1/x1 value on transfer list" into integration 2024-07-24 20:04:53 +02:00
Olivier Deprez
07354cfbde Merge "fix(xlat): correct attribute retrieval in a RME enabled system" into integration 2024-07-24 18:20:37 +02:00
Manish Pandey
e7c060d559 Merge "feat(fgt2): add support for FEAT_FGT2" into integration 2024-07-24 17:26:21 +02:00
Manish V Badarkhe
80da826429 Merge changes from topic "us_dsu_pmu" into integration
* changes:
  feat(tc): enable Last-level cache (LLC)
  feat(cpus): add sysreg_bitfield_insert_from_gpr macro
  feat(tc): add DSU PMU node for tc3
  feat(tc): enable el1 access to DSU PMU registers
  style(tc): remove comment for plat_reset_handler
  fix(context-mgmt): keep actlr_el2 value in the init context
2024-07-24 16:07:55 +02:00
Jagdish Gediya
e1b76cb06a feat(tc): enable Last-level cache (LLC)
The EXTLLC bit in CPUECTLR_EL1 register indicates that an external
Last-level cache is present in the system.

This bit is not set for CPUs on TC3 platform despite there is
presence of LLC in MCN, so set them.

Change-Id: I5f889e67dce2b1d00e4ee66a8c255cf7911825b0
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-24 14:35:10 +01:00
Manish V Badarkhe
2281c63448 Merge "fix(arm): check the presence of the policy check function" into integration 2024-07-24 14:35:58 +02:00
Olivier Deprez
56db077bb4 Merge changes I7e2a543a,I932cae6d,I623707c3 into integration
* changes:
  build(deps): bump braces
  build(deps): bump the pip group across 1 directory with 2 updates
  build(deps): bump the pip group across 1 directory with 7 updates
2024-07-23 16:39:25 +02:00
Jagdish Gediya
ad8b51418e feat(cpus): add sysreg_bitfield_insert_from_gpr macro
A macro 'sysreg_bitfield_insert_from_gpr' is introduced for inserting
bitfield from a general register.

Change-Id: I7288a13d70d98e23dc7a93287b04b493ffce9171
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-23 15:35:10 +01:00
Jagdish Gediya
d3ae67771d feat(tc): add DSU PMU node for tc3
Add DT binding for Arm DSU PMU node.

Change-Id: Iadfb5d3bb3f69c7a771516180d1c165e60eef51d
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-23 15:34:25 +01:00
Jagdish Gediya
de8b9cedcc feat(tc): enable el1 access to DSU PMU registers
DSU PMU registers are write accessible in EL1 if the ACTLR_EL3[12] bit
and the ACTLR_EL2[12] bit are set to 1, and these registers are need to
be set for all cores, so set these bits in platform reset handler.

Change-Id: I1db6915939727f0909c05c8b103e37984aadb443
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-23 15:34:25 +01:00
Jagdish Gediya
3960bcda2b style(tc): remove comment for plat_reset_handler
The comment for plat_reset_handler doesn't make sense. It is likely a
copy-and-paste error while adding the code, so remove it.

Change-Id: Iab8c8c799c184fa99966770d47ecb11bbc640515
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
2024-07-23 15:34:25 +01:00
Jagdish Gediya
0aa3284a45 fix(context-mgmt): keep actlr_el2 value in the init context
The system register actlr_el2 can be set during CPU or platform reset
handler. E.g. on Arm Total Compute platform, the CLUSTERPMUEN bit of
actlr_el2 is set in the platform reset handler to enable the write
access to DSU PMU registers from EL1. However, as EL2 context gets
restored without saving it beforehand during jump to SPM and next NS
image, therefore, the initialized value of actlr_el2 is not retained.

To fix this issue, keep track of actlr_el2 value during the EL2 context
initialization. This applies for both secure and non-secure security
state.

Change-Id: I1bd7b984216c042c056ad20c6724bedce5a6a3e2
Signed-off-by: Jagdish Gediya <jagdish.gediya@arm.com>
Signed-off-by: Leo Yan <leo.yan@arm.com>
2024-07-23 15:34:25 +01:00
Manish V Badarkhe
31d4c3e983 Merge "fix(corstone1000): include platform header file" into integration 2024-07-23 11:25:41 +02:00
Harsimran Singh Tungal
783e5abe94 fix(corstone1000): include platform header file
Include platform.h file in order to remove following compiler errors,
as some warnings are being treated as errors now.
error: implicit declaration of function
'plat_core_pos_by_mpidr'[-Wimplicit-function-declaration]

Change-Id: Ie223e11e138ec9b0eef7342f450b90b215a49b15
Signed-off-by: Harsimran Singh Tungal <harsimransingh.tungal@arm.com>
2024-07-23 09:56:20 +01:00
Manish Pandey
c5b8de86c8 Merge "feat(debugv8p9): add support for FEAT_Debugv8p9" into integration 2024-07-22 18:07:11 +02:00
levi.yun
7475815f4b feat(handoff): fix register convention r1/x1 value on transfer list
According to recently firmware handsoff spec [1]'s "Register usage at handoff
boundary", Transfer List's signature value was changed from 0x40_b10b
(3 bytes) to 4a0f_b10b (4 bytes).

As updating of TL's signature, register value of x1/r1 should be:

In aarch32's r1 value should be
    R1[23:0]: set to the TL signature (4a0f_b10b -> masked range value: 0f_b10b)
    R1[31:24]: version of the register convention ==  1
and
In aarch64's x1 value should be
    X1[31:0]: set to the TL signature (4a0f_b10b)
    X1[39:32]: version of the register convention ==  1
    X1[63:40]: MBZ
(See the [2] and [3]).

Therefore, it requires to separate mask and shift value for register
convention version field when sets each r1/x1.

This patch fix two problems:
   1. breaking X1 value with updated specification in aarch64
        - change of length of signature field.

   2. previous error value set in R1 in arm32.
        - length of signature should be 24, but it uses 32bit signature.

This change is breaking change. It requires some patch for other
softwares (u-boot[4], optee[5]).

Link: https://github.com/FirmwareHandoff/firmware_handoff [1]
Link: https://github.com/FirmwareHandoff/firmware_handoff/issues/32 [2]
Link: 5aa7aa1d3a [3]
Link: https://lists.denx.de/pipermail/u-boot/2024-July/558628.html [4]
Link: https://github.com/OP-TEE/optee_os/pull/6933 [5]
Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: Ie417e054a7a4c192024a2679419e99efeded1705
2024-07-22 15:54:44 +01:00
Manish V Badarkhe
e3c0869f6f fix(xlat): correct attribute retrieval in a RME enabled system
In a system enabled with RME, the function
'xlat_get_mem_attributes_internal' fails to accurately provide
'output PA space' for Realm and Root memory because it does not
consider the 'nse' bit in page table descriptor.
This patch resolves the issue by extracting the 'nse' bit value.
As a result, it ensures correct retrieval of attributes
in RME-enabled systems while maintaining unaffected attribute
retrieval for non-RME systems.

Change-Id: If2d01545b921c9074f48c52a98027ff331e14237
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
2024-07-22 14:14:33 +02:00
dependabot[bot]
627d32ed39 build(deps): bump braces
Bumps the npm_and_yarn group with 1 update in the / directory: [braces](https://github.com/micromatch/braces).

Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Change-Id: I7e2a543a3bc67d426a69fc25f93b878c9b5a3b11
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chris Kay <chris.kay@arm.com>
2024-07-22 10:32:24 +00:00
dependabot[bot]
ad90587f20 build(deps): bump the pip group across 1 directory with 2 updates
Bumps the pip group with 2 updates in the / directory: [setuptools](https://github.com/pypa/setuptools) and [zipp](https://github.com/jaraco/zipp).

Updates `setuptools` from 67.7.2 to 70.0.0
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v67.7.2...v70.0.0)

Updates `zipp` from 3.15.0 to 3.19.1
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.15.0...v3.19.1)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-type: indirect
  dependency-group: pip
- dependency-name: zipp
  dependency-type: indirect
  dependency-group: pip
...

Change-Id: I932cae6df880f35884043d4a78d10f57e32c80fc
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chris Kay <chris.kay@arm.com>
2024-07-22 10:30:18 +00:00
dependabot[bot]
61b9b1b5e8 build(deps): bump the pip group across 1 directory with 7 updates
Bumps the pip group with 7 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [certifi](https://github.com/certifi/python-certifi) | `2023.7.22` | `2024.7.4` |
| [idna](https://github.com/kjd/idna) | `3.4` | `3.7` |
| [jinja2](https://github.com/pallets/jinja) | `3.1.2` | `3.1.4` |
| [pip](https://github.com/pypa/pip) | `23.1.2` | `23.3` |
| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.2` |
| [urllib3](https://github.com/urllib3/urllib3) | `2.0.2` | `2.2.2` |
| [zipp](https://github.com/jaraco/zipp) | `3.15.0` | `3.19.1` |

Updates `certifi` from 2023.7.22 to 2024.7.4
- [Commits](https://github.com/certifi/python-certifi/compare/2023.07.22...2024.07.04)

Updates `idna` from 3.4 to 3.7
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](https://github.com/kjd/idna/compare/v3.4...v3.7)

Updates `jinja2` from 3.1.2 to 3.1.4
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.2...3.1.4)

Updates `pip` from 23.1.2 to 23.3
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/pip/compare/23.1.2...23.3)

Updates `requests` from 2.31.0 to 2.32.2
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.31.0...v2.32.2)

Updates `urllib3` from 2.0.2 to 2.2.2
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.0.2...2.2.2)

Updates `zipp` from 3.15.0 to 3.19.1
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.15.0...v3.19.1)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
  dependency-group: pip
- dependency-name: idna
  dependency-type: indirect
  dependency-group: pip
- dependency-name: jinja2
  dependency-type: indirect
  dependency-group: pip
- dependency-name: pip
  dependency-type: indirect
  dependency-group: pip
- dependency-name: requests
  dependency-type: indirect
  dependency-group: pip
- dependency-name: urllib3
  dependency-type: indirect
  dependency-group: pip
- dependency-name: zipp
  dependency-type: indirect
  dependency-group: pip
...

Change-Id: I623707c3eb76598c4bfb3957f090a846c765b1f2
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chris Kay <chris.kay@arm.com>
2024-07-22 10:28:44 +00:00
Manish V Badarkhe
309cd9bbb3 Merge "refactor(cpus): modify log for "ERRATA_NOT_APPLIES"" into integration 2024-07-22 11:03:51 +02:00
Madhukar Pappireddy
9877b6ef1e Merge changes If8547b5a,I6826a56d,Idb40907a,Ia51cbe1a,I9b55f6c5, ... into integration
* changes:
  feat(fvp): add SPM manifest for OP-TEE at S-EL1 without S-EL2/Hafnium
  fix(fvp): update the memory size allocated to optee at EL1
  fix(fvp): add DRAM memory regions that linux kernel can share
  feat(fvp): update FF-A version to v1.1 supported by optee
  feat(fvp): replace managed-exit with ns-interrupts-action
  fix(fvp): add optee specific mem-size attribute
  fix(fvp): fix the FF-A optee manifest by adding the boot info node
2024-07-19 16:28:29 +02:00
Manish Pandey
63d6331ebb Merge "fix(intel): f2sdram bridge quick write thru failed" into integration 2024-07-19 15:53:17 +02:00
Manish Pandey
0cdf5199fa Merge "feat(intel): add QSPI get devinfo mailbox cmd" into integration 2024-07-19 15:51:01 +02:00
Manish Pandey
aadd3d5329 Merge "fix(docs): fix CPU type for mt8195" into integration 2024-07-19 15:49:57 +02:00
Sona Mathew
becc97efc4 refactor(cpus): modify log for "ERRATA_NOT_APPLIES"
modify the print logs when an erratum workaround does not
need to be applied to a certain revision/variant of the CPU.

Change-Id: I8f60636320f617ecd4ed88ee1fbf7a3e3e4517ee
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
2024-07-19 08:39:28 -05:00
Manish Pandey
a4ba3cdc7a Merge "fix(mt8188): remove BL32 region protection if SPD sets to none" into integration 2024-07-19 15:33:18 +02:00
Yidi Lin
207c447049 fix(mt8188): remove BL32 region protection if SPD sets to none
When SPD is set to none, it means we don't run any secure OS on the
system. We should make this memory region available to kernel.

Change-Id: Ia83ff4a7d25de38a5d845b7ee1367bafed43bbdd
Signed-off-by: Yidi Lin <yidilin@chromium.org>
2024-07-19 12:02:05 +08:00
Arvind Ram Prakash
33e6aaacf1 feat(fgt2): add support for FEAT_FGT2
This patch disables trapping to EL3 when the FEAT_FGT2
specific trap registers are accessed by setting the
SCR_EL3.FGTEn2 bit

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: I6d2b614affb9067b2bc3d7bf0ae7d169d031592a
2024-07-18 13:49:43 -05:00
Arvind Ram Prakash
83271d5a5a feat(debugv8p9): add support for FEAT_Debugv8p9
This patch enables FEAT_Debugv8p9 and prevents EL1/0 from
trapping to EL3 when accessing MDSELR_EL1 register by
setting the MDCR_EL3.EBWE bit.

Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Change-Id: I3613af1dd8cb8c0d3c33dc959f170846c0b9695a
2024-07-18 13:49:43 -05:00
Madhukar Pappireddy
847cee8c64 Merge changes from topic "clk_fixed_divider" into integration
* changes:
  feat(nxp-clk): set rate for clock fixed divider
  feat(nxp-clk): add A53 clock objects
  feat(nxp-clk): set rate for PLL divider objects
  feat(nxp-clk): set rate for PLL objects
2024-07-18 15:54:32 +02:00
Jimmy Brisson
491832fedf fix(arm): check the presence of the policy check function
Change-Id: I7bb0dad232eac6c8084873713af22562853a4c21
Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>
2024-07-17 10:46:53 +02:00
Manish V Badarkhe
600a8f4157 Merge "chore(cm): fix some typos in comments" into integration 2024-07-17 10:28:03 +02:00
Manish V Badarkhe
251d645f66 Merge "feat(zynqmp): move zynqmp platform to xlat tables v2" into integration 2024-07-17 09:25:32 +02:00
Yidi Lin
65ada75717 fix(docs): fix CPU type for mt8195
MT8195 features four Cortex-A78 cores not Cortex-A76.

Change-Id: I62c60373e7a3e570bcadaeaf065ca0f7473cb838
Signed-off-by: Yidi Lin <yidilin@chromium.org>
2024-07-17 11:47:39 +08:00
Manish Pandey
a822a22865 chore(cm): fix some typos in comments
Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I592439f1686c333c855de98a8e7d377ba1e6c498
2024-07-16 21:51:31 +01:00
Ghennadi Procopciuc
65739db28b feat(nxp-clk): set rate for clock fixed divider
Add set rate support for fixed divider clock modules of whose role is to
reduce the source frequency by a factor.

Change-Id: I8a29a2c5b1a829db0c396407c3517c9e66caaa93
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
44e2130ab9 feat(nxp-clk): add A53 clock objects
These objects are needed to allow early enablement of the A53 core
clock.

Change-Id: I44d81975c8eba8cc6cfd18aeb6c9b324edaa3f01
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
de950ef04f feat(nxp-clk): set rate for PLL divider objects
Add implementation for ARM PLL divider rate set mechanism.

Change-Id: I78f4418bcbb5ea0a6ef64675e44bd074d2230ea3
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Ghennadi Procopciuc
7ad4e2312f feat(nxp-clk): set rate for PLL objects
Add implementation for ARM PLL rate set mechanism.

Change-Id: Ic859567bd67747f173d425158cdc581801f7446c
Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
2024-07-16 16:52:34 +03:00
Manish Pandey
765963334d Merge "fix(stm32mp1): skip OP-TEE header check if image base is NULL" into integration 2024-07-15 22:36:33 +02:00
Manish Pandey
abdc1001f2 Merge "refactor(mediatek): refactor handling of variables with value 'n'" into integration 2024-07-15 22:35:13 +02:00
Sudeep Holla
41d73bffe1 feat(fvp): add SPM manifest for OP-TEE at S-EL1 without S-EL2/Hafnium
Provide manifest to boot OP-TEE at S-EL1 running SPMC with secure EL2
disabled and TF-A at secure EL3 running SPMD.

Change-Id: If8547b5a514fb48eec88a8d56d718f1c1591cf1f
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
4739372278 fix(fvp): update the memory size allocated to optee at EL1
Update the memory size allocated to optee at EL1 to 0xd80000 to match
the size specified by mem-size in optee manifest.

Change-Id: I6826a56d0f68a6a2b5181f849a741a9bf1f0829b
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
18ec9bdc2d fix(fvp): add DRAM memory regions that linux kernel can share
The memory regions that Linux kernel can share including TX/RX buffers
encompass the entire DRAM. Update it accordingly. Without this,
when the Linux kernel call FFA_RXTX_MAP, it fails sometime and the
below error from the secure world appears:

  |  ERROR: arch_other_world_vm_configure_rxtx_map: send page is invalid
  | 		(expected 0x87, got 0x7c)

Change-Id: Idb40907af2e0c1d4e60979b4948db2fc70971145
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
4f37e1e8b2 feat(fvp): update FF-A version to v1.1 supported by optee
OPTEE now supports FF-A v1.1, lets us bump the FF-A version in the
OPTEE FF-A manifest.

Change-Id: Ia51cbe1af619895945240004a4163a4c4bda2ee5
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
887cec9cae feat(fvp): replace managed-exit with ns-interrupts-action
Commit 10b292e649 ("docs(spm): update FF-A manifest binding")
deprecated managed-exit in favor of newly added mandatory
ns-interrupts-action attribute. Replace managed-exit with
ns-interrupts-action before it becomes obsolete.

Change-Id: I9b55f6c55af3510260a9c5a01755a9b66d75823e
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
75265a16c9 fix(fvp): add optee specific mem-size attribute
Without the mem-size attribute, the OPTEE boot panics with below
error:
  |  get_sec_mem_from_manifest:1594 Can't read "mem-size" from FF-A
  |  		manifest at 0x6281000: error -1
  |  Panic at core/arch/arm/kernel/boot.c:1596 <get_sec_mem_from_manifest>
  |  TEE load address @ 0x6284000
  |  Call stack:
  |  0x0628c7fc
  |  0x06298788
  |  0x0628c480

Adding the mem-size attribute fixes the boot. This is OPTEE specific
extension.

Change-Id: I2801c8b4a89cffafff14c788319ad106b03ffef0
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00
Sudeep Holla
bf36351aca fix(fvp): fix the FF-A optee manifest by adding the boot info node
Without the FF-A manifest boot info node, the OPTEE boot as S-EL1 VM
crashes currently with the below error:
  |  WARNING: Stage-2 page fault: pc=0x628c41c, vmid=0x8001, vcpu=0,
  | 			vaddr=0xd00000, ipaddr=0xd00000, mode=0x1 0x7c
  |  NOTICE: Injecting Data Abort exception into VM 0x8001.

Adding the boot info node fixes the OPTEE boot.

While at it, also update copyright year in the file.

Change-Id: I1fd0bf4e38bb95deedc74fa04d1e6bb057424c04
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2024-07-15 17:15:01 +01:00