cnic: Add a signature to indicate valid doorbell offset.
authorEddie Wai <eddie.wai@broadcom.com>
Wed, 1 Jan 2014 07:18:34 +0000 (23:18 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 2 Jan 2014 03:08:08 +0000 (22:08 -0500)
The buffer that is used to pass doorbell offset to the userspace UIO
driver may contain nonzero value in older versions of bnx2x driver.
Userspace cannot easily tell whether it contains a valid doorbell
offset or not.  With the added signature, userspace will only use
the doorbell offset if the signature is present.

Update version to 2.5.19.

Signed-off-by: Eddie Wai <eddie.wai@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/cnic.c
drivers/net/ethernet/broadcom/cnic.h
drivers/net/ethernet/broadcom/cnic_if.h

index f58a8b8..fcf9105 100644 (file)
@@ -5220,6 +5220,7 @@ static void cnic_init_rings(struct cnic_dev *dev)
                cnic_ring_ctl(dev, cid, cli, 1);
                *cid_ptr = cid >> 4;
                *(cid_ptr + 1) = cid * bp->db_size;
+               *(cid_ptr + 2) = UIO_USE_TX_DOORBELL;
        }
 }
 
index 0121a5d..0d6b13f 100644 (file)
@@ -186,6 +186,8 @@ struct kcq_info {
        u16             (*hw_idx)(u16);
 };
 
+#define UIO_USE_TX_DOORBELL 0x017855DB
+
 struct cnic_uio_dev {
        struct uio_info         cnic_uinfo;
        u32                     uio_dev;
index ebbfe25..8cf6b19 100644 (file)
@@ -14,8 +14,8 @@
 
 #include "bnx2x/bnx2x_mfw_req.h"
 
-#define CNIC_MODULE_VERSION    "2.5.18"
-#define CNIC_MODULE_RELDATE    "Sept 01, 2013"
+#define CNIC_MODULE_VERSION    "2.5.19"
+#define CNIC_MODULE_RELDATE    "December 19, 2013"
 
 #define CNIC_ULP_RDMA          0
 #define CNIC_ULP_ISCSI         1