The branch main has been updated by imp:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=bbe35708ad0313769ae71fdd43b573e6fffce587

commit bbe35708ad0313769ae71fdd43b573e6fffce587
Author:     Elliott Mitchell <ehem+free...@m5p.com>
AuthorDate: 2022-06-23 00:53:47 +0000
Commit:     Warner Losh <i...@freebsd.org>
CommitDate: 2023-02-04 16:13:08 +0000

    qlnx: purge EOL release compatibility
    
    Drop code that supproted FreeBSD 10 and 11.
    
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/603
    Differential Revision: https://reviews.freebsd.org/D35560
---
 sys/dev/qlnx/qlnxe/bcm_osal.h    |  31 --
 sys/dev/qlnx/qlnxe/qlnx_def.h    |  13 -
 sys/dev/qlnx/qlnxe/qlnx_os.c     | 102 +-----
 sys/dev/qlnx/qlnxe/qlnx_os.h     |   4 -
 sys/dev/qlnx/qlnxr/qlnxr_cm.c    |  12 -
 sys/dev/qlnx/qlnxr/qlnxr_cm.h    |  10 -
 sys/dev/qlnx/qlnxr/qlnxr_def.h   |  17 -
 sys/dev/qlnx/qlnxr/qlnxr_os.c    |  38 +--
 sys/dev/qlnx/qlnxr/qlnxr_verbs.c | 715 +--------------------------------------
 sys/dev/qlnx/qlnxr/qlnxr_verbs.h |  46 ---
 10 files changed, 8 insertions(+), 980 deletions(-)

diff --git a/sys/dev/qlnx/qlnxe/bcm_osal.h b/sys/dev/qlnx/qlnxe/bcm_osal.h
index c39b9df46cb7..07b0fe47ea36 100644
--- a/sys/dev/qlnx/qlnxe/bcm_osal.h
+++ b/sys/dev/qlnx/qlnxe/bcm_osal.h
@@ -35,16 +35,7 @@
 #include <sys/bitstring.h>
 
 #include <linux/types.h>
-
-#if __FreeBSD_version >= 1200032
 #include <linux/bitmap.h>
-#else
-#if __FreeBSD_version >= 1100090
-#include <compat/linuxkpi/common/include/linux/bitops.h>
-#else
-#include <ofed/include/linux/bitops.h>
-#endif
-#endif
 
 #define OSAL_NUM_CPUS()        mp_ncpus
 /*
@@ -481,34 +472,12 @@ qlnx_test_and_change_bit(long bit, volatile unsigned long 
*var)
 
        val = *var;
 
-#if __FreeBSD_version >= 1100000
        if (val & bit) 
                return (test_and_clear_bit(bit, var));
 
        return (test_and_set_bit(bit, var));
-#else
-       if (val & bit) 
-               return (test_and_clear_bit(bit, (long *)var));
-
-       return (test_and_set_bit(bit, (long *)var));
-
-#endif
 }
 
-#if __FreeBSD_version < 1100000
-static inline unsigned
-bitmap_weight(unsigned long *bitmap, unsigned nbits)
-{
-        unsigned bit;
-        unsigned retval = 0;
-
-        for_each_set_bit(bit, bitmap, nbits)
-                retval++;
-        return (retval);
-}
-
-#endif
-
 #define OSAL_TEST_AND_FLIP_BIT qlnx_test_and_change_bit
 #define OSAL_TEST_AND_CLEAR_BIT test_and_clear_bit
 #define OSAL_MEMCMP memcmp
diff --git a/sys/dev/qlnx/qlnxe/qlnx_def.h b/sys/dev/qlnx/qlnxe/qlnx_def.h
index 7b5f6bdc25f3..87ef7985647d 100644
--- a/sys/dev/qlnx/qlnxe/qlnx_def.h
+++ b/sys/dev/qlnx/qlnxe/qlnx_def.h
@@ -715,17 +715,6 @@ extern int qlnx_alloc_mem_sb(qlnx_host_t *ha, struct 
ecore_sb_info *sb_info,
 #define QLNX_IFM_25G_CR IFM_UNKNOWN
 #endif /* #if (defined IFM_25G_SR) */
 
-#if __FreeBSD_version < 1100000
-
-#define QLNX_INC_IERRORS(ifp)          ifp->if_ierrors++
-#define QLNX_INC_IQDROPS(ifp)          ifp->if_iqdrops++
-#define QLNX_INC_IPACKETS(ifp)         ifp->if_ipackets++
-#define QLNX_INC_OPACKETS(ifp)         ifp->if_opackets++
-#define QLNX_INC_OBYTES(ifp, len)      ifp->if_obytes += len
-#define QLNX_INC_IBYTES(ifp, len)      ifp->if_ibytes += len
-
-#else
-
 #define QLNX_INC_IERRORS(ifp)  if_inc_counter(ifp, IFCOUNTER_IERRORS, 1)
 #define QLNX_INC_IQDROPS(ifp)  if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1)
 #define QLNX_INC_IPACKETS(ifp) if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1)
