juhosg
def4db1886
swconfig: make it compatible with 3.7
...
swconfig does not compile with 3.7 because
struct netlink_notify->pid has been renamed to
struct netlink_notify->portid
and
struct genl_info->snd_pid has been renamed to
struct genl_info->snd_portid
Use the new names and add compatibility patches
to 3.3 and 3.6.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34288 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-21 17:38:11 +00:00
juhosg
62d84c033a
generic: ar8216: fix port number check in 'ar8xxx_mib_work_func'
...
Also add a WARN_ON to 'ar8216_mib_fetch_port_stat'
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34283 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-20 20:40:04 +00:00
juhosg
e0cb5a2b6c
generic: ar8216: remove an unblanced mutex_unlock call
...
Fixes the following warning:
[ 94.080000]
[ 94.080000] =====================================
[ 94.080000] [ BUG: bad unlock balance detected! ]
[ 94.080000] 3.3.8 #2 Tainted: G O
[ 94.080000] -------------------------------------
[ 94.080000] swconfig/1220 is trying to release lock (&priv->mib_lock) at:
[ 94.080000] [<801df8f4>] ar8216_sw_get_port_mib+0x138/0x16c
[ 94.080000] but there are no more locks to release!
[ 94.080000]
[ 94.080000] other info that might help us debug this:
[ 94.080000] 2 locks held by swconfig/1220:
[ 94.080000] #0 : (genl_mutex){+.+...}, at: [<80222430>] genl_rcv+0x14/0x34
[ 94.080000] #1 : (&dev->sw_mutex){+.+...}, at: [<801da018>] swconfig_get_dev+0x88/0xb4
[ 94.080000]
[ 94.080000] stack backtrace:
[ 94.080000] Call Trace:
[ 94.080000] [<8028dc58>] dump_stack+0x8/0x34
[ 94.080000] [<800a5128>] print_unlock_inbalance_bug+0xe0/0xfc
[ 94.080000] [<800a82c0>] lock_release+0x18c/0x1c8
[ 94.080000] [<80292074>] __mutex_unlock_slowpath+0xd8/0x17c
[ 94.080000] [<801df8f4>] ar8216_sw_get_port_mib+0x138/0x16c
[ 94.080000] [<801db688>] swconfig_get_attr+0xbc/0x394
[ 94.080000] [<8022261c>] genl_rcv_msg+0x1cc/0x214
[ 94.080000] [<80221a18>] netlink_rcv_skb+0x6c/0xe8
[ 94.080000] [<80222440>] genl_rcv+0x24/0x34
[ 94.080000] [<80221370>] netlink_unicast+0x15c/0x22c
[ 94.080000] [<8022175c>] netlink_sendmsg+0x240/0x2d0
[ 94.080000] [<801ef544>] sock_sendmsg+0x84/0x9c
[ 94.080000] [<801f0648>] __sys_sendmsg+0x1cc/0x270
[ 94.080000] [<801f207c>] sys_sendmsg+0x48/0x7c
[ 94.080000] [<8006ad78>] stack_done+0x20/0x40
[ 94.080000]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34282 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-20 20:40:03 +00:00
juhosg
908b076d38
generic: ar8216: add missing locking calls
...
Fixes the following lockdep warning:
[ 19.160000] ------------[ cut here ]------------
[ 19.160000] WARNING: at drivers/net/phy/ar8216.c:322 ar8216_rmw+0x54/0xa4()
[ 19.170000] Modules linked in: nf_defrag_ipv4 nf_conntrack ehci_hcd
sd_mod pppox ipt_REJECT xt_TCPMSS ipt_LOG xt_comment xt_multip
ort xt_mac xt_limit iptable_mangle iptable_filter ip_tables xt_tcpudp
x_tables ppp_async ppp_generic slhc ath9k(O) ath9k_common(O) at
h9k_hw(O) ath(O) mac80211(O) usbcore usb_common scsi_mod nls_base crc7
crc_itu_t crc_ccitt cfg80211(O) compat(O) arc4 aes_generic cry
pto_blkcipher cryptomgr aead crypto_hash crypto_algapi ledtrig_timer
ledtrig_default_on leds_gpio gpio_button_hotplug(O)
[ 19.210000] Call Trace:
[ 19.220000] [<8028dc38>] dump_stack+0x8/0x34
[ 19.220000] [<80072da0>] warn_slowpath_common+0x78/0xa4
[ 19.230000] [<80072de4>] warn_slowpath_null+0x18/0x24
[ 19.230000] [<801de820>] ar8216_rmw+0x54/0xa4
[ 19.240000] [<801df460>] ar8216_mib_capture+0x70/0xd0
[ 19.240000] [<801df944>] ar8xxx_mib_work_func+0x34/0x98
[ 19.250000] [<80089a7c>] process_one_work+0x28c/0x460
[ 19.250000] [<8008a630>] worker_thread+0x22c/0x334
[ 19.260000] [<8008e544>] kthread+0x88/0x90
[ 19.260000] [<80065020>] kernel_thread_helper+0x10/0x18
[ 19.270000]
[ 19.270000] ---[ end trace 22e9d696adfa6a08 ]---
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34281 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-20 20:40:00 +00:00
juhosg
bf59a262d1
generic: ar8216: add MIB counter support for the AR8216 switch as well
...
Thanks to Jonas Gorski for the reference URL.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34245 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-18 16:21:00 +00:00
juhosg
c541c7e493
generic: ar8216: rename AR8216_*_STATS_* defines
...
The names are misleading, those are only valid from
AR8236. The AR8216 chip uses different offsets.
Thanks to Jonas Gorski for the report.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34244 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-18 16:20:56 +00:00
juhosg
182478490a
generic ar8216: allow to read/reset MIB counters via swconfig
...
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34243 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-18 12:26:35 +00:00
juhosg
42670d4d0f
generic: ar8216: use dynamically allocated private data in ar8216_probe
...
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34242 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-11-18 12:26:34 +00:00
juhosg
118178a078
generic: swconfig: use led_set_brightness in LED control code
...
The 'led_brightness_set' function has
been renamed to 'led_set_brightness'
in recent ernels. Use the new name and
add a compatibility patch for 3.3.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33946 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-26 18:58:18 +00:00
florian
ac3d47a751
[kernel] swconfig: get rid of the NLA_PUT_* macros
...
Upstream kernel 3.6 has removed this usage, use the plain functions directly as
intended.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33906 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-24 13:05:04 +00:00
juhosg
9f961949b6
generic: add driver for the the RTL8367R{B,-VB} switches
...
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33839 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-18 07:22:56 +00:00
juhosg
3a14c373fd
generic: rtl8366_smi: increase delay after switch hw reset
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33077 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-08-10 06:32:00 +00:00
juhosg
08700f9817
generic: rtl836x: add hw_reset field to struct rtl8366_smi
...
It will be used to start/stop the switch if that is
supported by the given board.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32943 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-08-02 09:54:21 +00:00
juhosg
7f000ed40c
generic: rtl8366_smi: use __rtl8366_smi_cleanup instead of gpio_free calls
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32942 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-08-02 09:54:13 +00:00
juhosg
671f0e3971
generic: ar8216: start aneg on each PHY of the AR8327
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32604 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-07-05 08:26:39 +00:00
juhosg
7066d5e4ae
generic: ar8216: allow to configure AR8327 LEDs via platform data
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32456 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-06-19 10:44:16 +00:00
juhosg
7cab23d0dc
generic: ar8216: add revision specific PHY fixups for AR8327
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32000 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-29 16:39:27 +00:00
juhosg
72df0a7c48
generic: ar8216: replace chip_type field with chip_{ver,rev} in ar8216_priv
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31999 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-29 16:39:26 +00:00
juhosg
6d10d89b29
generic: ar8216: add chip_is_ar8{216,236,316,327} helpers
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31998 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-29 16:39:24 +00:00
juhosg
39068e8b25
generic: rtl8367: rename a misnamed variable
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31917 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-27 17:09:47 +00:00
juhosg
11d6be39a6
generic: rtl8366_smi: remove duplicated spinlock initialization
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31916 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-27 17:09:45 +00:00
juhosg
63d3e3114d
generic: rtl8366_smi: rename debugfs Kconfig symbol
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31915 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-27 17:09:43 +00:00
juhosg
5a1c605a9e
generic: rtl8367: allow to use VLANs > 31
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31914 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-27 17:09:41 +00:00
nbd
d4d537811b
kernel: rewrite the phy packet hook, put it in the network stack to avoid having to keep non-upstream ethernet driver changes
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31637 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-06 21:19:14 +00:00
nbd
f31721e174
atheros: update to 3.3.4 (based on work by acoul), fix mvswitch driver for newer kernels
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31625 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-05-06 17:08:30 +00:00
juhosg
1cfcccb5b0
linux: rtl836x: add a generic reset_switch function
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31536 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-04-29 18:29:31 +00:00
juhosg
5df734f0bc
linux: rtl836x: rename rtl836*_hw_init to rtl836*_setup
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31535 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-04-29 18:29:29 +00:00
juhosg
1dcdbf2d3f
linux: rtl836x: add a reset_chip callback to rtl8366_smi_ops
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31534 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-04-29 18:29:26 +00:00
nbd
038eed6f69
ar8216: enable forwarding of multicast frames to the cpu port on ar8327 (thx, SeG)
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31441 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-04-22 19:19:49 +00:00
blogic
61a78f8450
[ar8216] fixes breakage introduced in 776722ce36ac95877efb7fd771dde2f6ffc96433
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31054 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-22 13:07:34 +00:00
juhosg
17df14bf19
generic: ar8216: add support for the AR8327 chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31011 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:55 +00:00
juhosg
a79728bb5c
generic: ar8216: allow to use more ports
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31010 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:51 +00:00
juhosg
3f02078b26
generic: ar8216: reorder chip specific functions
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31009 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:48 +00:00
juhosg
28857571f7
generic: ar8216: reorder switch_dev specific functions
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31008 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:45 +00:00
juhosg
bc46e3f21c
generic: ar8216: use ar8216_sw_ prefix for switchdev related functions
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31007 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:42 +00:00
juhosg
76c970bba3
generic: ar8216: use switch_dev->ports in for loops
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31006 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:40 +00:00
juhosg
6db6793b7a
generic: ar8216: add read_port_status field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31005 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:39 +00:00
juhosg
c4c471bd64
generic: ar8216: add init_globals field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31004 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:36 +00:00
juhosg
30a5115c48
generic: ar8216: add caps field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31003 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:33 +00:00
juhosg
c097ab2bbd
generic: ar8216: add vtu_load_vlan field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31002 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:30 +00:00
juhosg
6934b97c4e
generic: ar8216: add vtu_flush field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31001 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:26 +00:00
juhosg
d29edcf013
generic: ar8216: add init_port field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31000 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:23 +00:00
juhosg
9aeb2624ac
generic: ar8216: add setup_port field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30999 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:19 +00:00
juhosg
f54b65f008
generic: ar8216: add hw_init field to ar8xxx_chip
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30998 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:15 +00:00
juhosg
5e670215a9
generic: ar8216: add a separate structure for chip specific stuff
...
Also add a hw_init function into that.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30997 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:12 +00:00
juhosg
b9fa24dba2
generic: ar8216: rename chip field of struct ar8216
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30996 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:08 +00:00
juhosg
166dc561a1
generic: ar8216: move ar8216_id_chip function
...
Also remove the inline annotation.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30995 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:05 +00:00
juhosg
b7facc3842
generic: ar8216: rename ar8216_ops to ar8216_sw_ops
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30994 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-18 22:06:03 +00:00
nbd
a2e617077c
swconfig: use a mutex instead of a spinlock, many swconfig calls sleep
...
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30952 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-15 19:32:31 +00:00
nbd
b5e9c6c090
ar8216: fix a MTU related regression
...
Switch reset on AR8316 appears to clobber the MTU configuration register
and possibly other global config registers. Move global configuration
register init writes back to the reset callback.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30951 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-03-15 16:57:27 +00:00