Changeset 20505


Ignore:
Timestamp:
2010-03-27T14:05:24+01:00 (8 years ago)
Author:
juhosg
Message:

ar71xx: ag71xx: introduce ag71xx_has_ar8216() helper

Location:
trunk/target/linux/ar71xx/files/drivers/net/ag71xx
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h

    r20358 r20505  
    457457void ag71xx_add_ar8216_header(struct ag71xx *ag, struct sk_buff *skb); 
    458458int ag71xx_remove_ar8216_header(struct ag71xx *ag, struct sk_buff *skb); 
     459static inline int ag71xx_has_ar8216(struct ag71xx *ag) 
     460{ 
     461        return ag71xx_get_pdata(ag)->has_ar8216; 
     462} 
    459463#else 
    460464static inline void ag71xx_add_ar8216_header(struct ag71xx *ag, 
     
    465469static inline int ag71xx_remove_ar8216_header(struct ag71xx *ag, 
    466470                                              struct sk_buff *skb) 
     471{ 
     472        return 0; 
     473} 
     474static inline int ag71xx_has_ar8216(struct ag71xx *ag) 
    467475{ 
    468476        return 0; 
  • trunk/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar8216.c

    r19031 r20505  
    2121void ag71xx_add_ar8216_header(struct ag71xx *ag, struct sk_buff *skb) 
    2222{ 
    23         struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag); 
    24  
    25         if (!pdata->has_ar8216) 
    26                 return; 
    27  
    28         skb_push(skb, AR8216_HEADER_LEN); 
    29         skb->data[0] = 0x10; 
    30         skb->data[1] = 0x80; 
     23        skb_push(skb, AR8216_HEADER_LEN); 
     24        skb->data[0] = 0x10; 
     25        skb->data[1] = 0x80; 
    3126} 
    3227 
     
    3429                                struct sk_buff *skb) 
    3530{ 
    36         struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag); 
    3731        u8 type; 
    3832 
    39         if (!pdata->has_ar8216) 
    40                 return 0; 
    41  
    4233        type = skb->data[1] & AR8216_PACKET_TYPE_MASK; 
    43  
    4434        switch (type) { 
    4535        case AR8216_PACKET_TYPE_NORMAL: 
  • trunk/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c

    r20504 r20505  
    615615                goto err_drop; 
    616616 
    617         ag71xx_add_ar8216_header(ag, skb); 
     617        if (ag71xx_has_ar8216(ag)) 
     618                ag71xx_add_ar8216_header(ag, skb); 
    618619 
    619620        if (skb->len <= 0) { 
     
    773774                struct sk_buff *skb; 
    774775                int pktlen; 
    775                 int err; 
     776                int err = 0; 
    776777 
    777778                if (ag71xx_desc_empty(desc)) 
     
    796797                dev->stats.rx_bytes += pktlen; 
    797798 
    798                 err = ag71xx_remove_ar8216_header(ag, skb); 
     799                if (ag71xx_has_ar8216(ag)) 
     800                        err = ag71xx_remove_ar8216_header(ag, skb); 
     801 
    799802                if (err) { 
    800803                        dev->stats.rx_dropped++; 
Note: See TracChangeset for help on using the changeset viewer.