enic: Clean up: Remove support for an older version of hardware
[pandora-kernel.git] / drivers / net / enic / enic_main.c
index d6cdecc..0c24370 100644 (file)
@@ -1348,50 +1348,6 @@ static int enic_rq_alloc_buf(struct vnic_rq *rq)
        return 0;
 }
 
-static int enic_rq_alloc_buf_a1(struct vnic_rq *rq)
-{
-       struct rq_enet_desc *desc = vnic_rq_next_desc(rq);
-
-       if (vnic_rq_posting_soon(rq)) {
-
-               /* SW workaround for A0 HW erratum: if we're just about
-                * to write posted_index, insert a dummy desc
-                * of type resvd
-                */
-
-               rq_enet_desc_enc(desc, 0, RQ_ENET_TYPE_RESV2, 0);
-               vnic_rq_post(rq, 0, 0, 0, 0);
-       } else {
-               return enic_rq_alloc_buf(rq);
-       }
-
-       return 0;
-}
-
-static int enic_set_rq_alloc_buf(struct enic *enic)
-{
-       enum vnic_dev_hw_version hw_ver;
-       int err;
-
-       err = enic_dev_hw_version(enic, &hw_ver);
-       if (err)
-               return err;
-
-       switch (hw_ver) {
-       case VNIC_DEV_HW_VER_A1:
-               enic->rq_alloc_buf = enic_rq_alloc_buf_a1;
-               break;
-       case VNIC_DEV_HW_VER_A2:
-       case VNIC_DEV_HW_VER_UNKNOWN:
-               enic->rq_alloc_buf = enic_rq_alloc_buf;
-               break;
-       default:
-               return -ENODEV;
-       }
-
-       return 0;
-}
-
 static void enic_rq_indicate_buf(struct vnic_rq *rq,
        struct cq_desc *cq_desc, struct vnic_rq_buf *buf,
        int skipped, void *opaque)
@@ -1528,7 +1484,7 @@ static int enic_poll(struct napi_struct *napi, int budget)
                        0 /* don't unmask intr */,
                        0 /* don't reset intr timer */);
 
-       err = vnic_rq_fill(&enic->rq[0], enic->rq_alloc_buf);
+       err = vnic_rq_fill(&enic->rq[0], enic_rq_alloc_buf);
 
        /* Buffer allocation failed. Stay in polling
         * mode so we can try to fill the ring again.
@@ -1578,7 +1534,7 @@ static int enic_poll_msix(struct napi_struct *napi, int budget)
                        0 /* don't unmask intr */,
                        0 /* don't reset intr timer */);
 
-       err = vnic_rq_fill(&enic->rq[rq], enic->rq_alloc_buf);
+       err = vnic_rq_fill(&enic->rq[rq], enic_rq_alloc_buf);
 
        /* Buffer allocation failed. Stay in polling mode
         * so we can try to fill the ring again.
@@ -1781,7 +1737,7 @@ static int enic_open(struct net_device *netdev)
        }
 
        for (i = 0; i < enic->rq_count; i++) {
-               vnic_rq_fill(&enic->rq[i], enic->rq_alloc_buf);
+               vnic_rq_fill(&enic->rq[i], enic_rq_alloc_buf);
                /* Need at least one buffer on ring to get going */
                if (vnic_rq_desc_used(&enic->rq[i]) == 0) {
                        netdev_err(netdev, "Unable to alloc receive buffers\n");
@@ -2347,12 +2303,6 @@ static int enic_dev_init(struct enic *enic)
 
        enic_init_vnic_resources(enic);
 
-       err = enic_set_rq_alloc_buf(enic);
-       if (err) {
-               dev_err(dev, "Failed to set RQ buffer allocator, aborting\n");
-               goto err_out_free_vnic_resources;
-       }
-
        err = enic_set_rss_nic_cfg(enic);
        if (err) {
                dev_err(dev, "Failed to config nic, aborting\n");