Ticket #1315: 141-Madwifi-fixes.patch

File 141-Madwifi-fixes.patch, 5.8 kB (added by NigelCunningham <nigel@nigel.suspend2.net>, 2 years ago)

Patch I used to get Madwifi working with 2.6.22-rc1.

  • 141-Madwifi-fixes.patch-old/drivers/net/wireless/madwifi/Kconfig

    old new  
    33 
    44config ATHEROS 
    55        tristate "Atheros PCI/Cardbus cards" 
    6         depends on PCI && NET_RADIO 
     6        depends on PCI && (NET_RADIO || (WIRELESS_EXT && WLAN_PRE80211)) 
    77       ---help--- 
    88          Say Y here if you intend to attach an Atheros Cardbus or PCI 
    99          wireless Ethernet networking card to your computer.  This 
  • 141-Madwifi-fixes.patch-old/drivers/net/wireless/madwifi/ath/if_ath_pci.c

    old new  
    207207 
    208208        pci_set_drvdata(pdev, dev); 
    209209 
    210 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
     210#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
    211211        if (request_irq(dev->irq, ath_intr, IRQF_SHARED, dev->name, dev)) { 
    212212#else 
    213213        if (request_irq(dev->irq, ath_intr, SA_SHIRQ, dev->name, dev)) { 
  • 141-Madwifi-fixes.patch-old/drivers/net/wireless/madwifi/net80211/ieee80211_input.c

    old new  
    10471047                         * incoming fragments 
    10481048                         * XXX 4-address/QoS frames? 
    10491049                         */ 
    1050                         else if (skb->end - skb->head < ni->ni_vap->iv_dev->mtu + 
     1050                        else if (skb_end_pointer(skb) - skb->head < ni->ni_vap->iv_dev->mtu + 
    10511051                                 hdrlen) { 
    10521052                                ni->ni_rxfrag = skb_copy_expand(skb, 0, 
    10531053                                        (ni->ni_vap->iv_dev->mtu + hdrlen) - 
    1054                                         (skb->end - skb->head), GFP_ATOMIC); 
     1054                                        (skb_end_pointer(skb) - skb->head), GFP_ATOMIC); 
    10551055                                dev_kfree_skb(skb); 
    10561056                        } 
    10571057                } 
     
    10651065                         * we've verified that before 
    10661066                         */ 
    10671067                        /* Copy current fragment at end of previous one */ 
    1068                         memcpy(ni->ni_rxfrag->tail
     1068                        memcpy(skb_tail_pointer(ni->ni_rxfrag)
    10691069                               skb->data + hdrlen, skb->len - hdrlen); 
    10701070                        /* Update tail and length */ 
    10711071                        skb_put(ni->ni_rxfrag, skb->len - hdrlen); 
     
    11361136                if (skb1 != NULL) { 
    11371137                        skb1->dev = dev; 
    11381138 
    1139 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    1140                         skb1->mac_header = skb1->data
    1141                         skb1->network_header = skb1->data + sizeof(struct ether_header); 
     1139#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     1140                        skb_reset_mac_header(skb1)
     1141                        skb_set_network_header(skb1, sizeof(struct ether_header)); 
    11421142#else 
    11431143                        skb1->mac.raw = skb1->data; 
    11441144                        skb1->nh.raw = skb1->data + sizeof(struct ether_header); 
     
    22702270                        return; 
    22712271                skb1->dev = dev; 
    22722272 
    2273 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    2274                 skb1->mac_header = skb1->data
     2273#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     2274                skb_reset_mac_header(skb1)
    22752275#else 
    22762276                skb1->mac.raw = skb1->data; 
    22772277#endif 
     
    25542554        skb->pkt_type = PACKET_BROADCAST; 
    25552555        skb->protocol = htons(ETH_P_802_2); 
    25562556  
    2557 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    2558         skb->mac_header = skb->data
     2557#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     2558        skb_reset_mac_header(skb)
    25592559#else 
    25602560        skb->mac.raw = skb->data; 
    25612561#endif 
     
    37303730{ 
    37313731        struct ethhdr *eth; 
    37323732 
    3733 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)       
    3734         skb->mac_header = skb->data
     3733#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)       
     3734        skb_reset_mac_header(skb)
    37353735#else 
    37363736        skb->mac.raw = skb->data; 
    37373737#endif 
     
    37433743         *     no easy way to do this cleanly. 
    37443744         */ 
    37453745 
    3746 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    3747         eth = (struct ethhdr *)skb->mac_header
     3746#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     3747        eth = (struct ethhdr *)skb_mac_header(skb)
    37483748#else 
    37493749        eth = (struct ethhdr *)skb->mac.raw; 
    37503750#endif 
  • 141-Madwifi-fixes.patch-old/drivers/net/wireless/madwifi/net80211/ieee80211_monitor.c

    old new  
    369369                        /* truncate transmit feedback packets */ 
    370370                        skb_trim(skb1, vap->iv_monitor_txf_len); 
    371371 
    372 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    373                         skb1->network_header = skb1->data
     372#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     373                        skb_reset_network_header(skb1)
    374374#else 
    375375                        skb1->nh.raw = skb1->data; 
    376376#endif 
     
    562562                        } 
    563563                        skb1->dev = dev; /* NB: deliver to wlanX */ 
    564564 
    565 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22
    566                         skb1->mac_header = skb1->data
     565#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21
     566                        skb_reset_mac_header(skb1)
    567567#else 
    568568                        skb1->mac.raw = skb1->data; 
    569569#endif