word = 0;
        if (enable) {
                word = QLCNIC_ENABLE_IPV4_LRO | QLCNIC_NO_DEST_IPV4_CHECK;
-               if (adapter->ahw->capabilities2 & QLCNIC_FW_CAP2_HW_LRO_IPV6)
+               if (adapter->ahw->extra_capability[0] &
+                   QLCNIC_FW_CAP2_HW_LRO_IPV6)
                        word |= QLCNIC_ENABLE_IPV6_LRO |
                                QLCNIC_NO_DEST_IPV6_CHECK;
        }
 
        if (adapter->ahw->capabilities & QLCNIC_FW_CAPABILITY_MORE_CAPS) {
                u32 temp;
                temp = QLCRD32(adapter, CRB_FW_CAPABILITIES_2);
-               adapter->ahw->capabilities2 = temp;
+               adapter->ahw->extra_capability[0] = temp;
        }
        adapter->ahw->max_mac_filters = nic_info.max_mac_filters;
        adapter->ahw->max_mtu = nic_info.max_mtu;
        u32 capab = 0;
 
        if (qlcnic_82xx_check(adapter)) {
-               if (adapter->ahw->capabilities2 &
+               if (adapter->ahw->extra_capability[0] &
                    QLCNIC_FW_CAPABILITY_2_LRO_MAX_TCP_SEG)
                        adapter->flags |= QLCNIC_FW_LRO_MSS_CAP;
        } else {
 
        if (err)
                return err;
 
-       if ((ahw->capabilities2 & QLCNIC_FW_CAPABILITY_2_BEACON)) {
+       if (ahw->extra_capability[0] & QLCNIC_FW_CAPABILITY_2_BEACON) {
                err = qlcnic_get_beacon_state(adapter, &h_beacon_state);
                if (!err) {
                        dev_info(&adapter->pdev->dev,