openwrtv3/target/linux/generic/files/drivers/net/phy
Gabor Juhos 395d0bdc1f generic: ar8216: clear driver specific data pointer in phy_device
This is needed to avoid a NULL pointer dereference:

  [   19.525270] Unable to handle kernel paging request for data at address 0x00000018
  [   19.532750] Faulting instruction address: 0xc016e104
  [   19.537714] Oops: Kernel access of bad area, sig: 11 [#1]
  [   19.543102] P1010 RDB
  [   19.545365] Modules linked in: booke_wdt nf_nat_irc nf_nat_ftp nf_conntrack_irc nf_conntrack_ftp ipt_MASQUERADE iptable_nat xt_nat d
  [   19.590725] NIP: c016e104 LR: c0171490 CTR: 00000000
  [   19.595681] REGS: c4bc3c10 TRAP: 0300   Tainted: G        W  O (3.7.6)
  [   19.602284] MSR: 00029000 <CE,EE,ME>  CR: 82002022  XER: 20000000
  [   19.608381] DEAR: 00000018, ESR: 00000000
  [   19.612382] TASK = c4cd9c80[2070] 'ifconfig' THREAD: c4bc2000
  GPR00: 00000001 c4bc3cc0 c4cd9c80 00000000 c7811000 00000000 00000000 0000e8ec
  GPR08: 0000e8eb 00000000 00029000 00000001 00000000 100801f8 1005c51c 1005c514
  GPR16: 1005c468 1005c54c 1005c258 1005c530 10060000 00000000 c7811000 ffff8914
  GPR24: c7815030 c793e400 10063adb 00000000 c7811000 c045594c c78ca600 c7815000
  [   19.646352] NIP [c016e104] register_switch+0x98/0x2d0
  [   19.651397] LR [c0171490] ar8216_config_init+0x2d8/0x3f4
  [   19.656697] Call Trace:
  [   19.659138] [c4bc3cc0] [c0170490] ar8216_mii_read+0x64/0xc4 (unreliable)
  [   19.665835] [c4bc3d00] [c0171490] ar8216_config_init+0x2d8/0x3f4
  [   19.671835] [c4bc3d20] [c016cf8c] phy_init_hw+0x50/0x6c
  [   19.677053] [c4bc3d30] [c016d078] phy_attach_direct+0xd0/0xf8
  [   19.682793] [c4bc3d50] [c016d154] phy_connect_direct+0x24/0x68
  [   19.688621] [c4bc3d70] [c0183b70] of_phy_connect+0x48/0x6c
  [   19.694102] [c4bc3d90] [c0175aac] gfar_enet_open+0x254/0x3d8
  [   19.699755] [c4bc3db0] [c019acc4] __dev_open+0xc0/0x120
  [   19.704975] [c4bc3dd0] [c019af98] __dev_change_flags+0xd4/0x15c
  [   19.710888] [c4bc3df0] [c019b0d4] dev_change_flags+0x1c/0x60
  [   19.716544] [c4bc3e10] [c01ebb94] devinet_ioctl+0x290/0x690
  [   19.722111] [c4bc3e70] [c01ec8d4] inet_ioctl+0x88/0xbc
  [   19.727245] [c4bc3e80] [c0186b98] sock_ioctl+0x258/0x294
  [   19.732551] [c4bc3ea0] [c009c00c] do_vfs_ioctl+0x6a4/0x728
  [   19.738031] [c4bc3f10] [c009c0d4] sys_ioctl+0x44/0x70
  [   19.743077] [c4bc3f40] [c000c74c] ret_from_syscall+0x0/0x3c
  [   19.748646] --- Exception: c01 at 0x48091b34
  [   19.748646]     LR = 0x480e4b64
  [   19.756033] Instruction dump:
  [   19.758991] 2f830000 907f0050 3860fff4 419e021c 837f0000 38000000 901f0038 901f0040
  [   19.766744] 901f003c 7f600034 5400d97e 0f000000 <801b0018> 2f800000 40be0010 801b001c

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 35497
2013-02-05 08:39:26 +00:00
..
b53 kernel: b53: the b53 spi driver depends on spi 2013-01-27 21:39:53 +00:00
adm6996.c (respin) 802.1Q VLAN support for ADM6996M/ADM6996FC 2011-05-09 15:21:58 +00:00
adm6996.h (respin) 802.1Q VLAN support for ADM6996M/ADM6996FC 2011-05-09 15:21:58 +00:00
ar8216.c generic: ar8216: clear driver specific data pointer in phy_device 2013-02-05 08:39:26 +00:00
ar8216.h generic: ar8216: add sgmii_delay_en field to ar8327_platform_data 2012-12-25 18:45:31 +00:00
ip17xx.c unify extended vlan id swconfig attributes. AR8216 and PSB6970 used "pvid", IP17xx used "tag" and RTL8306 called it "vid". Change all to "vid" and annotate the description with the valid ID range. 2010-10-12 20:49:35 +00:00
micrel.c ar71xx: move micrel PHY driver to the generic linux target 2012-03-15 09:25:53 +00:00
mvswitch.c kernel: rewrite the phy packet hook, put it in the network stack to avoid having to keep non-upstream ethernet driver changes 2012-05-06 21:19:14 +00:00
mvswitch.h rename target/linux/generic-2.6 to generic 2010-06-26 20:42:58 +00:00
psb6970.c unify extended vlan id swconfig attributes. AR8216 and PSB6970 used "pvid", IP17xx used "tag" and RTL8306 called it "vid". Change all to "vid" and annotate the description with the valid ID range. 2010-10-12 20:49:35 +00:00
rtl8306.c rtl8306: do not overwrite registers in the phy fixup, it could mess up other switches (fixes #8911) 2011-04-02 16:35:22 +00:00
rtl8366_smi.c generic: rtl8366_smi: only assign pvid if no pvid was set yet 2013-01-18 15:19:11 +00:00
rtl8366_smi.h linux: generic: rtl836*: fix compilation with !CONFIG_OF 2012-12-15 13:32:02 +00:00
rtl8366rb.c kernel: remove __devinit, __devexit and __devexit_p for kernel 3.8 2013-01-27 17:48:48 +00:00
rtl8366s.c kernel: remove __devinit, __devexit and __devexit_p for kernel 3.8 2013-01-27 17:48:48 +00:00
rtl8367.c kernel: remove __devinit, __devexit and __devexit_p for kernel 3.8 2013-01-27 17:48:48 +00:00
rtl8367b.c kernel: remove __devinit, __devexit and __devexit_p for kernel 3.8 2013-01-27 17:48:48 +00:00
swconfig.c swconfig: make it compatible with 3.7 2012-11-21 17:38:11 +00:00
swconfig_leds.c generic: swconfig: use led_set_brightness in LED control code 2012-10-26 18:58:18 +00:00