• Linu Cherian's avatar
    octeontx2-af: Optimize data retrieval from firmware · 4f4eebf2
    Linu Cherian authored
    For retrieving info like interface MAC addresses, packet
    parser key extraction config etc currently a command
    is sent to firmware and firmware which periodically polls
    for commands, processes these and returns the info.
    
    This is resulting in interface initialization taking lot
    of time. To optimize this a memory region is shared between
    firmware and this driver, firmware while booting puts
    static info like these into that region for driver to
    read directly without using commands.
    
    With this
    - Logic for retrieving packet parser extraction config
      via commands is removed and repalced with using the
      shared 'fwdata' structure.
    - Now RVU MSIX vector address is also retrieved from this fwdata struct
      instead of from CSR. Otherwise when kexec/kdump crash kernel loads
      CSR will have a IOVA setup by primary kernel which impacts
      RVU PF/VF's interrupts.
    - Also added a mbox handler for PF/VF interfaces to retrieve their MAC
      addresses from AF.
    Signed-off-by: default avatarLinu Cherian <lcherian@marvell.com>
    Signed-off-by: default avatarChristina Jacob <cjacob@marvell.com>
    Signed-off-by: default avatarRakesh Babu <rsaladi2@marvell.com>
    Signed-off-by: default avatarSunil Goutham <sgoutham@marvell.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4f4eebf2
rvu.h 14 KB