| dd94372d | 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): validate shmem descriptor alignment
If the size of a shmem descriptor is not a multiple of 16, the descriptor would be unusable, but the problem would be caught much later.
Change-Id
fix(el3-spmc): validate shmem descriptor alignment
If the size of a shmem descriptor is not a multiple of 16, the descriptor would be unusable, but the problem would be caught much later.
Change-Id: I907f3862b55c6341e39a6b8b2e24784127230478 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 91567c38 | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): avoid using EINVAL
Use proper FF-A return code instead.
Change-Id: Ie749ff06339bc137d3baa96f06f0a6160b35abed Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com> |
| 27c02425 | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): avoid descriptor size calc overflow
This ensures that descriptor size calculation does not overflow and removes a bounds check that does not actually work.
Change-Id: If8da2bb1b31294
fix(el3-spmc): avoid descriptor size calc overflow
This ensures that descriptor size calculation does not overflow and removes a bounds check that does not actually work.
Change-Id: If8da2bb1b312941b7f9d0debf3149b984fc3809a Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 43318e4a | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): use uint64_t for 64-bit type
Using uint64_t is cleaner, even though size_t is 64 bits on all platforms el3-spmc supports.
Change-Id: I457deb0b7f3df0749cb5368cceda1bb530d039de Signed-
fix(el3-spmc): use uint64_t for 64-bit type
Using uint64_t is cleaner, even though size_t is 64 bits on all platforms el3-spmc supports.
Change-Id: I457deb0b7f3df0749cb5368cceda1bb530d039de Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 1198ff84 | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): avoid unneeded function call
The information is already available inline. No functional change intended.
Change-Id: I13d2ad62a9315b233d7a5fd3ffcaac3dd01b055c Signed-off-by: Dem
refactor(el3-spmc): avoid unneeded function call
The information is already available inline. No functional change intended.
Change-Id: I13d2ad62a9315b233d7a5fd3ffcaac3dd01b055c Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 48ffc74c | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): move function call out of loop
Hopefully this will be a tiny speedup. No functional change intended.
Change-Id: Ia052c7f9b24d5ece6209a6fa2903b1271215ece7 Signed-off-by: Demi Ma
refactor(el3-spmc): move function call out of loop
Hopefully this will be a tiny speedup. No functional change intended.
Change-Id: Ia052c7f9b24d5ece6209a6fa2903b1271215ece7 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 9526282a | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): crash instead of reading OOB
If it is called on an invalid mtd, out-of-bounds memory reads are likely. Checks elsewhere in the code ensure that the mtd has been validated before
refactor(el3-spmc): crash instead of reading OOB
If it is called on an invalid mtd, out-of-bounds memory reads are likely. Checks elsewhere in the code ensure that the mtd has been validated before calling this function.
Change-Id: If598680a5b79e1786a6e0a213779ec80cbf37494 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 2d4da8e2 | 12-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): prevent total_page_count overflow
size_t is not guaranteed to be 64 bits, although it happens to be 64 bits on all systems that el3-spmc supports.
Change-Id: Ieae11722a15448641de5023
fix(el3-spmc): prevent total_page_count overflow
size_t is not guaranteed to be 64 bits, although it happens to be 64 bits on all systems that el3-spmc supports.
Change-Id: Ieae11722a15448641de50233597ac35869eab574 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| a0f3b552 | 05-Jun-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "chore: rename Makalu to Cortex-A715" into integration |
| 15889d13 | 23-May-2023 |
Harrison Mutai <harrison.mutai@arm.com> |
chore: rename Makalu to Cortex-A715
Change-Id: I017c955cb643e2befb6b01e1b5a07c22172b08b9 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com> |
| 6bb96fa6 | 27-Jan-2023 |
Boyan Karatotev <boyan.karatotev@arm.com> |
refactor(cpus): rename errata_report.h to errata.h
The ERRATA_XXX macros, used in cpu_helpers.S, are necessary for the check_errata_xxx family of functions. The CPU_REV should be used in the cpu fil
refactor(cpus): rename errata_report.h to errata.h
The ERRATA_XXX macros, used in cpu_helpers.S, are necessary for the check_errata_xxx family of functions. The CPU_REV should be used in the cpu files but for whatever reason the values have been hard-coded so far (at the cost of readability). It's evident this file is not strictly for status reporting.
The new purpose of this file is to make it a one-stop-shop for all things errata.
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com> Change-Id: I1ce22dd36df5aa0bcfc5f2772251f91af8703dfb
show more ...
|
| 4bb0cdc1 | 25-May-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes I31ec0001,Ib06cd024,I7c11f15d,Ie0d5d4c8,I285f3b59, ... into integration
* changes: fix(el3-spmc): correctly account for emad_offset refactor(el3-spmc): avoid unnecessarily revalida
Merge changes I31ec0001,Ib06cd024,I7c11f15d,Ie0d5d4c8,I285f3b59, ... into integration
* changes: fix(el3-spmc): correctly account for emad_offset refactor(el3-spmc): avoid unnecessarily revalidating offset fix(el3-spmc): only call spmc_shm_check_obj() on complete objects refactor(spmc): assert on out-of-bounds emad access refactor(el3-spmc): spmc_shmem_obj_get_emad() will never fail fix(el3-spmc): validate descriptor headers fix(el3-spmc): use version-dependent minimum descriptor length refactor(el3-spmc): check emad_count offset
show more ...
|
| f4bbf435 | 09-Feb-2023 |
Jeffrey Kardatzke <jkardatzke@google.com> |
feat(optee): add device tree for coreboot table
This adds creation of a device tree that will be passed to OP-TEE. Currently that device tree only contains the coreboot table per the Linux coreboot
feat(optee): add device tree for coreboot table
This adds creation of a device tree that will be passed to OP-TEE. Currently that device tree only contains the coreboot table per the Linux coreboot device tree specification. This device tree is then passed to OP-TEE so it can extract the CBMEM console information from the coreboot table for logging purposes.
Signed-off-by: Jeffrey Kardatzke <jkardatzke@google.com> Change-Id: I6a26d335e16f7226018c56ad571cca77b81b0f6a
show more ...
|
| 4bd8c929 | 09-May-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes I1bfa797e,I0ec7a70e into integration
* changes: fix(tree): correct some typos fix(rockchip): use semicolon instead of comma |
| 1b491eea | 13-Feb-2023 |
Elyes Haouas <ehaouas@noos.fr> |
fix(tree): correct some typos
found using codespell (https://github.com/codespell-project/codespell).
Signed-off-by: Elyes Haouas <ehaouas@noos.fr> Change-Id: I1bfa797e3460adddeefa916bb68e22beddaf6
fix(tree): correct some typos
found using codespell (https://github.com/codespell-project/codespell).
Signed-off-by: Elyes Haouas <ehaouas@noos.fr> Change-Id: I1bfa797e3460adddeefa916bb68e22beddaf6373
show more ...
|
| ab062f05 | 14-Mar-2023 |
Sona Mathew <SonaRebecca.Mathew@arm.com> |
fix(cpus): workaround platforms non-arm interconnect
The workarounds for these below mentioned errata are not implemented in EL3, but the flags can be enabled/disabled at a platform level based on a
fix(cpus): workaround platforms non-arm interconnect
The workarounds for these below mentioned errata are not implemented in EL3, but the flags can be enabled/disabled at a platform level based on arm/non-arm interconnect IP. The ABI helps assist the Kernel in the process of mitigation for the following errata:
Cortex-A715: erratum 2701951 Neoverse V2: erratum 2719103 Cortex-A710: erratum 2701952 Cortex-X2: erratum 2701952 Neoverse N2: erratum 2728475 Neoverse V1: erratum 2701953 Cortex-A78: erratum 2712571 Cortex-A78AE: erratum 2712574 Cortex-A78C: erratum 2712575
EL3 provides an appropriate return value via errata ABI when the kernel makes an SMC call using the EM_CPU_ERRATUM_FEATURES FID with the appropriate erratum ID.
Change-Id: I35bd69d812dba37410dd8bc2bbde20d4955b0850 Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>
show more ...
|
| ef63f5be | 14-Mar-2023 |
Sona Mathew <SonaRebecca.Mathew@arm.com> |
refactor(errata_abi): factor in non-arm interconnect
Workaround to help enable the kernel to query errata status using the errata abi feature for platforms with a non-arm interconnect.
Change-Id: I
refactor(errata_abi): factor in non-arm interconnect
Workaround to help enable the kernel to query errata status using the errata abi feature for platforms with a non-arm interconnect.
Change-Id: I47b03eaee5a0a763056ae71883fa30dfacb9b3f7 Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com>
show more ...
|
| ffea3844 | 19-Nov-2022 |
Sona Mathew <SonaRebecca.Mathew@arm.com> |
feat(errata_abi): errata management firmware interface
This patch adds the errata management firmware interface for lower ELs to discover details about CPU erratum. Based on the CPU erratum identifi
feat(errata_abi): errata management firmware interface
This patch adds the errata management firmware interface for lower ELs to discover details about CPU erratum. Based on the CPU erratum identifier the interface enables the OS to find the mitigation of an erratum in EL3.
The ABI can only be present in a system that is compliant with SMCCCv1.1 or higher. This implements v1.0 of the errata ABI spec.
For details on all possible return values, refer the design documentation below:
ABI design documentation: https://developer.arm.com/documentation/den0100/1-0?lang=en
Signed-off-by: Sona Mathew <SonaRebecca.Mathew@arm.com> Change-Id: I70f0e2569cf92e6e02ad82e3e77874546232b89a
show more ...
|
| 0c2583c6 | 11-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): correctly account for emad_offset
Use the address of emad 0 instead of the size of the MRD.
Change-Id: I31ec0001b4474e78caa9dfb468f63122a3708781 Signed-off-by: Demi Marie Obenour <de
fix(el3-spmc): correctly account for emad_offset
Use the address of emad 0 instead of the size of the MRD.
Change-Id: I31ec0001b4474e78caa9dfb468f63122a3708781 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 46d6b370 | 11-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): avoid unnecessarily revalidating offset
The offset has been validated on the first loop iteration. Subsequent iterations can assume it is valid.
Change-Id: Ib06cd0240220b8aa42b
refactor(el3-spmc): avoid unnecessarily revalidating offset
The offset has been validated on the first loop iteration. Subsequent iterations can assume it is valid.
Change-Id: Ib06cd0240220b8aa42bcd34c3c40b69d2d86aa72 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| d781959f | 11-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): only call spmc_shm_check_obj() on complete objects
When called on incomplete objects, it might fail or access uninitialized memory. This allows simplifying spmc_shm_check_obj().
Chan
fix(el3-spmc): only call spmc_shm_check_obj() on complete objects
When called on incomplete objects, it might fail or access uninitialized memory. This allows simplifying spmc_shm_check_obj().
Change-Id: I7c11f15d4c8ebe8cd15e7d8c37a0d0f3daa83675 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 77acde4c | 11-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(spmc): assert on out-of-bounds emad access
This always indicates a bug.
Change-Id: Ie0d5d4c84d9fb615ba6cdf0e6d46eab778fc7e94 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com> |
| cbbb8a03 | 31-Dec-2022 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): spmc_shmem_obj_get_emad() will never fail
Earlier validation ensures spmc_shmem_obj_get_emad() will never fail, so trip an assertion instead of returning NULL.
Change-Id: I285f3
refactor(el3-spmc): spmc_shmem_obj_get_emad() will never fail
Earlier validation ensures spmc_shmem_obj_get_emad() will never fail, so trip an assertion instead of returning NULL.
Change-Id: I285f3b59150773b2404db5719753fdb240e9ed63 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| 56c052d3 | 31-Dec-2022 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): validate descriptor headers
This avoids out-of-bounds reads later.
Change-Id: Iee4245a393f1fde63d8ebada25ea2568cf984871 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com> |
| 52d8d506 | 31-Dec-2022 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): use version-dependent minimum descriptor length
A v1.1 descriptor has a minimum length exceeding that of a v1.0 descriptor.
Change-Id: I06265d58f53eccb0d39927fe9ff396b73735df97 Signe
fix(el3-spmc): use version-dependent minimum descriptor length
A v1.1 descriptor has a minimum length exceeding that of a v1.0 descriptor.
Change-Id: I06265d58f53eccb0d39927fe9ff396b73735df97 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|