>  /**
> + * Driver loading
> + *
> + * This function is used by the application to load NIC drivers into ODP.
> + * Calls to this function are optional, but should be performed (if any)
> + * after odp_init_global
> + *
> + *
> + * @param filename        Driver shared lib (dynamic library)
> + *
> + * @retval 0 on success
> + * @retval <0 on failure
> + *
> + */
> +int odp_load_driver(const char *filename);

Why application should explicitly need to load a driver ? Why it cannot happen 
as part of odp_pktio_open() ?

To me a better approach would be:
* user reads implementation documentation or uses system commands to find a 
list of available interfaces
* odp_global_init() finds out available pktio interfaces and drivers for those
* application opens the interface the user commands (just like today)
* pktio_open call loads the driver

Or with more ODP support:
* odp_global_init() finds out available pktio interfaces and drivers for those
* a new API call lists all available interfaces
* application chooses an interface from the list and calls open
* pktio_open call loads the driver


-Petri

Reply via email to