• Michael Chan's avatar
    bnxt_en: Add logical RSS indirection table structure. · 1667cbf6
    Michael Chan authored
    The driver currently does not keep track of the logical RSS indirection
    table.  The hardware RSS table is set up with standard default ring
    distribution when initializing the chip.  This makes it difficult to
    support user sepcified indirection table entries.  As a first step, add
    the logical table in the main bnxt structure and allocate it according
    to chip specific table size.  Add a function that sets up default
    RSS distribution based on the number of RX rings.
    
    v4: Use bnxt_get_rxfh_indir_size() for the current RSS table size.
    
    v2: Use kmalloc_array() since we init. all entries afterwards.
        Use ALIGN() to roundup the RSS table size.
        Use ethtool_rxfh_indir_default() to init. the default entries.
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    1667cbf6
bnxt.c 324 KB