• Ben Hutchings's avatar
    sfc: Update MCDI protocol definitions for EF10 · f2b0befd
    Ben Hutchings authored
    EF10 controllers do not have shared memory for communication with the
    MC; instead it reads requests and writes responses in host memory,
    which allows for longer messages.  It is also responsible for all
    datapath control operations and hardware resource allocation, which
    requires a large number of new commands and adds more possible error
    cases.  MCDI v2 extends the message header to support this.
    
    Update the MCDI protocol definition header to include v2 lengths,
    errors and messages, and a few definitions specific to the
    SFC9100 family (codenames Farmingdale and Huntington) which is
    the first generation of EF10.
    
    Some messages have been extended, so adjust the code accordingly:
    - The request for MC_CMD_DRV_ATTACH now includes a datapath firmware
      ID.  This is ignored by Siena but we should fill it in anyway,
      initially always specifying low-latency datapath.
    - The response for MC_CMD_GET_LOOPBACK_MODES now includes a 40G
      field.  Accept shorter responses that don't include it.
    Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
    f2b0befd
mcdi.c 30.6 KB