sfc: skeleton EF100 PF driver
No TX or RX path, no MCDI, not even an ifup/down handler. Besides stubs, the bulk of the patch deals with reading the Xilinx extended PCIe capability, which tells us where to find our BAR. Though in the same module, EF100 has its own struct pci_driver, which is named sfc_ef100. A small number of additional nic_type methods are added; those in the TX (tx_enqueue) and RX (rx_packet) paths are called through indirect call wrappers to minimise the performance impact. Signed-off-by: Edward Cree <ecree@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
61060c5dc5
commit
51b35a454e
@@ -25,6 +25,7 @@
|
||||
#include "efx.h"
|
||||
#include "efx_common.h"
|
||||
#include "efx_channels.h"
|
||||
#include "ef100.h"
|
||||
#include "rx_common.h"
|
||||
#include "tx_common.h"
|
||||
#include "nic.h"
|
||||
@@ -1360,8 +1361,14 @@ static int __init efx_init_module(void)
|
||||
if (rc < 0)
|
||||
goto err_pci;
|
||||
|
||||
rc = pci_register_driver(&ef100_pci_driver);
|
||||
if (rc < 0)
|
||||
goto err_pci_ef100;
|
||||
|
||||
return 0;
|
||||
|
||||
err_pci_ef100:
|
||||
pci_unregister_driver(&efx_pci_driver);
|
||||
err_pci:
|
||||
efx_destroy_reset_workqueue();
|
||||
err_reset:
|
||||
@@ -1378,6 +1385,7 @@ static void __exit efx_exit_module(void)
|
||||
{
|
||||
printk(KERN_INFO "Solarflare NET driver unloading\n");
|
||||
|
||||
pci_unregister_driver(&ef100_pci_driver);
|
||||
pci_unregister_driver(&efx_pci_driver);
|
||||
efx_destroy_reset_workqueue();
|
||||
#ifdef CONFIG_SFC_SRIOV
|
||||
|
Reference in New Issue
Block a user