On 8/13/2025 8:00 PM, Konrad Dybcio wrote:
On 8/13/25 2:35 AM, Amirreza Zarrabi wrote:
Enable userspace to allocate shared memory with QTEE. Since QTEE handles shared memory as object, a wrapper is implemented to represent tee_shm as an object. The shared memory identifier, obtained through TEE_IOC_SHM_ALLOC, is transferred to the driver using TEE_IOCTL_PARAM_ATTR_TYPE_OBJREF_INPUT/OUTPUT.
Tested-by: Neil Armstrong neil.armstrong@linaro.org Acked-by: Sumit Garg sumit.garg@oss.qualcomm.com Tested-by: Harshal Dev quic_hdev@quicinc.com Signed-off-by: Amirreza Zarrabi amirreza.zarrabi@oss.qualcomm.com
[...]
+/* Mapping information format as expected by QTEE. */ +struct qcomtee_mapping_info {
- u64 paddr;
- u64 len;
- u32 perms;
+} __packed;
Please use types with explicit endianness, e.g. __le32. I'm assuming TZ will always be little-endian, regardless of the host OS
I'm not entirely sure how this point is relevant. As I understand it, the core that populates this struct is the same one that accesses it in TZ. Your argument would absolutely make sense if the host and TZ were operating on different cores with distinct architectures -- such as one being little-endian and the other big-endian, which is not the case.
Regards, Amir
Konrad