cxgb3i,cxgb4i,libcxgbi: remove iSCSI DDP support
[cascardo/linux.git] / drivers / scsi / cxgbi / libcxgbi.h
index 9842301..827afa7 100644 (file)
@@ -84,91 +84,12 @@ static inline unsigned int cxgbi_ulp_extra_len(int submode)
        return ulp2_extra_len[submode & 3];
 }
 
-/*
- * struct pagepod_hdr, pagepod - pagepod format
- */
-
 #define CPL_RX_DDP_STATUS_DDP_SHIFT    16 /* ddp'able */
 #define CPL_RX_DDP_STATUS_PAD_SHIFT    19 /* pad error */
 #define CPL_RX_DDP_STATUS_HCRC_SHIFT   20 /* hcrc error */
 #define CPL_RX_DDP_STATUS_DCRC_SHIFT   21 /* dcrc error */
 
-struct cxgbi_pagepod_hdr {
-       u32 vld_tid;
-       u32 pgsz_tag_clr;
-       u32 max_offset;
-       u32 page_offset;
-       u64 rsvd;
-};
-
-#define PPOD_PAGES_MAX                 4
-struct cxgbi_pagepod {
-       struct cxgbi_pagepod_hdr hdr;
-       u64 addr[PPOD_PAGES_MAX + 1];
-};
-
-struct cxgbi_tag_format {
-       unsigned char sw_bits;
-       unsigned char rsvd_bits;
-       unsigned char rsvd_shift;
-       unsigned char filler[1];
-       u32 rsvd_mask;
-};
-
-struct cxgbi_gather_list {
-       unsigned int tag;
-       unsigned int length;
-       unsigned int offset;
-       unsigned int nelem;
-       struct page **pages;
-       dma_addr_t phys_addr[0];
-};
-
-struct cxgbi_ddp_info {
-       struct kref refcnt;
-       struct cxgbi_device *cdev;
-       struct pci_dev *pdev;
-       unsigned int max_txsz;
-       unsigned int max_rxsz;
-       unsigned int llimit;
-       unsigned int ulimit;
-       unsigned int nppods;
-       unsigned int idx_last;
-       unsigned char idx_bits;
-       unsigned char filler[3];
-       unsigned int idx_mask;
-       unsigned int rsvd_tag_mask;
-       spinlock_t map_lock;
-       struct cxgbi_gather_list **gl_map;
-};
-
 #define DDP_PGIDX_MAX          4
