diff options
author | Jon Mason <jon.mason@intel.com> | 2013-07-30 03:31:18 +0400 |
---|---|---|
committer | Jon Mason <jon.mason@intel.com> | 2014-04-07 21:59:19 +0400 |
commit | 403c63cb6d7ec2caca2f9222ff843ac89d7d700a (patch) | |
tree | 52fc7c3baff78ed964a24f9a98b8b4921b60601e /drivers | |
parent | 717e8e8bfe5fdb87e849cd46b03d7877b9d77729 (diff) | |
download | linux-403c63cb6d7ec2caca2f9222ff843ac89d7d700a.tar.xz |
NTB: client event cleanup
Provide a better event interface between the client and transport
Signed-off-by: Jon Mason <jon.mason@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ntb_netdev.c | 16 | ||||
-rw-r--r-- | drivers/ntb/ntb_hw.h | 4 | ||||
-rw-r--r-- | drivers/ntb/ntb_transport.c | 1 |
3 files changed, 13 insertions, 8 deletions
diff --git a/drivers/net/ntb_netdev.c b/drivers/net/ntb_netdev.c index 8e6752fd89ac..14570b28d528 100644 --- a/drivers/net/ntb_netdev.c +++ b/drivers/net/ntb_netdev.c @@ -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, diff --git a/drivers/ntb/ntb_hw.h b/drivers/ntb/ntb_hw.h index bbdb7edca10c..d1960ffb4bbc 100644 --- a/drivers/ntb/ntb_hw.h +++ b/drivers/ntb/ntb_hw.h @@ -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 diff --git a/drivers/ntb/ntb_transport.c b/drivers/ntb/ntb_transport.c index 3217f394d45b..042fb3dd354f 100644 --- a/drivers/ntb/ntb_transport.c +++ b/drivers/ntb/ntb_transport.c @@ -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 |