| #
ae4b70d6 |
| 24-Oct-2025 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge "feat(el3-spmc): update FF-A version checks" into integration
|
| #
52a502f9 |
| 24-Oct-2025 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge "feat(el3-spmc): enable FFA_MEM_RETRIEVE_MEM_REQ from the hypervisor" into integration
|
| #
3f1c63dd |
| 05-Feb-2025 |
Jay Monkman <jmonkman@google.com> |
feat(el3-spmc): update FF-A version checks
Fixed several version checks that failed with FF-A 1.2.
Change-Id: Idb37795e25eaa6f38ac4f065f68f8c8183cd26ea Signed-off-by: Jay Monkman <jmonkman@google.c
feat(el3-spmc): update FF-A version checks
Fixed several version checks that failed with FF-A 1.2.
Change-Id: Idb37795e25eaa6f38ac4f065f68f8c8183cd26ea Signed-off-by: Jay Monkman <jmonkman@google.com> Signed-off-by: Andrei Homescu <ahomescu@google.com>
show more ...
|
| #
7d34c9bb |
| 17-Oct-2024 |
Andrei Homescu <ahomescu@google.com> |
feat(el3-spmc): enable FFA_MEM_RETRIEVE_MEM_REQ from the hypervisor
pKVM calls this FF-A function to retrieve the descriptors for regions donated/lent/shared by a VM with an SP.
Change-Id: I55f1d67
feat(el3-spmc): enable FFA_MEM_RETRIEVE_MEM_REQ from the hypervisor
pKVM calls this FF-A function to retrieve the descriptors for regions donated/lent/shared by a VM with an SP.
Change-Id: I55f1d675db741bc8ddaaacae0d4d60245000fb34 Signed-off-by: Andrei Homescu <ahomescu@xwf.google.com>
show more ...
|
| #
030e4d0c |
| 23-Oct-2025 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge "fix(el3-spmc): validate fragment offset" into integration
|
| #
c55b519e |
| 17-Oct-2025 |
Andrei Homescu <ahomescu@xwf.google.com> |
fix(el3-spmc): validate fragment offset
Per Table 4.3 of DEN 0140 1.3ALP0, the fragment offset passed to FFA_MEM_FRAG_RX has the following requirement:
Offset must be equal to one of the followin
fix(el3-spmc): validate fragment offset
Per Table 4.3 of DEN 0140 1.3ALP0, the fragment offset passed to FFA_MEM_FRAG_RX has the following requirement:
Offset must be equal to one of the following: – The number of bytes of the transaction descriptor transmitted prior to the invocation of this interface. – The offset used in the previous invocation of this interface. This allows the Sender to re-transmit the previous fragment if the Receiver could not receive it due to an IMPLEMENTATION DEFINED reason.
Keep track of the last and next fragment offsets between calls to FFA_MEM_RETRIEVE_REQ and FFA_MEM_FRAG_RX and validate the fragment offset, returning INVALID_PARAMETERS if it doesn't match one of the two expected values.
BREAKING CHANGE: no longer accepts invalid fragment offsets
Change-Id: If549bb62a1960e9367d14bae842cb4e289429669 Signed-off-by: Andrei Homescu <ahomescu@xwf.google.com>
show more ...
|
| #
169505a4 |
| 20-Oct-2025 |
Govindraj Raja <govindraj.raja@arm.com> |
Merge "fix(el3-spmc): do not check NS bit for fragments" into integration
|
| #
153eb4c8 |
| 18-Oct-2025 |
Andrei Homescu <ahomescu@xwf.google.com> |
fix(el3-spmc): do not check NS bit for fragments
We set the internal NS bit for memory transaction descriptors after the first fragment. Skip the validation check on that NS bit on every fragment af
fix(el3-spmc): do not check NS bit for fragments
We set the internal NS bit for memory transaction descriptors after the first fragment. Skip the validation check on that NS bit on every fragment after the first one, because by then the bit will always be 1.
Change-Id: I2a9bff12ed5c3979b9d626ab33aac0115d81e2d1 Signed-off-by: Andrei Homescu <ahomescu@xwf.google.com>
show more ...
|
| #
90792ba0 |
| 16-Oct-2025 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "fix(el3-spmc): set NS bit by default and clear it as needed" into integration
|
| #
cb2e5746 |
| 31-Oct-2024 |
Andrei Homescu <ahomescu@google.com> |
fix(el3-spmc): set NS bit by default and clear it as needed
EL3-SPMC currently only supports sharing and lending memory from NS to the secure world (DONATE is not supported). That means that the NS
fix(el3-spmc): set NS bit by default and clear it as needed
EL3-SPMC currently only supports sharing and lending memory from NS to the secure world (DONATE is not supported). That means that the NS bit should always be set, except for a few cases: * The operation is a LEND (NS->S), or * The NS bit is not supported, i.e., v1.0 where the bit was not explicitly negotiated.
Change-Id: I00966a552906ebbe2675b4352afe5e85387e5775 Signed-off-by: Andrei Homescu <ahomescu@xwf.google.com>
show more ...
|
| #
640175ce |
| 17-Apr-2025 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "fix(el3-spmc): fix FF-A v1.2 version check" into integration
|
| #
6feaad6c |
| 09-Jan-2025 |
Jens Wiklander <jens.wiklander@linaro.org> |
fix(el3-spmc): fix FF-A v1.2 version check
The two functions spmc_validate_mtd_start() and spmc_ffa_mem_send() check FF-A version used with an end-point to determine the expected minimal size of the
fix(el3-spmc): fix FF-A v1.2 version check
The two functions spmc_validate_mtd_start() and spmc_ffa_mem_send() check FF-A version used with an end-point to determine the expected minimal size of the memory transaction descriptor. However, they haven't been updated for FF-A 1.2. So fix the two functions to take version 1.2 and beyond into account and use the version 1.1 size for the memory transaction.
Change-Id: I86b9092eff7c4df557ee43522c680e3bf92199ba Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
abe80629 |
| 25-Jul-2023 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "fix(el3-spmc): fix incorrect CASSERT" into integration
|
| #
1dd79f9e |
| 12-Jun-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): fix incorrect CASSERT
Check that the size of desc->emad_count is 4, not that sizeof(int) is nonzero. Also improve a comment.
Change-Id: I8bf69b637158ddffe2d08aed3d9879a4d7fd3514 Sig
fix(el3-spmc): fix incorrect CASSERT
Check that the size of desc->emad_count is 4, not that sizeof(int) is nonzero. Also improve a comment.
Change-Id: I8bf69b637158ddffe2d08aed3d9879a4d7fd3514 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| #
f6b8e725 |
| 22-Jun-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes I08300ec4,I0f6fa9ce,I8f0a659a into integration
* changes: refactor(el3-spmc): add comments and cleanup code refactor(el3-spmc): avoid extra loop fix(el3-spmc): validate memory ad
Merge changes I08300ec4,I0f6fa9ce,I8f0a659a into integration
* changes: refactor(el3-spmc): add comments and cleanup code refactor(el3-spmc): avoid extra loop fix(el3-spmc): validate memory address alignment
show more ...
|
| #
95c56cb1 |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): add comments and cleanup code
No functional change intended.
Change-Id: I08300ec4cb2e11d26c4a108769919d0c474292ff Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
|
| #
b8007beb |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): avoid extra loop
Using one loop for the duplicate partition ID check is both simpler and faster.
Change-Id: I0f6fa9ceb1aadf4383fa9be16605c39ad8643a43 Signed-off-by: Demi Marie O
refactor(el3-spmc): avoid extra loop
Using one loop for the duplicate partition ID check is both simpler and faster.
Change-Id: I0f6fa9ceb1aadf4383fa9be16605c39ad8643a43 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| #
327b5b8b |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
fix(el3-spmc): validate memory address alignment
This ensures that addresses shared using FF-A are 4K aligned, as required by the specification.
Change-Id: I8f0a659a095fdb9391398757141d613ac9bf9b42
fix(el3-spmc): validate memory address alignment
This ensures that addresses shared using FF-A are 4K aligned, as required by the specification.
Change-Id: I8f0a659a095fdb9391398757141d613ac9bf9b42 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| #
e779c1af |
| 20-Jun-2023 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge changes Ic58f4966,Ib7b438b8,I400f0f1f into integration
* changes: refactor(el3-spmc): add comments refactor(el3-spmc): move checks after loop refactor(el3-spmc): validate alignment earli
Merge changes Ic58f4966,Ib7b438b8,I400f0f1f into integration
* changes: refactor(el3-spmc): add comments refactor(el3-spmc): move checks after loop refactor(el3-spmc): validate alignment earlier
show more ...
|
| #
794c409f |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): add comments
Change-Id: Ic58f4966159cafa83eec8e6b18a96b0a8b2ce781 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
|
| #
966c63e6 |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): move checks after loop
This makes the code cleaner. No functional change intended.
Change-Id: Ib7b438b830e8e3b7ac6e30d688f5172cbaa58121 Signed-off-by: Demi Marie Obenour <demio
refactor(el3-spmc): move checks after loop
This makes the code cleaner. No functional change intended.
Change-Id: Ib7b438b830e8e3b7ac6e30d688f5172cbaa58121 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| #
27ac582a |
| 15-Jan-2023 |
Demi Marie Obenour <demiobenour@gmail.com> |
refactor(el3-spmc): validate alignment earlier
Future changes will cause spmc_shmem_obj_get_comp_mrd to panic instead of returning NULL, so be sure that comp_mrd_offset has been validated already.
refactor(el3-spmc): validate alignment earlier
Future changes will cause spmc_shmem_obj_get_comp_mrd to panic instead of returning NULL, so be sure that comp_mrd_offset has been validated already. The existing code checks for 8-byte alignment, but comments in el3_spmc_ffa_memory.h indicate that 16-byte alignment is expected, so require 16-byte alignment.
Change-Id: I400f0f1f163522cb5ea77d4811c91e8b7e655c18 Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
show more ...
|
| #
c161772f |
| 08-Jun-2023 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "refactor(el3-spmc): add emad_advance()" into integration
|
| #
396ea00a |
| 06-Jun-2023 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge changes I907f3862,Ie749ff06,If8da2bb1,I457deb0b into integration
* changes: fix(el3-spmc): validate shmem descriptor alignment refactor(el3-spmc): avoid using EINVAL fix(el3-spmc): avoid
Merge changes I907f3862,Ie749ff06,If8da2bb1,I457deb0b into integration
* changes: fix(el3-spmc): validate shmem descriptor alignment refactor(el3-spmc): avoid using EINVAL fix(el3-spmc): avoid descriptor size calc overflow fix(el3-spmc): use uint64_t for 64-bit type
show more ...
|
| #
dbe4765c |
| 06-Jun-2023 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "refactor(el3-spmc): avoid unneeded function call" into integration
|