-#define DDP_THRESHOLD          2048
-
-#define PPOD_PAGES_SHIFT       2       /*  4 pages per pod */
-
-#define PPOD_SIZE               sizeof(struct cxgbi_pagepod)  /*  64 */
-#define PPOD_SIZE_SHIFT         6
-
-#define ULPMEM_DSGL_MAX_NPPODS 16      /*  1024/PPOD_SIZE */
-#define ULPMEM_IDATA_MAX_NPPODS        4       /*  256/PPOD_SIZE */
-#define PCIE_MEMWIN_MAX_NPPODS 16      /*  1024/PPOD_SIZE */
-
-#define PPOD_COLOR_SHIFT       0
-#define PPOD_COLOR(x)          ((x) << PPOD_COLOR_SHIFT)
-
-#define PPOD_IDX_SHIFT          6
-#define PPOD_IDX_MAX_SIZE       24
-
-#define PPOD_TID_SHIFT         0
-#define PPOD_TID(x)            ((x) << PPOD_TID_SHIFT)
-
-#define PPOD_TAG_SHIFT         6
-#define PPOD_TAG(x)            ((x) << PPOD_TAG_SHIFT)
-
-#define PPOD_VALID_SHIFT       24
-#define PPOD_VALID(x)          ((x) << PPOD_VALID_SHIFT)
-#define PPOD_VALID_FLAG                PPOD_VALID(1U)
 
 /*
  * sge_opaque_hdr -
@@ -548,15 +469,8 @@ struct cxgbi_device {
        unsigned int tx_max_size;
        unsigned int rx_max_size;
        struct cxgbi_ports_map pmap;
-       struct cxgbi_tag_format tag_format;
-       struct cxgbi_ddp_info *ddp;
 
        void (*dev_ddp_cleanup)(struct cxgbi_device *);
-       int (*csk_ddp_set)(struct cxgbi_sock *, struct cxgbi_pagepod_hdr *,
-                               unsigned int, unsigned int,
-                               struct cxgbi_gather_list *);
-       void (*csk_ddp_clear)(struct cxgbi_hba *,
-                               unsigned int, unsigned int, unsigned int);
        int (*csk_ddp_setup_digest)(struct cxgbi_sock *,
                                unsigned int, int, int, int);
        int (*csk_ddp_setup_pgidx)(struct cxgbi_sock *,
@@ -600,78 +514,6 @@ struct cxgbi_task_data {
 #define iscsi_task_cxgbi_data(task) \
        ((task)->dd_data + sizeof(struct iscsi_tcp_task))
 
-static inline int cxgbi_is_ddp_tag(struct cxgbi_tag_format *tformat, u32 tag)
-{
-       return !(tag & (1 << (tformat->rsvd_bits + tformat->rsvd_shift - 1)));
-}
-
-static inline int cxgbi_sw_tag_usable(struct cxgbi_tag_format *tformat,
-                                       u32 sw_tag)
-{
-       sw_tag >>= (32 - tformat->rsvd_bits);
-       return !sw_tag;
-}
-
-static inline u32 cxgbi_set_non_ddp_tag(struct cxgbi_tag_format *tformat,
-                                       u32 sw_tag)
-{
-       unsigned char shift = tformat->rsvd_bits + tformat->rsvd_shift - 1;
-       u32 mask = (1 << shift) - 1;
-
-       if (sw_tag && (sw_tag & ~mask)) {
-               u32 v1 = sw_tag & ((1 << shift) - 1);
-               u32 v2 = (sw_tag >> (shift - 1)) << shift;
-
-               return v2 | v1 | 1 << shift;
-       }
-
-       return sw_tag | 1 << shift;
-}
-
-static inline u32 cxgbi_ddp_tag_base(struct cxgbi_tag_format *tformat,
-                                       u32 sw_tag)
-{
-       u32 mask = (1 << tformat->rsvd_shift) - 1;
-
-       if (sw_tag && (sw_tag & ~mask)) {
-               u32 v1 = sw_tag & mask;
-               u32 v2 = sw_tag >> tformat->rsvd_shift;
-
-               v2 <<= tformat->rsvd_bits + tformat->rsvd_shift;
-
-               return v2 | v1;
-       }
-
-       return sw_tag;
-}
-
-static inline u32 cxgbi_tag_rsvd_bits(struct cxgbi_tag_format *tformat,
-                                       u32 tag)
-{
-       if (cxgbi_is_ddp_tag(tformat, tag))
-               return (tag >> tformat->rsvd_shift) & tformat->rsvd_mask;
-
-       return 0;
-}
-
-static inline u32 cxgbi_tag_nonrsvd_bits(struct cxgbi_tag_format *tformat,
-                                       u32 tag)
-{
-       unsigned char shift = tformat->rsvd_bits + tformat->rsvd_shift - 1;
-       u32 v1, v2;
-
-       if (cxgbi_is_ddp_tag(tformat, tag)) {
-               v1 = tag & ((1 << tformat->rsvd_shift) - 1);
-               v2 = (tag >> (shift + 1)) << tformat->rsvd_shift;
-       } else {
-               u32 mask = (1 << shift) - 1;
-               tag &= ~(1 << shift);
-               v1 = tag & mask;
-               v2 = (tag >> 1) & ~mask;
-       }
-       return v1 | v2;
-}
-
 static inline void *cxgbi_alloc_big_mem(unsigned int size,
                                        gfp_t gfp)
 {
@@ -749,7 +591,4 @@ int cxgbi_ddp_init(struct cxgbi_device *, unsigned int, unsigned int,
                        unsigned int, unsigned int);
 int cxgbi_ddp_cleanup(struct cxgbi_device *);
 void cxgbi_ddp_page_size_factor(int *);
-void cxgbi_ddp_ppod_clear(struct cxgbi_pagepod *);
-void cxgbi_ddp_ppod_set(struct cxgbi_pagepod *, struct cxgbi_pagepod_hdr *,
-                       struct cxgbi_gather_list *, unsigned int);
 #endif /*__LIBCXGBI_H__*/