Commit Graph

127 Commits

Author SHA1 Message Date
Felix Fietkau
1c0e751391 ar71xx: fix up alignment handling
- on ar724x, rx buffers can be aligned with an offset of 2, which keeps the ip header aligned
- alignment offset is only added if the ar8216 workaround is not active and the phy driver does not advertise its own packet alignment
- ar71xx and ar91xx can not handle rx alignment offsets, however taking a hit on unaligned exceptions seems to have less overhead than re-aligning the data for large packets
- use memmove to re-align small packets, if necessary

tested on ar9132, ar7240 and ar7242 based devices without ar8216 headers

SVN-Revision: 20892
2010-04-15 23:31:17 +00:00
Gabor Juhos
4c29a2c263 ar71xx: ag71xx: avoid unalinged accesses when using the phy specific receive functions
Cc: backfire@openwrt.org

SVN-Revision: 20751
2010-04-09 08:40:06 +00:00
Gabor Juhos
4a28844d80 ar71xx: ag71xx: call the phy driver's netif_receive_skb()
Ag71xx needs to call the phy's netif_receive_skb() to allow phy drivers
to mangle rx packets. This patch fixes it.

This fixes the header mangling of the AR8216 driver.

Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>
Cc:backfire@openwrt.org

SVN-Revision: 20750
2010-04-09 08:38:46 +00:00
Gabor Juhos
c874513cfa ar71xx: fix broken LAN ports on the boards with AR8216 switch (closes #7024)
* cc: backfire@openwrt.org

SVN-Revision: 20673
2010-04-03 13:59:08 +00:00
Gabor Juhos
b7ca043240 ar71xx: ag71xx: copy received packet to avoid unaligned access in the IP stack
SVN-Revision: 20506
2010-03-27 13:05:27 +00:00
Gabor Juhos
f9acf8ada1 ar71xx: ag71xx: introduce ag71xx_has_ar8216() helper
SVN-Revision: 20505
2010-03-27 13:05:24 +00:00
Gabor Juhos
200db5ebb5 ar71xx: ag71xx: reorganize ag71xx_rx_packet function
SVN-Revision: 20504
2010-03-27 13:05:20 +00:00
Gabor Juhos
245775a49f ar71xx: ag71xx: Add netpoll support
This patch adds support for polling interrupts, used by
netconsole and the likes.

Tested on d-link dir-615 C1 using netconsole.

Signed-off-by: Pat Erley <pat-lkml@erley.org>

SVN-Revision: 20503
2010-03-27 13:05:17 +00:00
Andy Boyett
681054333e wrt400n: lan ports don't need the ar8216 workaround
SVN-Revision: 20491
2010-03-26 19:09:11 +00:00
Gabor Juhos
9a1031ce6d ar71xx: change PHY select logic, and update phy_masks
SVN-Revision: 20358
2010-03-21 18:16:07 +00:00
Gabor Juhos
2a818f388a ar71xx: ag71xx: fix MAC address setup
SVN-Revision: 20092
2010-03-09 18:05:36 +00:00
Gabor Juhos
2702ae4e8f ar71xx: ag71xx: move calling ag71xx_phy_stop out from spinlock
SVN-Revision: 20004
2010-03-05 20:29:22 +00:00
Gabor Juhos
a4bccded57 ar71xx: ag71xx: move link update function
SVN-Revision: 20003
2010-03-05 20:29:18 +00:00
Gabor Juhos
eacf9a7614 ar71xx: ag71xx: don't use dev->trans_start
SVN-Revision: 20002
2010-03-05 20:29:14 +00:00
Gabor Juhos
ba288eeb84 ar71xx: ag71xx: use dma_unmap_single to unmap frames
SVN-Revision: 20001
2010-03-05 20:29:10 +00:00
Gabor Juhos
0e4eaea770 ar71xx: ag71xx: use correct device pointer for dma_map_single
SVN-Revision: 19951
2010-03-02 13:36:18 +00:00
Gabor Juhos
84823e1477 ar71xx: ag71xx: don't use virt_to_phys
SVN-Revision: 19950
2010-03-02 13:36:15 +00:00
Gabor Juhos
4a987d6008 ar71xx: ag71xx: simplify register access functions
SVN-Revision: 19949
2010-03-02 13:36:12 +00:00
Gabor Juhos
e157281c5d ar71xx: ag71xx: use NETDEV_TX_OK
SVN-Revision: 19948
2010-03-02 13:36:09 +00:00
Gabor Juhos
1612fd447d ar71xx: enable TX/RX flow control on the AR7240
SVN-Revision: 19832
2010-02-24 13:38:41 +00:00
Gabor Juhos
49c4df5487 rtl8366: make it available on all platforms
SVN-Revision: 19329
2010-01-25 15:13:38 +00:00
Gabor Juhos
97b983c8b9 rtl8366s: simplify mib counters handling
SVN-Revision: 19326
2010-01-25 14:24:53 +00:00
Gabor Juhos
2b5ba9073f rtl8366_smi: move RTL8366S driver into a separate file
SVN-Revision: 19279
2010-01-22 17:38:07 +00:00
Gabor Juhos
46b0e6643a rtl8366_smi: rename rtl8366s specific functions and definitions
SVN-Revision: 19278
2010-01-22 17:37:58 +00:00
Gabor Juhos
08055fd6d1 rtl8366_smi: move chip specific stuff into its own struct
SVN-Revision: 19277
2010-01-22 17:37:53 +00:00
Gabor Juhos
de751af190 rtl8366_smi: separate gpio initialization
SVN-Revision: 19276
2010-01-22 17:37:50 +00:00
Gabor Juhos
a1247d2f83 rtl8366_smi: store GPIO numbers directly in the rtl8366_smi struct
SVN-Revision: 19275
2010-01-22 17:37:47 +00:00
Gabor Juhos
ab278275ee rtl8366_smi: store device pointer instead of plaform_device
SVN-Revision: 19274
2010-01-22 17:37:41 +00:00
Gabor Juhos
edfa82ab60 rtl8366_smi: rename switch attribute handlers
SVN-Revision: 19254
2010-01-21 12:13:43 +00:00
Gabor Juhos
7aefde9f66 rtl8366_smi: simplify rtl8366_attr_get_port_link function
SVN-Revision: 19250
2010-01-20 20:36:30 +00:00
Gabor Juhos
83fb9f73e1 rtl8366_smi: make rtl8366_phy_config_{aneg,init} static
SVN-Revision: 19249
2010-01-20 20:36:27 +00:00
Gabor Juhos
cad07a09c1 rtl8366_smi: simplify rtl8366_{get,set}_port_vlan_index functions
SVN-Revision: 19248
2010-01-20 20:36:24 +00:00
Gabor Juhos
50849c6cff rtl8366_smi: minor code optimalizations
SVN-Revision: 19247
2010-01-20 20:36:21 +00:00
Gabor Juhos
3e6b3ea088 rtl8366_smi: coding style cleanup
SVN-Revision: 19246
2010-01-20 17:40:39 +00:00
Gabor Juhos
5e5451a54d rtl8366_smi: add Kconfig option for the debugfs stuff
SVN-Revision: 19243
2010-01-20 09:30:36 +00:00
Gabor Juhos
0d48b043b1 rtl8366_smi: fix error checking in rtl8366s_set_vlan_4k_entry
SVN-Revision: 19242
2010-01-20 09:30:32 +00:00
Gabor Juhos
0296b24f80 rtl8366_smi: fix parameter checking in rtl8366_attr_get_vlan_info
SVN-Revision: 19241
2010-01-20 09:30:25 +00:00
Gabor Juhos
743e7617b0 rtl8366_smi: fix return codes in rtl8366s_reset_vlan
SVN-Revision: 19240
2010-01-20 07:06:18 +00:00
Gabor Juhos
43815d730b rtl8366_smi: move variable initialization out from the loop
SVN-Revision: 19239
2010-01-20 07:06:15 +00:00
Gabor Juhos
fbc389ae9d rtl8366_smi: fix port->flags calculation in rtl8366_get_ports
SVN-Revision: 19237
2010-01-20 07:06:10 +00:00
Gabor Juhos
c4838a0f9e rtl8366_smi: use inline function instead of a macro on top of container_of
SVN-Revision: 19215
2010-01-18 09:01:40 +00:00
Felix Fietkau
88ddc59655 rtl8366_smi: reset the vlan table when resetting the switch and use vlan get/set ports for vlan member lists
SVN-Revision: 19206
2010-01-18 00:12:12 +00:00
Felix Fietkau
b228fd428a rtl8366_smi: fix excessive stack usage and buffer handling bugs
SVN-Revision: 19205
2010-01-18 00:12:07 +00:00
Felix Fietkau
8394a32815 ar71xx: fix return statement in the rtl8366 driver
SVN-Revision: 19204
2010-01-17 22:57:08 +00:00
Gabor Juhos
d2229cb1cc rtl8366_smi: register the switch directly from the probe routine
SVN-Revision: 19202
2010-01-17 21:37:09 +00:00
Gabor Juhos
088ba7e1db rtl8366_smi: use vlanmc name for all vlanconfig variables
SVN-Revision: 19201
2010-01-17 21:17:59 +00:00
Gabor Juhos
639212697d rtl8366_smi: use vlan4k name for all vlan4kentry variables
SVN-Revision: 19200
2010-01-17 21:17:57 +00:00
Gabor Juhos
9cb11e2eef rtl8366_smi: move memset into the rtl8366s_get_member_config function
SVN-Revision: 19199
2010-01-17 21:17:53 +00:00
Gabor Juhos
f55beb9e9b rtl8366_smi: move memset into the rtl8366s_get_vlan_4k_entry function
SVN-Revision: 19198
2010-01-17 21:17:49 +00:00
Gabor Juhos
7f9b0eca90 rtl8366_smi: add vid parameter to the rtl8366s_get_vlan_4k_entry function
SVN-Revision: 19197
2010-01-17 21:17:46 +00:00