Hi Ruchika,
I just wanted to check what was required for you to make progress using virtio-rpmb. We've updated the spec for multi-block and I think implementing it in the C version of the backend is pretty trivial. The main thing I need is a decent way to test it.
The original backend was tested with the out of tree virtio-rpmb driver which I hacked up to meet the spec. However my proposal for a new kernel ABI fell flat:
Subject: [RFC PATCH 0/5] RPMB internal and user-space API + WIP virtio-rpmb frontend Date: Wed, 3 Mar 2021 13:54:55 +0000 Message-Id: 20210303135500.24673-1-alex.bennee@linaro.org
the main issue being not wanting to delegate crypto to inside the kernel. So we need to return to doing the frame calculations externally to the kernel and it simply acting as a conduit for the virtio frames. I can just hack up my original test branch for multi-block although it seems such a driver is unlikely to be merged anyway so it would just be an out-of-tree testing branch.
Ilias mentioned we could test if he completes his uboot driver but I recall there where some questions about how it fitted into u-boots driver structure (i.e. being treated as a real device). For your work do you still need a Linux driver for the rpmb anyway?
Hi Alex,
On Wed, 16 Feb 2022 at 15:51, Alex Bennée alex.bennee@linaro.org wrote:
Hi Ruchika,
I just wanted to check what was required for you to make progress using virtio-rpmb. We've updated the spec for multi-block and I think implementing it in the C version of the backend is pretty trivial. The main thing I need is a decent way to test it.
The original backend was tested with the out of tree virtio-rpmb driver which I hacked up to meet the spec. However my proposal for a new kernel ABI fell flat:
Subject: [RFC PATCH 0/5] RPMB internal and user-space API + WIP virtio-rpmb frontend Date: Wed, 3 Mar 2021 13:54:55 +0000 Message-Id: 20210303135500.24673-1-alex.bennee@linaro.org
the main issue being not wanting to delegate crypto to inside the kernel. So we need to return to doing the frame calculations externally to the kernel and it simply acting as a conduit for the virtio frames. I can just hack up my original test branch for multi-block although it seems such a driver is unlikely to be merged anyway so it would just be an out-of-tree testing branch.
Ilias mentioned we could test if he completes his uboot driver but I recall there where some questions about how it fitted into u-boots driver structure (i.e. being treated as a real device). For your work do you still need a Linux driver for the rpmb anyway?
Yes, I would need the Linux driver for rpmb. What I am trying to do is to hook this up with the tee-supplicant which will further talk to the virtio-rpmb device.
You can see the changes here https://github.com/ruchi393/optee_client/commit/41cb3a884e6574d271087464164e...
Regards, Ruchika
-- Alex Bennée
stratos-dev@op-lists.linaro.org