Skip to content
  • Alessandro Rubini's avatar
    userspace/hal: move RPC data marshalling to libwr · 84684e87
    Alessandro Rubini authored
    
    
    This is the first step to move the "get_port_state" query to shared
    memory.  The internal structures of hal_ports.c will be allocated
    in shared memory, so the calls to halexp_* will just convert the data,
    without context-switching to the hal process.
    
    I couldn't add the functions to libwr/hal_client.c where they belong,
    because the choice of using the same "halexp" names for local and remote
    calls would lead to duplicate symbol definitions when linking the hal
    (the hal process links libwr, but can't link hal_client.o).
    Thus, libwr/hal_shmem.c is created, to host the parts of hal/hal_ports.c
    that are needed to convert data.
    
    Signed-off-by: default avatarAlessandro Rubini <rubini@gnudd.com>
    84684e87