target/linux/atheros/patches-2.6.32/110-ar2313_ethernet.patch |
25 | 25 | obj-$(CONFIG_DECLANCE) += declance.o |
26 | 26 | --- /dev/null |
27 | 27 | +++ b/drivers/net/ar231x.c |
28 | | @@ -0,0 +1,1266 @@ |
| 28 | @@ -0,0 +1,1278 @@ |
29 | 29 | +/* |
30 | 30 | + * ar231x.c: Linux driver for the Atheros AR231x Ethernet device. |
31 | 31 | + * |
... | ... | |
170 | 170 | +static void rx_tasklet_func(unsigned long data); |
171 | 171 | +static void rx_tasklet_cleanup(struct net_device *dev); |
172 | 172 | +static void ar231x_multicast_list(struct net_device *dev); |
| 173 | +static void ar231x_tx_timeout(struct net_device *dev); |
173 | 174 | + |
174 | 175 | +static int ar231x_mdiobus_read(struct mii_bus *bus, int phy_addr, int regnum); |
175 | 176 | +static int ar231x_mdiobus_write(struct mii_bus *bus, int phy_addr, int regnum, u16 value); |
... | ... | |
190 | 191 | + .ndo_change_mtu = eth_change_mtu, |
191 | 192 | + .ndo_validate_addr = eth_validate_addr, |
192 | 193 | + .ndo_set_mac_address = eth_mac_addr, |
| 194 | + .ndo_tx_timeout = ar231x_tx_timeout, |
193 | 195 | +}; |
194 | 196 | + |
195 | 197 | +int __init ar231x_probe(struct platform_device *pdev) |
... | ... | |
1039 | 1041 | + return 0; |
1040 | 1042 | +} |
1041 | 1043 | + |
| 1044 | +static void ar231x_tx_timeout(struct net_device *dev) |
| 1045 | +{ |
| 1046 | + struct ar231x_private *sp = netdev_priv(dev); |
| 1047 | + unsigned long flags; |
| 1048 | + |
| 1049 | + spin_lock_irqsave(&sp->lock, flags); |
| 1050 | + ar231x_restart(dev); |
| 1051 | + spin_unlock_irqrestore(&sp->lock, flags); |
| 1052 | +} |
| 1053 | + |
1042 | 1054 | +static void ar231x_halt(struct net_device *dev) |
1043 | 1055 | +{ |
1044 | 1056 | + struct ar231x_private *sp = netdev_priv(dev); |
target/linux/atheros/patches-2.6.33/110-ar2313_ethernet.patch |
25 | 25 | obj-$(CONFIG_DECLANCE) += declance.o |
26 | 26 | --- /dev/null |
27 | 27 | +++ b/drivers/net/ar231x.c |
28 | | @@ -0,0 +1,1266 @@ |
| 28 | @@ -0,0 +1,1278 @@ |
29 | 29 | +/* |
30 | 30 | + * ar231x.c: Linux driver for the Atheros AR231x Ethernet device. |
31 | 31 | + * |
... | ... | |
170 | 170 | +static void rx_tasklet_func(unsigned long data); |
171 | 171 | +static void rx_tasklet_cleanup(struct net_device *dev); |
172 | 172 | +static void ar231x_multicast_list(struct net_device *dev); |
| 173 | +static void ar231x_tx_timeout(struct net_device *dev); |
173 | 174 | + |
174 | 175 | +static int ar231x_mdiobus_read(struct mii_bus *bus, int phy_addr, int regnum); |
175 | 176 | +static int ar231x_mdiobus_write(struct mii_bus *bus, int phy_addr, int regnum, u16 value); |
... | ... | |
190 | 191 | + .ndo_change_mtu = eth_change_mtu, |
191 | 192 | + .ndo_validate_addr = eth_validate_addr, |
192 | 193 | + .ndo_set_mac_address = eth_mac_addr, |
| 194 | + .ndo_tx_timeout = ar231x_tx_timeout, |
193 | 195 | +}; |
194 | 196 | + |
195 | 197 | +int __init ar231x_probe(struct platform_device *pdev) |
... | ... | |
1039 | 1041 | + return 0; |
1040 | 1042 | +} |
1041 | 1043 | + |
| 1044 | +static void ar231x_tx_timeout(struct net_device *dev) |
| 1045 | +{ |
| 1046 | + struct ar231x_private *sp = netdev_priv(dev); |
| 1047 | + unsigned long flags; |
| 1048 | + |
| 1049 | + spin_lock_irqsave(&sp->lock, flags); |
| 1050 | + ar231x_restart(dev); |
| 1051 | + spin_unlock_irqrestore(&sp->lock, flags); |
| 1052 | +} |
| 1053 | + |
1042 | 1054 | +static void ar231x_halt(struct net_device *dev) |
1043 | 1055 | +{ |
1044 | 1056 | + struct ar231x_private *sp = netdev_priv(dev); |
target/linux/atheros/patches-2.6.34/110-ar2313_ethernet.patch |
25 | 25 | obj-$(CONFIG_DECLANCE) += declance.o |
26 | 26 | --- /dev/null |
27 | 27 | +++ b/drivers/net/ar231x.c |
28 | | @@ -0,0 +1,1266 @@ |
| 28 | @@ -0,0 +1,1278 @@ |
29 | 29 | +/* |
30 | 30 | + * ar231x.c: Linux driver for the Atheros AR231x Ethernet device. |
31 | 31 | + * |
... | ... | |
170 | 170 | +static void rx_tasklet_func(unsigned long data); |
171 | 171 | +static void rx_tasklet_cleanup(struct net_device *dev); |
172 | 172 | +static void ar231x_multicast_list(struct net_device *dev); |
| 173 | +static void ar231x_tx_timeout(struct net_device *dev); |
173 | 174 | + |
174 | 175 | +static int ar231x_mdiobus_read(struct mii_bus *bus, int phy_addr, int regnum); |
175 | 176 | +static int ar231x_mdiobus_write(struct mii_bus *bus, int phy_addr, int regnum, u16 value); |
... | ... | |
190 | 191 | + .ndo_change_mtu = eth_change_mtu, |
191 | 192 | + .ndo_validate_addr = eth_validate_addr, |
192 | 193 | + .ndo_set_mac_address = eth_mac_addr, |
| 194 | + .ndo_tx_timeout = ar231x_tx_timeout, |
193 | 195 | +}; |
194 | 196 | + |
195 | 197 | +int __init ar231x_probe(struct platform_device *pdev) |
... | ... | |
1039 | 1041 | + return 0; |
1040 | 1042 | +} |
1041 | 1043 | + |
| 1044 | +static void ar231x_tx_timeout(struct net_device *dev) |
| 1045 | +{ |
| 1046 | + struct ar231x_private *sp = netdev_priv(dev); |
| 1047 | + unsigned long flags; |
| 1048 | + |
| 1049 | + spin_lock_irqsave(&sp->lock, flags); |
| 1050 | + ar231x_restart(dev); |
| 1051 | + spin_unlock_irqrestore(&sp->lock, flags); |
| 1052 | +} |
| 1053 | + |
1042 | 1054 | +static void ar231x_halt(struct net_device *dev) |
1043 | 1055 | +{ |
1044 | 1056 | + struct ar231x_private *sp = netdev_priv(dev); |
target/linux/atheros/patches-2.6.35/110-ar2313_ethernet.patch |
25 | 25 | obj-$(CONFIG_DECLANCE) += declance.o |
26 | 26 | --- /dev/null |
27 | 27 | +++ b/drivers/net/ar231x.c |
28 | | @@ -0,0 +1,1266 @@ |
| 28 | @@ -0,0 +1,1278 @@ |
29 | 29 | +/* |
30 | 30 | + * ar231x.c: Linux driver for the Atheros AR231x Ethernet device. |
31 | 31 | + * |
... | ... | |
170 | 170 | +static void rx_tasklet_func(unsigned long data); |
171 | 171 | +static void rx_tasklet_cleanup(struct net_device *dev); |
172 | 172 | +static void ar231x_multicast_list(struct net_device *dev); |
| 173 | +static void ar231x_tx_timeout(struct net_device *dev); |
173 | 174 | + |
174 | 175 | +static int ar231x_mdiobus_read(struct mii_bus *bus, int phy_addr, int regnum); |
175 | 176 | +static int ar231x_mdiobus_write(struct mii_bus *bus, int phy_addr, int regnum, u16 value); |
... | ... | |
190 | 191 | + .ndo_change_mtu = eth_change_mtu, |
191 | 192 | + .ndo_validate_addr = eth_validate_addr, |
192 | 193 | + .ndo_set_mac_address = eth_mac_addr, |
| 194 | + .ndo_tx_timeout = ar231x_tx_timeout, |
193 | 195 | +}; |
194 | 196 | + |
195 | 197 | +int __init ar231x_probe(struct platform_device *pdev) |
... | ... | |
1039 | 1041 | + return 0; |
1040 | 1042 | +} |
1041 | 1043 | + |
| 1044 | +static void ar231x_tx_timeout(struct net_device *dev) |
| 1045 | +{ |
| 1046 | + struct ar231x_private *sp = netdev_priv(dev); |
| 1047 | + unsigned long flags; |
| 1048 | + |
| 1049 | + spin_lock_irqsave(&sp->lock, flags); |
| 1050 | + ar231x_restart(dev); |
| 1051 | + spin_unlock_irqrestore(&sp->lock, flags); |
| 1052 | +} |
| 1053 | + |
1042 | 1054 | +static void ar231x_halt(struct net_device *dev) |
1043 | 1055 | +{ |
1044 | 1056 | + struct ar231x_private *sp = netdev_priv(dev); |