• Thierry Reding's avatar
    firmware: tegra: Add IVC library · ca791d7f
    Thierry Reding authored
    The Inter-VM communication (IVC) is a communication protocol which is
    designed for interprocessor communication (IPC) or the communication
    between the hypervisor and the virtual machine with a guest OS.
    
    Message channels are used to communicate between processors. They are
    backed by DRAM or SRAM, so care must be taken to maintain coherence of
    data.
    
    The IVC library maintains memory-based descriptors for the transmission
    and reception channels as well as the data coherence of the counter and
    payload. Clients, such as the driver for the BPMP firmware, can use the
    library to exchange messages with remote processors.
    
    Based on work by Peter Newman <pnewman@nvidia.com> and Joseph Lo
    <josephl@nvidia.com>.
    Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
    ca791d7f
ivc.c 18.3 KB