Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft: Support for methods with sequences of multi-byte elements, anywhere in argument list #6

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Commits on Oct 16, 2024

  1. fastrpc: libhexagonrpc: add interpretation three of method call format

    The method call format as interpreted last time had some limitations.
    First, input words could not appear after the input buffers, making it
    impossible to represent the apps_std_mkdir method accurately. Second, it
    was assumed that the lengths in the primary input buffer represent the
    number of bytes. In reality, the lengths represent the number of
    elements, which just happened to be octets in the majority of remote
    methods found, and the adsp_perf_get_usecs remote method could not be
    represented. Update the format for the third time to remove these
    limitations.
    
    This format allows the mixing of words and lengths of other buffers in
    the primary buffer by using 0 to denote words in an array of arguments.
    It also allows a greater size of elements, denoted by any non-zero
    value.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    09add3e View commit details
    Browse the repository at this point in the history
  2. fastrpc: libhexagonrpc: interfaces: remotectl: add interp3 definitions

    Add the remote method definitions according to the 3rd format version.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    5ad54cc View commit details
    Browse the repository at this point in the history
  3. fastrpc: libhexagonrpc: add error API

    When the kernel side of FastRPC fails, the return value is -1 and errno
    is set. When the remote side of FastRPC fails, the return value is an
    AEE error code. It is not specialized for the reverse tunnel. Add an
    error API that can convert the return value to a string-based error.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    2d14791 View commit details
    Browse the repository at this point in the history
  4. fastrpc: hexagonrpcd: interfaces: convert to interp3

    Add the remote method definitions for interfaces used by HexagonRPCD
    according to the 3rd format version.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    2425080 View commit details
    Browse the repository at this point in the history
  5. fastrpc: chrecd: interfaces: convert to interp3

    Add the remote method definitions for the CHRE interface according to
    the 3rd format version.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    9c210bc View commit details
    Browse the repository at this point in the history
  6. fastrpc: hexagonrpcd: use interface-defined inline functions

    The inline functions are convenient, but shouldn't be defined in every
    source file that uses them. Use the new functions defined in the
    interface definitions.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    040440f View commit details
    Browse the repository at this point in the history
  7. fastrpc: hexagonrpcd: listener: switch to interp3

    For a proper transition to version 3 of the method definitions, switch
    the reverse tunnel to version 3.
    flamingradian committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    1393c19 View commit details
    Browse the repository at this point in the history