NTB: client event cleanup
Provide a better event interface between the client and transport Signed-off-by: Jon Mason <jon.mason@intel.com>
This commit is contained in:
parent
717e8e8bfe
commit
403c63cb6d
|
@ -78,11 +78,19 @@ static void ntb_netdev_event_handler(void *data, int status)
|
|||
netdev_dbg(ndev, "Event %x, Link %x\n", status,
|
||||
ntb_transport_link_query(dev->qp));
|
||||
|
||||
/* Currently, only link status event is supported */
|
||||
if (status)
|
||||
netif_carrier_on(ndev);
|
||||
else
|
||||
switch (status) {
|
||||
case NTB_LINK_DOWN:
|
||||
netif_carrier_off(ndev);
|
||||
break;
|
||||
case NTB_LINK_UP:
|
||||
if (!ntb_transport_link_query(dev->qp))
|
||||
return;
|
||||
|
||||
netif_carrier_on(ndev);
|
||||
break;
|
||||
default:
|
||||
netdev_warn(ndev, "Unsupported event type %d\n", status);
|
||||
}
|
||||
}
|
||||
|
||||
static void ntb_netdev_rx_handler(struct ntb_transport_qp *qp, void *qp_data,
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
* Contact Information:
|
||||
* Jon Mason <jon.mason@intel.com>
|
||||
*/
|
||||
#include <linux/ntb.h>
|
||||
|
||||
#define PCI_DEVICE_ID_INTEL_NTB_B2B_JSF 0x3725
|
||||
#define PCI_DEVICE_ID_INTEL_NTB_PS_JSF 0x3726
|
||||
|
@ -83,9 +84,6 @@ static inline void writeq(u64 val, void __iomem *addr)
|
|||
#define NTB_BAR_MASK ((1 << NTB_BAR_MMIO) | (1 << NTB_BAR_23) |\
|
||||
(1 << NTB_BAR_45))
|
||||
|
||||
#define NTB_LINK_DOWN 0
|
||||
#define NTB_LINK_UP 1
|
||||
|
||||
#define NTB_HB_TIMEOUT msecs_to_jiffies(1000)
|
||||
|
||||
#define NTB_MAX_NUM_MW 2
|
||||
|
|
|
@ -56,7 +56,6 @@
|
|||
#include <linux/pci.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/ntb.h>
|
||||
#include "ntb_hw.h"
|
||||
|
||||
#define NTB_TRANSPORT_VERSION 3
|
||||
|
|
|
@ -54,6 +54,11 @@ struct ntb_client {
|
|||
void (*remove) (struct pci_dev *pdev);
|
||||
};
|
||||
|
||||
enum {
|
||||
NTB_LINK_DOWN = 0,
|
||||
NTB_LINK_UP,
|
||||
};
|
||||
|
||||
int ntb_register_client(struct ntb_client *drvr);
|
||||
void ntb_unregister_client(struct ntb_client *drvr);
|
||||
int ntb_register_client_dev(char *device_name);
|
||||
|
|
Loading…
Reference in New Issue