1. 03 11月, 2009 3 次提交
  2. 15 10月, 2009 1 次提交
  3. 13 10月, 2009 8 次提交
  4. 06 9月, 2009 1 次提交
    • D
      gianfar: Fix build. · d9d8e041
      David S. Miller 提交于
      Reported by Michael Guntsche <mike@it-loops.com>
      
      --------------------
      Commit
      38bddf04 gianfar: gfar_remove needs to call unregister_netdev()
      
      breaks the build of the gianfar driver because "dev" is undefined in
      this function. To quickly test rc9 I changed this to priv->ndev but I do
      not know if this is the correct one.
      --------------------
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d9d8e041
  5. 31 8月, 2009 1 次提交
    • T
      gianfar: gfar_remove needs to call unregister_netdev() · 38bddf04
      Toru UCHIYAMA 提交于
      This patch solves the problem that the Oops(BUG_ON) occurs by rmmod.
      
      	# rmmod gianfar_driver
      	------------[ cut here ]------------
      	Kernel BUG at c01fec48 [verbose debug info unavailable]
      	Oops: Exception in kernel mode, sig: 5 [#1]
      	MPC837x MDS
      	Modules linked in: gianfar_driver(-) usb_storage scsi_wait_scan
      	NIP: c01fec48 LR: c01febf4 CTR: c01feba8
      	REGS: dec5bd60 TRAP: 0700   Tainted: G        W   (2.6.31-rc2)
      	MSR: 00029032 <EE,ME,CE,IR,DR>  CR: 22000424  XER: 20000000
      	TASK = dec4cac0[1135] 'rmmod' THREAD: dec5a000
      	GPR00: 00000002 dec5be10 dec4cac0 dfba1820 c035d444 c035d478 ffffffff 00000000
      	GPR08: 0000002b 00000001 dfba193c 00000001 22000424 10019b34 1ffcb000 00000000
      	GPR16: 10012008 00000000 bf82ebe0 100017ec bf82ebec bf82ebe8 bf82ebd0 00000880
      	GPR24: 00000000 bf82ebf0 c03532f0 c03532e4 c036b594 dfba183c dfba1800 dfba1820
      	NIP [c01fec48] free_netdev+0xa0/0xb8
      	LR [c01febf4] free_netdev+0x4c/0xb8
      	Call Trace:
      	[dec5be10] [c01febf4] free_netdev+0x4c/0xb8 (unreliable)
      	[dec5be30] [e105f290] gfar_remove+0x50/0x68 [gianfar_driver]
      	[dec5be40] [c01ec534] of_platform_device_remove+0x30/0x44
      	[dec5be50] [c0181760] __device_release_driver+0x68/0xc8
      	[dec5be60] [c0181868] driver_detach+0xa8/0xac
      	[dec5be80] [c0180814] bus_remove_driver+0x9c/0xd8
      	[dec5bea0] [c0181efc] driver_unregister+0x60/0x98
      	[dec5beb0] [c01ec650] of_unregister_driver+0x14/0x24
      	[dec5bec0] [e10631bc] gfar_exit+0x18/0x4bc [gianfar_driver]
      	[dec5bed0] [c0047584] sys_delete_module+0x16c/0x228
      	[dec5bf40] [c00116bc] ret_from_syscall+0x0/0x38
      	--- Exception: c01 at 0xff3669c
      	    LR = 0x10000f34
      	Instruction dump:
      	409e0024 a07e00c0 7c63f050 4be74429 80010024 bba10014 38210020 7c0803a6
      	4e800020 68000003 3160ffff 7d2b0110 <0f090000> 38000004 387e01f0 901e01d4
      	---[ end trace 8c595bcd37230a0f ]---
      	 localhost kernel: ------------[ cut here ]------------
      
      Signed-off-by: Toru UCHIYAMA uchiyama.toru@jp.fujitsu.com
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      38bddf04
  6. 10 8月, 2009 1 次提交
  7. 23 7月, 2009 1 次提交
    • A
      gianfar: Revive fixed link support · 1db780f8
      Anton Vorontsov 提交于
      Since commit fe192a49 ("Rework gianfar
      driver to use of_mdio infrastructure") the fixed-link support is
      broken, the driver oopses at init_phy():
      
        Unable to handle kernel paging request for data at address 0x000000e4
        Faulting instruction address: 0xc01cf298
        Oops: Kernel access of bad area, sig: 11 [#1]
        [...]
        NIP [c01cf298] init_phy+0x80/0xdc
        LR [c01cf250] init_phy+0x38/0xdc
        Call Trace:
        [cf81fe80] [c01d1cf8] gfar_enet_open+0x6c/0x19c
        [cf81fea0] [c024494c] dev_open+0xfc/0x134
        [cf81fec0] [c0242edc] dev_change_flags+0x84/0x1ac
        [cf81fee0] [c0399ee0] ic_open_devs+0x168/0x2d8
        [cf81ff20] [c039b2e8] ip_auto_config+0x90/0x2a4
        [cf81ff60] [c0003884] do_one_initcall+0x34/0x1a8
      
      This patch fixes the oops, and removes phy_node checks, and adds a call
      to of_phy_connect_fixed_link() if a phy isn't attached..
      
      Also, remove an old fixed-link code that we don't use any longer.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1db780f8
  8. 16 7月, 2009 1 次提交
  9. 13 7月, 2009 1 次提交
  10. 25 5月, 2009 1 次提交
  11. 28 4月, 2009 1 次提交
  12. 27 4月, 2009 1 次提交
  13. 15 4月, 2009 1 次提交
    • M
      gianfar: stop send queue before resetting gianfar · cbea2707
      Markus Brunner 提交于
      After a transmit timed out, the reset task will be called, which will free the
      allocated resources(stop_gfar). If gfar_poll will be called before the
      resources get allocated again gfar_clean_tx_ring will call
      dev_kfree_skb_any(NULL).
      
      Example crash:
      
      ops: Kernel access of bad area, sig: 11 [#1]
      PREEMPT RSBBA100
      Modules linked in:
      NIP: c01a10c4 LR: c013b254 CTR: c013c038
      REGS: c02e7d20 TRAP: 0300   Not tainted  (2.6.27.20)
      MSR: 00001032 <ME,IR,DR>  CR: 24000082  XER: 20000000
      DAR: 000000a0, DSISR: 20000000
      TASK = c02ce578[0] 'swapper' THREAD: c02e6000
      GPR00: 000000a0 c02e7dd0 c02ce578 00000000 00000040 00000001 c02ec1c0 
      00001032
      GPR08: c080d1e0 df9ea800 00000000 00000000 24000082 ffffffff 0404f000 
      00000000
      GPR16: ffffffbf ffffffff ffffffff ffdff7ff ffffffff c02d0fd4 00100100 
      00200200
      GPR24: c031220c 00000001 00000001 00000000 00000000 df849800 ff109000 
      df849b80
      NIP [c01a10c4] dev_kfree_skb_irq+0x18/0x70
      LR [c013b254] gfar_clean_tx_ring+0x70/0x11c
      Call Trace:
      [c02e7dd0] [c003e978] update_wall_time+0x730/0x744 (unreliable)
      [c02e7df0] [c013b254] gfar_clean_tx_ring+0x70/0x11c
      [c02e7e10] [c013c07c] gfar_poll+0x44/0x150
      [c02e7e30] [c01a064c] net_rx_action+0xa8/0x19c
      [c02e7e70] [c00251d4] __do_softirq+0x64/0xc0
      [c02e7e90] [c0006384] do_softirq+0x40/0x58
      [c02e7ea0] [c00250a8] irq_exit+0x40/0x9c
      [c02e7eb0] [c000642c] do_IRQ+0x90/0xac
      [c02e7ec0] [c0010ab4] ret_from_except+0x0/0x14
      --- Exception: 501 at cpu_idle+0x9c/0xf8
          LR = cpu_idle+0x9c/0xf8
      [c02e7f80] [c0009820] cpu_idle+0x58/0xf8 (unreliable)
      [c02e7fa0] [c01fb8c8] __got2_end+0x7c/0x90
      [c02e7fc0] [c026c794] start_kernel+0x2c0/0x2d4
      [c02e7ff0] [00003438] 0x3438
      Instruction dump:
      7fa00124 80010024 bba10014 38210020 7c0803a6 4e800020 9421ffe0 7c0802a6
      7c6b1b78 90010024 380300a0 bfa10014 <7d200028> 3129ffff 7d20012d 40a2fff4
      Kernel panic - not syncing: Fatal exception in interrupt
      
      This Patch calls netif_stop_queue before calling stop_gfar.
      Signed-off-by: NMarkus Brunner <super.firetwister@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cbea2707
  14. 29 3月, 2009 1 次提交
  15. 28 3月, 2009 1 次提交
  16. 27 3月, 2009 2 次提交
  17. 26 3月, 2009 1 次提交
  18. 22 3月, 2009 1 次提交
  19. 19 3月, 2009 1 次提交
  20. 14 3月, 2009 1 次提交
  21. 27 2月, 2009 1 次提交
  22. 10 2月, 2009 1 次提交
  23. 05 2月, 2009 4 次提交
  24. 01 2月, 2009 2 次提交
    • A
      gianfar: Fix sparse warnings · b2f66d18
      Anton Vorontsov 提交于
      This patch fixes following sparse warnings:
      
        CHECK   gianfar_ethtool.c
      gianfar_ethtool.c:610:26: warning: symbol 'gfar_ethtool_ops' was not declared. Should it be static?
        CHECK   gianfar_mii.c
      gianfar_mii.c:108:35: warning: cast adds address space to expression (<asn:2>)
      gianfar_mii.c:119:35: warning: cast adds address space to expression (<asn:2>)
      gianfar_mii.c:128:35: warning: cast adds address space to expression (<asn:2>)
      gianfar_mii.c:272:5: warning: cast removes address space of expression
      gianfar_mii.c:271:15: warning: cast adds address space to expression (<asn:2>)
      gianfar_mii.c:340:11: warning: cast adds address space to expression (<asn:2>)
        CHECK   gianfar_sysfs.c
      gianfar_sysfs.c:84:1: warning: symbol 'dev_attr_bd_stash' was not declared. Should it be static?
      gianfar_sysfs.c:133:1: warning: symbol 'dev_attr_rx_stash_size' was not declared. Should it be static?
      gianfar_sysfs.c:175:1: warning: symbol 'dev_attr_rx_stash_index' was not declared. Should it be static?
      gianfar_sysfs.c:213:1: warning: symbol 'dev_attr_fifo_threshold' was not declared. Should it be static?
      gianfar_sysfs.c:250:1: warning: symbol 'dev_attr_fifo_starve' was not declared. Should it be static?
      gianfar_sysfs.c:287:1: warning: symbol 'dev_attr_fifo_starve_off' was not declared. Should it be static?
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b2f66d18
    • A
      gianfar: Implement proper, per netdevice wakeup management · 2884e5cc
      Anton Vorontsov 提交于
      This patch implements wakeup management for the gianfar driver.
      
      The driver should set wakeup enable if WOL is enabled, so that
      phylib won't power off an attached PHY.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2884e5cc
  25. 27 1月, 2009 1 次提交
    • A
      gianfar: Revive VLAN support · cd1f55a5
      Anton Vorontsov 提交于
      commit 77ecaf2d ("gianfar: Fix VLAN
      HW feature related frame/buffer size calculation") wrongly removed
      priv->vlgrp assignment, and now priv->vlgrp is always NULL.
      
      This patch fixes the issue, plus fixes following sparse warning
      introduced by the same commit:
      gianfar.c:1406:13: warning: context imbalance in 'gfar_vlan_rx_register' - wrong count at exit
      
      gfar_vlan_rx_register() checks for "if (old_grp == grp)" and tries
      to return w/o dropping the lock.
      
      According to net/8021q/vlan.c VLAN core issues rx_register() callback:
      1. In register_vlan_dev() only on a newly created group;
      2. In unregister_vlan_dev() only if the group becomes empty.
      
      Thus the check in the gianfar driver isn't needed.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Acked-by: NAndy Fleming <afleming@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cd1f55a5
  26. 22 1月, 2009 1 次提交