@@ -736,8 +725,6 @@ extern int qlnx_alloc_mem_sb(qlnx_host_t *ha, struct 
ecore_sb_info *sb_info,
 #define QLNX_INC_IBYTES(ifp, len)      \
                        if_inc_counter(ha->ifp, IFCOUNTER_IBYTES, len)
 
-#endif /* #if __FreeBSD_version < 1100000 */
-
 #define CQE_L3_PACKET(flags)    \
         ((((flags) & PARSING_AND_ERR_FLAGS_L3TYPE_MASK) == e_l3_type_ipv4) || \
         (((flags) & PARSING_AND_ERR_FLAGS_L3TYPE_MASK) == e_l3_type_ipv6))
diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c
index 80056215f7a9..9d31024c29c1 100644
--- a/sys/dev/qlnx/qlnxe/qlnx_os.c
+++ b/sys/dev/qlnx/qlnxe/qlnx_os.c
@@ -152,9 +152,7 @@ static int qlnx_alloc_tpa_mbuf(qlnx_host_t *ha, uint16_t 
rx_buf_size,
                struct qlnx_agg_info *tpa);
 static void qlnx_free_tpa_mbuf(qlnx_host_t *ha, struct qlnx_agg_info *tpa);
 
-#if __FreeBSD_version >= 1100000
 static uint64_t qlnx_get_counter(if_t ifp, ift_counter cnt);
-#endif
 
 /*
  * Hooks to the Operating Systems
@@ -274,12 +272,6 @@ SYSCTL_NODE(_hw, OID_AUTO, qlnxe, CTLFLAG_RD | 
CTLFLAG_MPSAFE, 0,
 /* Number of Queues: 0 (Auto) or 1 to 32 (fixed queue number) */
 static int qlnxe_queue_count = QLNX_DEFAULT_RSS;
 
-#if __FreeBSD_version < 1100000
-
-TUNABLE_INT("hw.qlnxe.queue_count", &qlnxe_queue_count);
-
-#endif
-
 SYSCTL_INT(_hw_qlnxe, OID_AUTO, queue_count, CTLFLAG_RDTUN,
                &qlnxe_queue_count, 0, "Multi-Queue queue count");
 
@@ -304,20 +296,9 @@ SYSCTL_INT(_hw_qlnxe, OID_AUTO, queue_count, CTLFLAG_RDTUN,
 /* RDMA configuration; 64bit field allows setting for 16 physical functions*/
 static uint64_t qlnxe_rdma_configuration = 0x22222222; 
 
-#if __FreeBSD_version < 1100000
-
-TUNABLE_QUAD("hw.qlnxe.rdma_configuration", &qlnxe_rdma_configuration);
-
-SYSCTL_UQUAD(_hw_qlnxe, OID_AUTO, rdma_configuration, CTLFLAG_RDTUN,
-               &qlnxe_rdma_configuration, 0, "RDMA Configuration");
-
-#else
-
 SYSCTL_U64(_hw_qlnxe, OID_AUTO, rdma_configuration, CTLFLAG_RDTUN,
                 &qlnxe_rdma_configuration, 0, "RDMA Configuration");
 
-#endif /* #if __FreeBSD_version < 1100000 */
-
 int
 qlnx_vf_device(qlnx_host_t *ha)
 {
@@ -2333,8 +2314,6 @@ qlnx_init_ifnet(device_t dev, qlnx_host_t *ha)
 
        device_id = pci_get_device(ha->pci_dev);
 
-#if __FreeBSD_version >= 1000000
-
         if (device_id == QLOGIC_PCI_DEVICE_ID_1634) 
                ifp->if_baudrate = IF_Gbps(40);
         else if ((device_id == QLOGIC_PCI_DEVICE_ID_1656) ||
@@ -2346,11 +2325,6 @@ qlnx_init_ifnet(device_t dev, qlnx_host_t *ha)
                ifp->if_baudrate = IF_Gbps(100);
 
         ifp->if_capabilities = IFCAP_LINKSTATE;
-#else
-        ifp->if_mtu = ETHERMTU;
-       ifp->if_baudrate = (1 * 1000 * 1000 *1000);
-
-#endif /* #if __FreeBSD_version >= 1000000 */
 
         ifp->if_init = qlnx_init;
         ifp->if_softc = ha;
@@ -2363,9 +2337,7 @@ qlnx_init_ifnet(device_t dev, qlnx_host_t *ha)
         ifp->if_snd.ifq_drv_maxlen = qlnx_get_ifq_snd_maxlen(ha);
         IFQ_SET_READY(&ifp->if_snd);
 
-#if __FreeBSD_version >= 1100036
        if_setgetcounterfn(ifp, qlnx_get_counter);
-#endif
 
         ha->max_frame_size = ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN;
 
@@ -2789,8 +2761,6 @@ qlnx_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
                VLAN_CAPABILITIES(ifp);
                break;
 
-#if (__FreeBSD_version >= 1100101)
-
        case SIOCGI2C:
        {
                struct ifi2creq i2c;
@@ -2838,7 +2808,6 @@ qlnx_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
                        i2c.data[4], i2c.data[5], i2c.data[6], i2c.data[7]);
                break;
        }
-#endif /* #if (__FreeBSD_version >= 1100101) */
 
        default:
                QL_DPRINT4(ha, "default (0x%lx)\n", cmd);
@@ -3085,11 +3054,7 @@ qlnx_transmit(struct ifnet *ifp, struct mbuf  *mp)
 
         QL_DPRINT2(ha, "enter\n");
 
-#if __FreeBSD_version >= 1100000
         if (M_HASHTYPE_GET(mp) != M_HASHTYPE_NONE)
-#else
-        if (mp->m_flags & M_FLOWID)
-#endif
                 rss_id = (mp->m_pkthdr.flowid % ECORE_RSS_IND_TABLE_SIZE) %
                                        ha->num_rss;
 
@@ -3971,9 +3936,7 @@ qlnx_tpa_start(qlnx_host_t *ha,
        bus_dmamap_t            map;
        struct eth_rx_bd        *rx_bd;
        int                     i;
-#if __FreeBSD_version >= 1100000
        uint8_t                 hash_type;
-#endif /* #if __FreeBSD_version >= 1100000 */
 
        agg_index = cqe->tpa_agg_index;
 
@@ -4225,8 +4188,6 @@ qlnx_tpa_start(qlnx_host_t *ha,
        //mp->m_pkthdr.flowid = fp->rss_id;
        mp->m_pkthdr.flowid = cqe->rss_hash;
 
-#if __FreeBSD_version >= 1100000
-
        hash_type = cqe->bitfields &
                        (ETH_FAST_PATH_RX_REG_CQE_RSS_HASH_TYPE_MASK <<
                        ETH_FAST_PATH_RX_REG_CQE_RSS_HASH_TYPE_SHIFT);
@@ -4253,10 +4214,6 @@ qlnx_tpa_start(qlnx_host_t *ha,
                break;
        }
 
-#else
-       mp->m_flags |= M_FLOWID;
-#endif
-
        mp->m_pkthdr.csum_flags |= (CSUM_IP_CHECKED | CSUM_IP_VALID |
                                        CSUM_DATA_VALID | CSUM_PSEUDO_HDR);
 
@@ -4600,9 +4557,7 @@ qlnx_rx_int(qlnx_host_t *ha, struct qlnx_fastpath *fp, 
int budget,
                 enum eth_rx_cqe_type           cqe_type;
                 uint16_t                       len, pad, len_on_first_bd;
                 uint8_t                                *data;
-#if __FreeBSD_version >= 1100000
                uint8_t                         hash_type;
-#endif /* #if __FreeBSD_version >= 1100000 */
 
                 /* Get the CQE from the completion ring */
                 cqe = (union eth_rx_cqe *)
@@ -4742,8 +4697,6 @@ qlnx_rx_int(qlnx_host_t *ha, struct qlnx_fastpath *fp, 
int budget,
 
                mp->m_pkthdr.flowid = fp_cqe->rss_hash;
 
-#if __FreeBSD_version >= 1100000
-
                hash_type = fp_cqe->bitfields &
                                (ETH_FAST_PATH_RX_REG_CQE_RSS_HASH_TYPE_MASK <<
                                ETH_FAST_PATH_RX_REG_CQE_RSS_HASH_TYPE_SHIFT);
@@ -4770,10 +4723,6 @@ qlnx_rx_int(qlnx_host_t *ha, struct qlnx_fastpath *fp, 
int budget,
                        break;
                }
 
-#else
-               mp->m_flags |= M_FLOWID;
-#endif
-
                if (CQE_L3_PACKET(fp_cqe->pars_flags.flags)) {
                        mp->m_pkthdr.csum_flags |= CSUM_IP_CHECKED;
                }
@@ -4797,22 +4746,10 @@ qlnx_rx_int(qlnx_host_t *ha, struct qlnx_fastpath *fp, 
int budget,
                QLNX_INC_IBYTES(ifp, len);
 
 #ifdef QLNX_SOFT_LRO
-
-               if (lro_enable) {
-#if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO)
-
+               if (lro_enable)
                        tcp_lro_queue_mbuf(lro, mp);
-
-#else
-
-                       if (tcp_lro_rx(lro, mp, 0))
-                               (*ifp->if_input)(ifp, mp);
-
-#endif /* #if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO) */
-
-               } else {
+               else
                        (*ifp->if_input)(ifp, mp);
-               }
 #else
 
                (*ifp->if_input)(ifp, mp);
@@ -4932,7 +4869,6 @@ qlnx_fp_isr(void *arg)
                         lro = &fp->rxq->lro;
 
                         if (lro_enable && total_rx_count) {
-#if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO)
 
 #ifdef QLNX_TRACE_LRO_CNT
                                 if (lro->lro_mbuf_count & ~1023)
@@ -4948,17 +4884,6 @@ qlnx_fp_isr(void *arg)
 #endif /* #ifdef QLNX_TRACE_LRO_CNT */
 
                                 tcp_lro_flush_all(lro);
-
-#else
-                                struct lro_entry *queued;
-
-                                while ((!SLIST_EMPTY(&lro->lro_active))) {
-                                        queued = SLIST_FIRST(&lro->lro_active);
-                                        SLIST_REMOVE_HEAD(&lro->lro_active, \
-                                                next);
-                                        tcp_lro_flush(lro, queued);
-                                }
-#endif /* #if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO) */
                         }
                 }
 #endif /* #ifdef QLNX_SOFT_LRO */
@@ -6287,19 +6212,11 @@ qlnx_alloc_mem_rxq(qlnx_host_t *ha, struct 
qlnx_rx_queue *rxq)
 
                lro = &rxq->lro;
 
-#if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO)
                if (tcp_lro_init_args(lro, ifp, 0, rxq->num_rx_buffers)) {
                        QL_DPRINT1(ha, "tcp_lro_init[%d] failed\n",
                                   rxq->rxq_id);
                        goto err;
                }
-#else
-               if (tcp_lro_init(lro)) {
-                       QL_DPRINT1(ha, "tcp_lro_init[%d] failed\n",
-                                  rxq->rxq_id);
-                       goto err;
-               }
-#endif /* #if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO) */
 
                lro->ifp = ha->ifp;
        }
@@ -7197,7 +7114,6 @@ qlnx_set_link(qlnx_host_t *ha, bool link_up)
         return (rc);
 }
 
-#if __FreeBSD_version >= 1100000
 static uint64_t
 qlnx_get_counter(if_t ifp, ift_counter cnt)
 {
@@ -7262,7 +7178,6 @@ qlnx_get_counter(if_t ifp, ift_counter cnt)
         }
        return (count);
 }
-#endif
 
 static void
 qlnx_timer(void *arg)
@@ -7382,20 +7297,7 @@ qlnx_drain_soft_lro(qlnx_host_t *ha)
 
                        lro = &fp->rxq->lro;
 
-#if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO)
-
                        tcp_lro_flush_all(lro);
-
-#else
-                       struct lro_entry *queued;
-
-                       while ((!SLIST_EMPTY(&lro->lro_active))){
-                               queued = SLIST_FIRST(&lro->lro_active);
-                               SLIST_REMOVE_HEAD(&lro->lro_active, next);
-                               tcp_lro_flush(lro, queued);
-                       }
-
-#endif /* #if (__FreeBSD_version >= 1100101) || (defined QLNX_QSORT_LRO) */
                 }
        }
 
diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.h b/sys/dev/qlnx/qlnxe/qlnx_os.h
index 9f4176f9f29f..f7111f5e3f4b 100644
--- a/sys/dev/qlnx/qlnxe/qlnx_os.h
+++ b/sys/dev/qlnx/qlnxe/qlnx_os.h
@@ -50,10 +50,6 @@
 #include <machine/_inttypes.h>
 #include <sys/conf.h>
 
-#if __FreeBSD_version < 1000000
-#error FreeBSD Version not supported - use version >= 1000000
-#endif
-
 #include <net/if.h>
 #include <net/if_var.h>
 #include <net/if_arp.h>
diff --git a/sys/dev/qlnx/qlnxr/qlnxr_cm.c b/sys/dev/qlnx/qlnxr/qlnxr_cm.c
index 7d2bff15c491..2a36e7412f2d 100644
--- a/sys/dev/qlnx/qlnxr/qlnxr_cm.c
+++ b/sys/dev/qlnx/qlnxr/qlnxr_cm.c
@@ -494,11 +494,9 @@ qlnxr_gsi_build_header(struct qlnxr_dev *dev,
        u16 vlan_id = 0;
        u16 ether_type;
 
-#if __FreeBSD_version >= 1102000
        int rc = 0;
        int ip_ver = 0;
        bool has_udp = false;
-#endif /* #if __FreeBSD_version >= 1102000 */
 
 #if !DEFINE_IB_AH_ATTR_WITH_DMAC
        u8 mac[ETH_ALEN];
@@ -517,8 +515,6 @@ qlnxr_gsi_build_header(struct qlnxr_dev *dev,
        else
                sgid = dev->sgid_tbl[0];
 
-#if __FreeBSD_version >= 1102000
-
        rc = ib_ud_header_init(send_size, false /* LRH */, true /* ETH */,
                        has_vlan, has_grh_ipv6, ip_ver, has_udp,
                        0 /* immediate */, udh);
@@ -528,12 +524,6 @@ qlnxr_gsi_build_header(struct qlnxr_dev *dev,
                return rc;
        }
 
-#else
-       ib_ud_header_init(send_size, false /* LRH */, true /* ETH */,
-                         has_vlan, has_grh_ipv6, 0 /* immediate */, udh);
-
-#endif /* #if __FreeBSD_version >= 1102000 */
-
        /* ENET + VLAN headers*/
 #if DEFINE_IB_AH_ATTR_WITH_DMAC
        memcpy(udh->eth.dmac_h, ah_attr->dmac, ETH_ALEN);
@@ -846,7 +836,6 @@ qlnxr_gsi_poll_cq(struct ib_cq *ibcq, int num_entries, 
struct ib_wc *wc)
                wc[i].byte_len = qp->rqe_wr_id[qp->rq.cons].sg_list[0].length;
                wc[i].wc_flags |= IB_WC_GRH | IB_WC_IP_CSUM_OK;
 
-#if __FreeBSD_version >= 1100000
                memcpy(&wc[i].smac, qp->rqe_wr_id[qp->rq.cons].smac, ETH_ALEN);
                wc[i].wc_flags |= IB_WC_WITH_SMAC;
 
@@ -855,7 +844,6 @@ qlnxr_gsi_poll_cq(struct ib_cq *ibcq, int num_entries, 
struct ib_wc *wc)
                        wc[i].vlan_id = qp->rqe_wr_id[qp->rq.cons].vlan_id;
                }
 
-#endif
                qlnxr_inc_sw_cons(&qp->rq);
                i++;
        }
diff --git a/sys/dev/qlnx/qlnxr/qlnxr_cm.h b/sys/dev/qlnx/qlnxr/qlnxr_cm.h
index 530a42833e95..72956a858bfc 100644
--- a/sys/dev/qlnx/qlnxr/qlnxr_cm.h
+++ b/sys/dev/qlnx/qlnxr/qlnxr_cm.h
@@ -42,20 +42,10 @@
 #define ETH_P_ROCE             (0x8915)
 #define QLNXR_ROCE_V2_UDP_SPORT        (0000)
 
-#if __FreeBSD_version >= 1102000
-
 #define rdma_wr(_wr) rdma_wr(_wr)
 #define ud_wr(_wr) ud_wr(_wr)
 #define atomic_wr(_wr) atomic_wr(_wr)
 
-#else
-
-#define rdma_wr(_wr) (&(_wr->wr.rdma))
-#define ud_wr(_wr) (&(_wr->wr.ud))
-#define atomic_wr(_wr) (&(_wr->wr.atomic))
-
-#endif /* #if __FreeBSD_version >= 1102000 */
-
 static inline u32 qlnxr_get_ipv4_from_gid(u8 *gid)
 {
        return *(u32 *)(void *)&gid[12];
diff --git a/sys/dev/qlnx/qlnxr/qlnxr_def.h b/sys/dev/qlnx/qlnxr/qlnxr_def.h
index 2b9b378a1468..2d67a881da06 100644
--- a/sys/dev/qlnx/qlnxr/qlnxr_def.h
+++ b/sys/dev/qlnx/qlnxr/qlnxr_def.h
@@ -67,10 +67,6 @@
 #include <rdma/ib_sa.h>
 #include <rdma/uverbs_ioctl.h>
 
-#if __FreeBSD_version < 1100000
-#undef MODULE_VERSION
-#endif
-
 #include "qlnx_os.h"
 #include "bcm_osal.h"
 
@@ -627,11 +623,7 @@ struct mr_info {
         u32 completed_handled;
 };
 
-#if __FreeBSD_version < 1102000
-#define DEFINE_IB_FAST_REG
-#else
 #define DEFINE_ALLOC_MR
-#endif
 
 #ifdef DEFINE_IB_FAST_REG
 struct qlnxr_fast_reg_page_list {
@@ -649,11 +641,7 @@ struct qlnxr_qp {
 
         u32 max_inline_data;
 
-#if __FreeBSD_version >= 1100000
         spinlock_t q_lock ____cacheline_aligned;
-#else
-       spinlock_t q_lock;
-#endif
 
         struct qlnxr_cq *sq_cq;
         struct qlnxr_cq *rq_cq;
@@ -899,12 +887,7 @@ extern int qlnx_rdma_ll2_set_mac_filter(void *rdma_ctx, 
uint8_t *old_mac_address
 #define QLNXR_ROCE_PKEY_TABLE_LEN 1
 #define QLNXR_ROCE_PKEY_DEFAULT 0xffff
 
-#if __FreeBSD_version < 1100000
-#define DEFINE_IB_AH_ATTR_WITH_DMAC     (0)
-#define DEFINE_IB_UMEM_WITH_CHUNK      (1)
-#else
 #define DEFINE_IB_AH_ATTR_WITH_DMAC     (1)
-#endif
 
 #define QLNX_IS_IWARP(rdev)    IS_IWARP(ECORE_LEADING_HWFN(rdev->cdev))
 #define QLNX_IS_ROCE(rdev)     IS_ROCE(ECORE_LEADING_HWFN(rdev->cdev))
diff --git a/sys/dev/qlnx/qlnxr/qlnxr_os.c b/sys/dev/qlnx/qlnxr/qlnxr_os.c
index b4771e97b705..aa8386808ebb 100644
--- a/sys/dev/qlnx/qlnxr/qlnxr_os.c
+++ b/sys/dev/qlnx/qlnxr/qlnxr_os.c
@@ -248,16 +248,9 @@ qlnxr_register_device(qlnxr_dev_t *dev)
         ibdev->dereg_mr = qlnxr_dereg_mr;
         ibdev->reg_user_mr = qlnxr_reg_user_mr;
         
-#if __FreeBSD_version >= 1102000
        ibdev->alloc_mr = qlnxr_alloc_mr;
        ibdev->map_mr_sg = qlnxr_map_mr_sg;
        ibdev->get_port_immutable = qlnxr_get_port_immutable;
-#else
-        ibdev->reg_phys_mr = qlnxr_reg_kernel_mr;
-        ibdev->alloc_fast_reg_mr = qlnxr_alloc_frmr;
-        ibdev->alloc_fast_reg_page_list = qlnxr_alloc_frmr_page_list;
-        ibdev->free_fast_reg_page_list = qlnxr_free_frmr_page_list;
-#endif /* #if __FreeBSD_version >= 1102000 */
 
         ibdev->poll_cq = qlnxr_poll_cq;
         ibdev->post_send = qlnxr_post_send;
@@ -281,14 +274,9 @@ qlnxr_register_device(qlnxr_dev_t *dev)
                 iwcm->accept = qlnxr_iw_accept;
                 iwcm->reject = qlnxr_iw_reject;
 
-#if (__FreeBSD_version >= 1004000) && (__FreeBSD_version < 1102000)
-
-                iwcm->create_listen_ep = qlnxr_iw_create_listen;
-                iwcm->destroy_listen_ep = qlnxr_iw_destroy_listen;
-#else
                 iwcm->create_listen = qlnxr_iw_create_listen;
                 iwcm->destroy_listen = __qlnxr_iw_destroy_listen;
-#endif
+
                 iwcm->add_ref = qlnxr_iw_qp_add_ref;
                 iwcm->rem_ref = qlnxr_iw_qp_rem_ref;
                 iwcm->get_qp = qlnxr_iw_get_qp;
@@ -949,27 +937,6 @@ static bool qlnxr_del_sgid(struct qlnxr_dev *dev, union 
ib_gid *gid)
        return found;
 }
 
-#if __FreeBSD_version < 1100000
-
-static inline int
-is_vlan_dev(struct ifnet *ifp)
-{
-       return (ifp->if_type == IFT_L2VLAN);
-}
-
-static inline uint16_t
-vlan_dev_vlan_id(struct ifnet *ifp)
-{
-       uint16_t vtag;
-
-       if (VLAN_TAG(ifp, &vtag) == 0)
-               return (vtag);
-
-       return (0);
-}
-
-#endif /* #if __FreeBSD_version < 1100000 */
-
 static void
 qlnxr_add_sgids(struct qlnxr_dev *dev)
 {
@@ -1342,9 +1309,6 @@ static moduledata_t qlnxr_mod_info = {
 MODULE_VERSION(qlnxr, 1);
 MODULE_DEPEND(qlnxr, if_qlnxe, 1, 1, 1);
 MODULE_DEPEND(qlnxr, ibcore, 1, 1, 1);
-
-#if __FreeBSD_version >= 1100000
 MODULE_DEPEND(qlnxr, linuxkpi, 1, 1, 1);
-#endif /* #if __FreeBSD_version >= 1100000 */
 
 DECLARE_MODULE(qlnxr, qlnxr_mod_info, SI_SUB_LAST, SI_ORDER_ANY);
diff --git a/sys/dev/qlnx/qlnxr/qlnxr_verbs.c b/sys/dev/qlnx/qlnxr/qlnxr_verbs.c
index c4affef7955c..1100a81891c2 100644
--- a/sys/dev/qlnx/qlnxr/qlnxr_verbs.c
+++ b/sys/dev/qlnx/qlnxr/qlnxr_verbs.c
@@ -469,13 +469,8 @@ qlnxr_post_srq_recv(struct ib_srq *ibsrq, const struct 
ib_recv_wr *wr,
 }
 
 int
-#if __FreeBSD_version < 1102000
-qlnxr_query_device(struct ib_device *ibdev, struct ib_device_attr *attr)
-#else
 qlnxr_query_device(struct ib_device *ibdev, struct ib_device_attr *attr,
        struct ib_udata *udata)
-#endif /* #if __FreeBSD_version < 1102000 */
-
 {
        struct qlnxr_dev                *dev;
        struct ecore_rdma_device        *qattr;
@@ -486,10 +481,8 @@ qlnxr_query_device(struct ib_device *ibdev, struct 
ib_device_attr *attr,
 
        QL_DPRINT12(ha, "enter\n");
 
-#if __FreeBSD_version > 1102000
        if (udata->inlen || udata->outlen)
                return -EINVAL;
-#endif /* #if __FreeBSD_version > 1102000 */
 
        if (dev->rdma_ctx == NULL) {
                return -EINVAL;
@@ -820,16 +813,14 @@ qlnxr_get_vlan_id_qp(qlnx_host_t *ha, struct ib_qp_attr 
*attr, int attr_mask,
 {
        bool ret = false;
 
-       QL_DPRINT12(ha, "enter \n");
-
-       *vlan_id = 0;
-
-#if __FreeBSD_version >= 1100000
        u16 tmp_vlan_id;
 
-#if __FreeBSD_version >= 1102000
        union ib_gid *dgid;
 
+       QL_DPRINT12(ha, "enter \n");
+
+       *vlan_id = 0;
+
        dgid = &attr->ah_attr.grh.dgid;
        tmp_vlan_id = (dgid->raw[11] << 8) | dgid->raw[12];
 
@@ -837,20 +828,6 @@ qlnxr_get_vlan_id_qp(qlnx_host_t *ha, struct ib_qp_attr 
*attr, int attr_mask,
                *vlan_id = tmp_vlan_id;
                ret = true;
        }
-#else
-       tmp_vlan_id = attr->vlan_id;
-
-       if ((attr_mask & IB_QP_VID) && (!(tmp_vlan_id & ~EVL_VLID_MASK))) {
-               *vlan_id = tmp_vlan_id;
-               ret = true;
-       }
-
-#endif /* #if __FreeBSD_version > 1102000 */
-
-#else
-       ret = true;
-
-#endif /* #if __FreeBSD_version >= 1100000 */
 
        QL_DPRINT12(ha, "exit vlan_id = 0x%x ret = %d \n", *vlan_id, ret);
 
@@ -1060,11 +1037,7 @@ qlnxr_mmap(struct ib_ucontext *context, struct 
vm_area_struct *vma)
 
        ha = dev->ha;
 
-#if __FreeBSD_version > 1102000
        unmapped_db = dev->db_phys_addr + (ucontext->dpi * ucontext->dpi_size);
-#else
-       unmapped_db = dev->db_phys_addr;
-#endif /* #if __FreeBSD_version > 1102000 */
 
        QL_DPRINT12(ha, "qedr_mmap enter vm_page=0x%lx"
                " vm_pgoff=0x%lx unmapped_db=0x%llx db_size=%x, len=%lx\n",
@@ -1087,8 +1060,6 @@ qlnxr_mmap(struct ib_ucontext *context, struct 
vm_area_struct *vma)
 
        QL_DPRINT12(ha, "Mapping doorbell bar\n");
 
-#if __FreeBSD_version > 1102000
-
        if ((vm_page < unmapped_db) ||
                ((vm_page + len) > (unmapped_db + ucontext->dpi_size))) {
                QL_DPRINT11(ha, "failed pages are outside of dpi;"
@@ -1106,24 +1077,6 @@ qlnxr_mmap(struct ib_ucontext *context, struct 
vm_area_struct *vma)
        rc = io_remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, len,
                        vma->vm_page_prot);
 
-#else
-
-       if ((vm_page >= unmapped_db) && (vm_page <= (unmapped_db +
-               dev->db_size))) {
-               QL_DPRINT12(ha, "Mapping doorbell bar\n");
-
-               vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);
-
-               rc = io_remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
-                                           PAGE_SIZE, vma->vm_page_prot);
-       } else {
-               QL_DPRINT12(ha, "Mapping chains\n");
-               rc = io_remap_pfn_range(vma, vma->vm_start,
-                                        vma->vm_pgoff, len, vma->vm_page_prot);
-       }
-
-#endif /* #if __FreeBSD_version > 1102000 */
-
        QL_DPRINT12(ha, "exit [%d]\n", rc);
        return rc;
 }
@@ -1514,13 +1467,8 @@ done:
 }
 
 struct ib_mr *
-#if __FreeBSD_version >= 1102000
 qlnxr_reg_user_mr(struct ib_pd *ibpd, u64 start, u64 len,
        u64 usr_addr, int acc, struct ib_udata *udata)
-#else
-qlnxr_reg_user_mr(struct ib_pd *ibpd, u64 start, u64 len,
-       u64 usr_addr, int acc, struct ib_udata *udata, int mr_id)
-#endif /* #if __FreeBSD_version >= 1102000 */
 {
        int             rc = -ENOMEM;
        struct qlnxr_dev *dev = get_qlnxr_dev((ibpd->device));
@@ -1592,11 +1540,7 @@ qlnxr_reg_user_mr(struct ib_pd *ibpd, u64 start, u64 len,
        mr->hw_mr.pbl_page_size_log = ilog2(mr->info.pbl_info.pbl_size);
        mr->hw_mr.page_size_log = ilog2(mr->umem->page_size); /* for the MR 
pages */
 
-#if __FreeBSD_version >= 1102000
        mr->hw_mr.fbo = ib_umem_offset(mr->umem);
-#else
-       mr->hw_mr.fbo = mr->umem->offset;
-#endif
        mr->hw_mr.length = len;
        mr->hw_mr.vaddr = usr_addr;
        mr->hw_mr.zbva = false; /* TBD figure when this should be true */
@@ -1802,10 +1746,8 @@ qlnxr_create_cq(struct ib_cq *ibcq,
        struct ecore_rdma_create_cq_in_params   params;
        struct qlnxr_create_cq_ureq             ureq;
 
-#if __FreeBSD_version >= 1100000
        int                                     vector = attr->comp_vector;
        int                                     entries = attr->cqe;
-#endif
        struct qlnxr_cq                         *cq = get_qlnxr_cq(ibcq);
        int                                     chain_entries, rc, page_cnt;
        u64                                     pbl_ptr;
@@ -2030,10 +1972,6 @@ qlnxr_check_qp_attrs(struct ib_pd *ibpd,
        QL_DPRINT12(ha, "attrs->qp_type = %d\n", attrs->qp_type);
        QL_DPRINT12(ha, "attrs->create_flags = %d\n", attrs->create_flags);
 
-#if __FreeBSD_version < 1102000
-       QL_DPRINT12(ha, "attrs->qpg_type = %d\n", attrs->qpg_type);
-#endif
-
        QL_DPRINT12(ha, "attrs->port_num = %d\n", attrs->port_num);
        QL_DPRINT12(ha, "attrs->cap.max_send_wr = 0x%x\n", 
attrs->cap.max_send_wr);
        QL_DPRINT12(ha, "attrs->cap.max_recv_wr = 0x%x\n", 
attrs->cap.max_recv_wr);
@@ -2042,11 +1980,6 @@ qlnxr_check_qp_attrs(struct ib_pd *ibpd,
        QL_DPRINT12(ha, "attrs->cap.max_inline_data = 0x%x\n",
                attrs->cap.max_inline_data);
 
-#if __FreeBSD_version < 1102000
-       QL_DPRINT12(ha, "attrs->cap.qpg_tss_mask_sz = 0x%x\n",
-               attrs->cap.qpg_tss_mask_sz);
-#endif
-
        QL_DPRINT12(ha, "\n\nqattr->vendor_id = 0x%x\n", qattr->vendor_id);
        QL_DPRINT12(ha, "qattr->vendor_part_id = 0x%x\n", 
qattr->vendor_part_id);
        QL_DPRINT12(ha, "qattr->hw_ver = 0x%x\n", qattr->hw_ver);
@@ -4225,8 +4158,6 @@ qlnx_handle_completed_mrs(struct qlnxr_dev *dev, struct 
mr_info *info)
        return;
 }
 
-#if __FreeBSD_version >= 1102000
-
 static int qlnxr_prepare_reg(struct qlnxr_qp *qp,
                struct rdma_sq_fmr_wqe_1st *fwqe1,
                const struct ib_reg_wr *wr)
@@ -4265,163 +4196,6 @@ static int qlnxr_prepare_reg(struct qlnxr_qp *qp,
        return 0;
 }
 
-#else
-
-static void
-build_frmr_pbes(struct qlnxr_dev *dev, const struct ib_send_wr *wr,
-       struct mr_info *info)
-{
-       int i;
-       u64 buf_addr = 0;
-       int num_pbes, total_num_pbes = 0;
-       struct regpair *pbe;
-       struct qlnxr_pbl *pbl_tbl = info->pbl_table;
-       struct qlnxr_pbl_info *pbl_info = &info->pbl_info;
-       qlnx_host_t     *ha;
-
-       ha = dev->ha;
-
-       QL_DPRINT12(ha, "enter\n");
-
-       pbe = (struct regpair *)pbl_tbl->va;
-       num_pbes = 0;
-
-       for (i = 0; i < wr->wr.fast_reg.page_list_len; i++) {
-               buf_addr = wr->wr.fast_reg.page_list->page_list[i];
-               pbe->lo = cpu_to_le32((u32)buf_addr);
-               pbe->hi = cpu_to_le32((u32)upper_32_bits(buf_addr));
-
-               num_pbes += 1;
-               pbe++;
-               total_num_pbes++;
-
-               if (total_num_pbes == pbl_info->num_pbes)
-                       return;
-
-               /* if the given pbl is full storing the pbes,
-                * move to next pbl.
-                */
-               if (num_pbes ==
-                   (pbl_info->pbl_size / sizeof(u64))) {
-                       pbl_tbl++;
-                       pbe = (struct regpair *)pbl_tbl->va;
-                       num_pbes = 0;
-               }
-       }
-       QL_DPRINT12(ha, "exit\n");
-
-       return;
-}
-
-static int
-qlnxr_prepare_safe_pbl(struct qlnxr_dev *dev, struct mr_info *info)
-{
-       int rc = 0;
-       qlnx_host_t     *ha;
-
-       ha = dev->ha;
-
-       QL_DPRINT12(ha, "enter\n");
-
-       if (info->completed == 0) {
-               //DP_VERBOSE(dev, QLNXR_MSG_MR, "First FMR\n");
-               /* first fmr */
-               return 0;
-       }
-
-       qlnx_handle_completed_mrs(dev, info);
-
-       list_add_tail(&info->pbl_table->list_entry, &info->inuse_pbl_list);
-
-       if (list_empty(&info->free_pbl_list)) {
-               info->pbl_table = qlnxr_alloc_pbl_tbl(dev, &info->pbl_info,
-                                                         GFP_ATOMIC);
-       } else {
-               info->pbl_table = list_first_entry(&info->free_pbl_list,
-                                       struct qlnxr_pbl,
-                                       list_entry);
-               list_del(&info->pbl_table->list_entry);
-       }
-
-       if (!info->pbl_table)
-               rc = -ENOMEM;
-
-       QL_DPRINT12(ha, "exit\n");
-       return rc;
-}
-
-static inline int
-qlnxr_prepare_fmr(struct qlnxr_qp *qp,
-       struct rdma_sq_fmr_wqe_1st *fwqe1,
-       const struct ib_send_wr *wr)
-{
-       struct qlnxr_dev *dev = qp->dev;
-       u64 fbo;
-       struct qlnxr_fast_reg_page_list *frmr_list =
-               get_qlnxr_frmr_list(wr->wr.fast_reg.page_list);
-       struct rdma_sq_fmr_wqe *fwqe2 =
-               (struct rdma_sq_fmr_wqe *)ecore_chain_produce(&qp->sq.pbl);
-       int rc = 0;
-       qlnx_host_t     *ha;
-
-       ha = dev->ha;
-
-       QL_DPRINT12(ha, "enter\n");
-
-       if (wr->wr.fast_reg.page_list_len == 0)
-               BUG();
-
-       rc = qlnxr_prepare_safe_pbl(dev, &frmr_list->info);
-       if (rc)
-               return rc;
-
-       fwqe1->addr.hi = upper_32_bits(wr->wr.fast_reg.iova_start);
-       fwqe1->addr.lo = lower_32_bits(wr->wr.fast_reg.iova_start);
-       fwqe1->l_key = wr->wr.fast_reg.rkey;
-
-       SET_FIELD2(fwqe2->access_ctrl, RDMA_SQ_FMR_WQE_REMOTE_READ,
-                  !!(wr->wr.fast_reg.access_flags & IB_ACCESS_REMOTE_READ));
-       SET_FIELD2(fwqe2->access_ctrl, RDMA_SQ_FMR_WQE_REMOTE_WRITE,
-                  !!(wr->wr.fast_reg.access_flags & IB_ACCESS_REMOTE_WRITE));
-       SET_FIELD2(fwqe2->access_ctrl, RDMA_SQ_FMR_WQE_ENABLE_ATOMIC,
-                  !!(wr->wr.fast_reg.access_flags & IB_ACCESS_REMOTE_ATOMIC));
-       SET_FIELD2(fwqe2->access_ctrl, RDMA_SQ_FMR_WQE_LOCAL_READ, 1);
-       SET_FIELD2(fwqe2->access_ctrl, RDMA_SQ_FMR_WQE_LOCAL_WRITE,
-                  !!(wr->wr.fast_reg.access_flags & IB_ACCESS_LOCAL_WRITE));
-
-       fwqe2->fmr_ctrl = 0;
-
-       SET_FIELD2(fwqe2->fmr_ctrl, RDMA_SQ_FMR_WQE_2ND_PAGE_SIZE_LOG,
-                  ilog2(1 << wr->wr.fast_reg.page_shift) - 12);
-       SET_FIELD2(fwqe2->fmr_ctrl, RDMA_SQ_FMR_WQE_2ND_ZERO_BASED, 0);
-
-       fwqe2->length_hi = 0; /* Todo - figure this out... why length is only 
32bit.. */
-       fwqe2->length_lo = wr->wr.fast_reg.length;
-       fwqe2->pbl_addr.hi = upper_32_bits(frmr_list->info.pbl_table->pa);
-       fwqe2->pbl_addr.lo = lower_32_bits(frmr_list->info.pbl_table->pa);
-
-       /* produce another wqe for fwqe3 */
-       ecore_chain_produce(&qp->sq.pbl);
-
-       fbo = wr->wr.fast_reg.iova_start -
-           (wr->wr.fast_reg.page_list->page_list[0] & PAGE_MASK);
-
-       QL_DPRINT12(ha, "wr.fast_reg.iova_start = %p rkey=%x addr=%x:%x"
-               " length = %x pbl_addr %x:%x\n",
-               wr->wr.fast_reg.iova_start, wr->wr.fast_reg.rkey,
-               fwqe1->addr.hi, fwqe1->addr.lo, fwqe2->length_lo,
-               fwqe2->pbl_addr.hi, fwqe2->pbl_addr.lo);
-
-       build_frmr_pbes(dev, wr, &frmr_list->info);
-
-       qp->wqe_wr_id[qp->sq.prod].frmr = frmr_list;
-
-       QL_DPRINT12(ha, "exit\n");
-       return 0;
-}
-
-#endif /* #if __FreeBSD_version >= 1102000 */
-
 static enum ib_wc_opcode
 qlnxr_ib_to_wc_opcode(enum ib_wr_opcode opcode)
 {
@@ -4439,15 +4213,8 @@ qlnxr_ib_to_wc_opcode(enum ib_wr_opcode opcode)
                return IB_WC_COMP_SWAP;
        case IB_WR_ATOMIC_FETCH_AND_ADD:
                return IB_WC_FETCH_ADD;
-
-#if __FreeBSD_version >= 1102000
        case IB_WR_REG_MR:
                return IB_WC_REG_MR;
-#else
-       case IB_WR_FAST_REG_MR:
-               return IB_WC_FAST_REG_MR;
-#endif /* #if __FreeBSD_version >= 1102000 */
-
        case IB_WR_LOCAL_INV:
                return IB_WC_LOCAL_INV;
        default:
@@ -4784,8 +4551,6 @@ qlnxr_post_send(struct ib_qp *ibqp,
 
                        break;
 
-#if __FreeBSD_version >= 1102000
-
                case IB_WR_REG_MR:
*** 736 LINES SKIPPED ***

Reply via email to