This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: Hypervisor

Part Number: TDA4VM


there is "Integrated cockpit demo" with Jailhouse hypervisor. I have two questions:

1. there are two VMs, they communicate through standard IPC or other way? And how the VM talk to R5f and DSP, still IPC?

2. For normal SDK, Linux run on A72 and we configure mailbox to Linux. if these two VMs run with IPC, does it mean we can configure mailbox to different A72 core(2 Linux guest) since IPC is based on mailbox?

  • Hi,

    IPC virtualization (ability for kernel to talk to other cores like R5 via mailbox)  - Currently is not supported.

    Individual VMs can communicate to each other using the IVSHMEM interfaces -  simple message passing interface.

    Also, the "Integrated Cockpit demo" we have stopped supporting since the SDK6.02 release.

    Let me know the use-case you want to run and probably I can get more information if that is possible or not. Currently IPC virtualization is not supported.

    To summarize:

    1. Root cell can talk to inmate cells and all other R5, C6x, C7x cores.
    2. Inmate cell can only talk to root cell.
    3. Communication between VMs is via ivshmem
    4. Communication between Linux and RTOS is via mailbox + virtio + rpmsg

    Regards,

    Karan

  • Hi Karan,

    From my understanding, if VM want to talk with other R5, C6x cores, it will talk to root cell, and root cell will talk to R5/C6x by IPC, i.e. mailbox+virtio+rpmsg. Is my understanding correct?

    Regards,

    Liang

  • Hi Liang,

    What you are saying is possible but ivshmem is only raw message sending, nothing more is available on top of that. So you might be able to pass small messages but not display buffers etc.. For all that IPC virtuallization needs to be supported and that is currently not supported.

    Can you please tell me the use-case you are envisioning? Maybe then I can suggest if there is some gap in the current SDK offering specific to that use-case?

    Regards,

    Karan

  • Hi Karan,

    Thanks for your answer.

    The use case I want to setup two case,

    1. LINUX SDK running on A72 and TI-RTOS running on R5,C6x,C71, this is normal AVP Demo

    2. Linux SDK running on one kind of hypervisor(no only Jailhouse, maybe others) on A72, and TI-RTOS running on R5,C6x,C71, try to run AVP Demo

    not sure 2nd case can be run.

    Regard

    Liang

  • Hi Liang,

    user6340387 said:
    2. Linux SDK running on one kind of hypervisor(no only Jailhouse, maybe others) on A72, and TI-RTOS running on R5,C6x,C71, try to run AVP Demo

    In this case how many OSes are running on A72? Reason I ask is because if you are are running only a single OS on A72 and you just want to restrict or police the resource accesses i.e. A72 Linux not touching RTOS memory and vice-versa then firewalls will be a better way to do so.

    And to answer if 2 is possible or not - there can be only 1 (either root cell running linux or one of the inmate cells running Linux) talking to remote core via IPC. Problem will come when you want more than 1 OSes to talk to remote core via IPC (this is not possible). But before we go there let me know the answer to my above question.

    Regards,

    Karan