On Thu, May 28, 2020 at 11:08:18AM +0300, Maxim Uvarov wrote: > On Wed, 27 May 2020 at 22:42, Jarkko Sakkinen > <jarkko.sakkinen@xxxxxxxxxxxxxxx> wrote: > > > > On Mon, 2020-05-25 at 09:50 +0300, Maxim Uvarov wrote: > > > Jakko, > > > tee-supplicant application provides state machine over callbacks with > > > RPC messages. > > > https://github.com/OP-TEE/optee_client/blob/master/tee-supplicant/src/tee_supplicant.c#L614 > > > It also allocates shm. Without running tee-supplicant > > > tee_client_open_session() will fail. > > > optee_open_session()->get_msg_arg()->tee_shm_alloc()->... > > > Optee team wanted to remove some dependencies from tee-supplicant with > > > moving code > > > to the kernel. But for now I think that should be out of the scope of > > > current patches due to > > > they fix driver initialization on tee bus without breaking current > > > functionality. > > > > So what is the role in high-level for tee-supplicant? Why does it > > exist? No time to dive into code unfortunately. > > > > Original implementation for tee-supplicant does several things: > 1. allocate shm > 2. load ta from user space (fs file) > 3. emulate rpmb > 4. also there are some ftrace and socket functions which I did not use. > > As I I understand, current implementation uses tee-supplicant and it's > library as > API from user land to Trusted OS. > > Some docs can be found here: > https://optee.readthedocs.io/en/latest/architecture/index.html > > > > > These kernel commits do not explain in simple terms enough how all > > of these entities connect with each other, if you don't have that > > understanding beforehand. > > > > Yes, that is true. But I think it's something new and good docs will > be some time later. There's already some in Documentation/tee.txt, but it will get outdated if we don't update it when we architectural changes like this. It's a pity we missed updating it with the introduction of the bus. It seems a good time to do it now so it easier to follow what's done. Cheers, Jens > > > /Jarkko > > > > Regards, > Maxim.