• Harman Kalra's avatar
    octeontx2-af: cn10k: Setting up lmtst map table · 873a1e3d
    Harman Kalra authored
    Introducing a new mailbox to support updating lmt entries
    and common lmt base address scheme i.e. multiple pcifuncs
    can share lmt region to reduce L1 cache pressure for application.
    Parameters passed to mailbox includes the primary pcifunc
    value whose lmt regions will be shared by other secondary
    pcifuncs. Here secondary pcifunc will be the one who is
    calling the mailbox.
    For example:
    By default each pcifunc has its own LMT base address:
            PCIFUNC1    LMT_BASE_ADDR A
            PCIFUNC2    LMT_BASE_ADDR B
            PCIFUNC3    LMT_BASE_ADDR C
            PCIFUNC4    LMT_BASE_ADDR D
    Application will choose PCIFUNC1 as base/primary pcifunc
    and as and when other pcifunc(secondary pcifuncs) gets
    probed, this mailbox will be called and LMTST table will
    be updated as:
            PCIFUNC1    LMT_BASE_ADDR A
            PCIFUNC2    LMT_BASE_ADDR A
            PCIFUNC3    LMT_BASE_ADDR A
            PCIFUNC4    LMT_BASE_ADDR A
    
    On FLR lmtst map table gets resetted to the default lmt
    base addresses for all secondary pcifuncs.
    Signed-off-by: default avatarHarman Kalra <hkalra@marvell.com>
    Signed-off-by: default avatarGeetha sowjanya <gakula@marvell.com>
    Signed-off-by: default avatarSunil Goutham <sgoutham@marvell.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    873a1e3d
rvu.c 75.6 KB