Hi Jorge

On 07/09/26 12:38, Jorge Ramirez wrote:
> On 27/08/26 11:01:41, Jorge Ramirez wrote:
>> On 21/08/26 16:02:18, Jorge Ramirez wrote:
>>> On 17/08/26 16:38:40, Jorge Ramirez wrote:
>>>> On 07/08/26 16:01:05, Jorge Ramirez-Ortiz wrote:
>>>>> OP-TEE secure storage (CFG_RPMB_FS) relies on an RPMB partition, but
>>>>> U-Boot's OP-TEE RPMB supplicant only speaks the legacy single-command
>>>>> interface, which is bound to eMMC. SoCs that are UFS-only and have no
>>>>> eMMC (for example the Qualcomm SA8775P) therefore cannot back OP-TEE
>>>>> secure storage from U-Boot today. This series adds that support.
>>>>>
>>>>> It introduces the transport-agnostic OP-TEE RPMB "subsystem" interface
>>>>> (PROBE_RESET / PROBE_NEXT / FRAMES), where the normal world enumerates
>>>>> the RPMB device and reports its kind, size and CID, then carries the
>>>>> signed frames. The legacy eMMC supplicant is preserved unchanged, only
>>>>> renamed to rpmb_emmc.c, with the new UFS backend added as a separate
>>>>> rpmb_ufs.c; the two are mutually exclusive via Kconfig (SUPPORT_UFS_RPMB
>>>>> depends on !SUPPORT_EMMC_RPMB) because the OP-TEE supplicant handles a
>>>>> single RPMB transport. The subsystem interface is UFS-only for now; eMMC
>>>>> can be migrated onto it later as the legacy path is retired.
>>>>>
>>>>> On top of that it adds a UFS RPMB transport that moves JEDEC RPMB frames
>>>>> to and from the RPMB Well-Known LUN using SCSI SECURITY PROTOCOL IN/OUT.
>>>>> The per-region 16-byte CID is derived by BLAKE2b-hashing the exact
>>>>> device-id string the Linux kernel builds (ufshcd_create_device_id()
>>>>> plus a "-R<region>" suffix), so OP-TEE derives an RPMB key that matches
>>>>> the one Linux would use.
>>>>>
>>>>> The first patch is a standalone UFS descriptor fix the RPMB path depends
>>>>> on (UTF-16BE string decoding); the transport patches also include a
>>>>> power-on UNIT ATTENTION retry and a DMA-alignment bounce for the RPMB
>>>>> WLUN.
>>>>>
>>>>> Note: reading UFS descriptors reliably also requires the descriptor
>>>>> data-segment cache-invalidation fix, which has already been posted and
>>>>> merged separately, so this series is based on top of it.
>>>>>
>>>>> Tested on the Qualcomm IQ-9075-EVK (SA8775P): OP-TEE with CFG_RPMB_FS
>>>>> programs the RPMB key through U-Boot and reads/writes secure-storage
>>>>> objects, with the derived CID matching the Linux UFS device_id ABI.
>>>>>
>>>>> Dependencies:
>>>>> Linux kernel:
>>>>>  
>>>>> https://lore.kernel.org/linux-scsi/[email protected]/
>>>>> Op-tee
>>>>>  https://github.com/OP-TEE/optee_os/pull/7881
>>>>>
>>>>> v4:
>>>>>  - ufs: decode string descriptors: dropped the in-place
>>>>>    ufshcd_str_desc_to_cpu() byte-swap helper; instead added an endian
>>>>>    argument to utf16_to_utf8() (UTF16_HOST/LITTLE/BIG_ENDIAN) and decode
>>>>>    with UTF16_BIG_ENDIAN, mirroring the kernel's utf16s_to_utf8s().
>>>>>    Existing EFI callers pass UTF16_HOST_ENDIAN.
>>>>>  - ufs: RPMB transport: build the SECURITY PROTOCOL CDB with
>>>>>    put_unaligned_be16()/put_unaligned_be32(); drop the
>>>>>    rpmb_frame_request() helper in favour of get_unaligned_be16(); move
>>>>>    ufs_rpmb_read_geometry() to the patch that first uses it so it is not
>>>>>    an unused static function during git bisect.
>>>>>  - ufs: per-region CID/size: reject an out-of-range device-reported
>>>>>    logical block size before shifting and split the size computation into
>>>>>    separate statements for readability; order <u-boot/...> after
>>>>>    <linux/...>; note that the serial hex encoding matches the kernel
>>>>>    device-id ABI.
>>>>>
>>>>
>>>> any further comments, is it ok to merge?
>>>>
>>>
>>> EOW reminder - this has been pending for a long while
>>
>>
>> anyone care to comment please? 
> 
> 
> kernel changes accepted and op-tee changes merged.
> Just this one pending with no comments for nearly a month.
> 
> maybe we can merge?
> 
> thanks
> Jorge
> 
> 
> 

Looks like you're sending to the old mailing list instead of
[email protected]

-- 
Thanking You
Neha Malcom Francis

Reply via email to