X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fnfp%2Fnfp_nspu.c;h=6ba940cbf915fb7dc055bef1e47fdae4882437cd;hb=455da5453987;hp=2f5632dfb1f737372c9185c8287cf85011c49ddb;hpb=48e2255f1b634ed02e01d400e83335f0fd999411;p=dpdk.git diff --git a/drivers/net/nfp/nfp_nspu.c b/drivers/net/nfp/nfp_nspu.c index 2f5632dfb1..6ba940cbf9 100644 --- a/drivers/net/nfp/nfp_nspu.c +++ b/drivers/net/nfp/nfp_nspu.c @@ -11,7 +11,6 @@ #include #include "nfp_nfpu.h" -#include "nfp_net_eth.h" #define CFG_EXP_BAR_ADDR_SZ 1 #define CFG_EXP_BAR_MAP_TYPE 1 @@ -601,3 +600,24 @@ nfp_nsp_eth_config(nspu_desc_t *desc, int port, int up) rte_spinlock_unlock(&desc->nsp_lock); return ret; } + +int +nfp_nsp_eth_read_table(nspu_desc_t *desc, union eth_table_entry **table) +{ + int ret; + + RTE_LOG(INFO, PMD, "Reading hw ethernet table...\n"); + /* port 0 allocates the eth table and read it using NSPU */ + *table = malloc(NSP_ETH_TABLE_SIZE); + if (!table) + return -ENOMEM; + + ret = nspu_command(desc, NSP_CMD_READ_ETH_TABLE, 1, 0, *table, + NSP_ETH_TABLE_SIZE, 0); + if (ret) + return ret; + + RTE_LOG(INFO, PMD, "Done\n"); + + return 0; +}