]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/cnic_if.h
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / net / cnic_if.h
index 0dbeaec4f03a6888ac22dc350c2c2e2e0c49001e..9f44e0ffe003bfa90d88bc2c4bec12d5c833ef0c 100644 (file)
@@ -1,6 +1,6 @@
 /* cnic_if.h: Broadcom CNIC core network driver.
  *
- * Copyright (c) 2006-2010 Broadcom Corporation
+ * Copyright (c) 2006-2011 Broadcom Corporation
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #ifndef CNIC_IF_H
 #define CNIC_IF_H
 
-#define CNIC_MODULE_VERSION    "2.2.6"
-#define CNIC_MODULE_RELDATE    "Oct 12, 2010"
+#define CNIC_MODULE_VERSION    "2.2.12"
+#define CNIC_MODULE_RELDATE    "Jan 03, 2011"
 
 #define CNIC_ULP_RDMA          0
 #define CNIC_ULP_ISCSI         1
-#define CNIC_ULP_L4            2
-#define MAX_CNIC_ULP_TYPE_EXT  2
-#define MAX_CNIC_ULP_TYPE      3
+#define CNIC_ULP_FCOE          2
+#define CNIC_ULP_L4            3
+#define MAX_CNIC_ULP_TYPE_EXT  3
+#define MAX_CNIC_ULP_TYPE      4
 
 struct kwqe {
        u32 kwqe_op_flag;
 
+#define KWQE_QID_SHIFT         8
 #define KWQE_OPCODE_MASK       0x00ff0000
 #define KWQE_OPCODE_SHIFT      16
-#define KWQE_FLAGS_LAYER_SHIFT 28
 #define KWQE_OPCODE(x)         ((x & KWQE_OPCODE_MASK) >> KWQE_OPCODE_SHIFT)
+#define KWQE_LAYER_MASK                        0x70000000
+#define KWQE_LAYER_SHIFT               28
+#define KWQE_FLAGS_LAYER_MASK_L2       (2<<28)
+#define KWQE_FLAGS_LAYER_MASK_L3       (3<<28)
+#define KWQE_FLAGS_LAYER_MASK_L4       (4<<28)
+#define KWQE_FLAGS_LAYER_MASK_L5_RDMA  (5<<28)
+#define KWQE_FLAGS_LAYER_MASK_L5_ISCSI (6<<28)
+#define KWQE_FLAGS_LAYER_MASK_L5_FCOE  (7<<28)
 
        u32 kwqe_info0;
        u32 kwqe_info1;
@@ -62,6 +71,7 @@ struct kcqe {
                #define KCQE_FLAGS_LAYER_MASK_L4        (4<<28)
                #define KCQE_FLAGS_LAYER_MASK_L5_RDMA   (5<<28)
                #define KCQE_FLAGS_LAYER_MASK_L5_ISCSI  (6<<28)
+               #define KCQE_FLAGS_LAYER_MASK_L5_FCOE   (7<<28)
                #define KCQE_FLAGS_NEXT                 (1<<31)
                #define KCQE_FLAGS_OPCODE_MASK          (0xff<<16)
                #define KCQE_FLAGS_OPCODE_SHIFT         (16)
@@ -301,7 +311,7 @@ struct cnic_ulp_ops {
        void (*cm_abort_complete)(struct cnic_sock *);
        void (*cm_remote_close)(struct cnic_sock *);
        void (*cm_remote_abort)(struct cnic_sock *);
-       void (*iscsi_nl_send_msg)(struct cnic_dev *dev, u32 msg_type,
+       int (*iscsi_nl_send_msg)(void *ulp_ctx, u32 msg_type,
                                  char *data, u16 data_size);
        struct module *owner;
        atomic_t ref_count;