X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fsoftnic%2Frte_eth_softnic.h;h=e8ba2bcaa7805c5d1d30a7d78830d72c57a4eb87;hb=cc0ed2f849e7ec14e0da69f716ce6ad784a1725a;hp=98b0828551baca37a584ac2c65a683ed083785e7;hpb=ea96935de26eb03e7ed19bce1a5f3660cfdc1391;p=dpdk.git diff --git a/drivers/net/softnic/rte_eth_softnic.h b/drivers/net/softnic/rte_eth_softnic.h index 98b0828551..e8ba2bcaa7 100644 --- a/drivers/net/softnic/rte_eth_softnic.h +++ b/drivers/net/softnic/rte_eth_softnic.h @@ -16,11 +16,36 @@ extern "C" { #define SOFTNIC_FIRMWARE "firmware.cli" #endif +/** TCP connection port (0 = no connectivity). */ +#ifndef SOFTNIC_CONN_PORT +#define SOFTNIC_CONN_PORT 0 +#endif + /** NUMA node ID. */ #ifndef SOFTNIC_CPU_ID #define SOFTNIC_CPU_ID 0 #endif +/** + * Service cores: + * + * 0 = The current device is run explicitly by the application. The firmware + * creates one or several pipelines for the current device and maps them to + * CPU cores that should not be service cores. The application is required + * to call rte_pmd_softnic_run() for the current device on each of these CPU + * cores in order to make the current device work. + * + * 1 = The current device is run on the service cores transparently to the + * application. The firmware creates one or several pipelines for the + * current device and maps them to CPU cores that should be service cores. + * Each of these service cores is calling rte_pmd_softnic_run() for the + * current device in order to make the current device work. The application + * is not allowed to call rte_pmd_softnic_run() for the current device. + */ +#ifndef SOFTNIC_SC +#define SOFTNIC_SC 1 +#endif + /** Traffic Manager: Number of scheduler queues. */ #ifndef SOFTNIC_TM_N_QUEUES #define SOFTNIC_TM_N_QUEUES (64 * 1024) @@ -42,6 +67,17 @@ extern "C" { int rte_pmd_softnic_run(uint16_t port_id); +/** + * Soft NIC manage. + * + * @param port_id + * Port ID of the Soft NIC device. + * @return + * Zero on success, error code otherwise. + */ +int __rte_experimental +rte_pmd_softnic_manage(uint16_t port_id); + #ifdef __cplusplus } #endif