1. 04 12月, 2009 1 次提交
  2. 17 11月, 2009 1 次提交
    • S
      net: fix mdio section mismatch warning · f99b4a02
      Stephen Rothwell 提交于
      This fixes the following warning:
      
      WARNING: drivers/net/phy/built-in.o(.devexit.text+0x70): Section mismatch in reference from the function .mdio_gpio_bus_destroy() to the function .devinit.text:.mdio_gpio_bus_deinit()
      The function __devexit .mdio_gpio_bus_destroy() references
      a function __devinit .mdio_gpio_bus_deinit().
      This is often seen when error handling in the exit function
      uses functionality in the init path.
      The fix is often to remove the __devinit annotation of
      .mdio_gpio_bus_deinit() so it may be used outside an init section.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f99b4a02
  3. 03 11月, 2009 8 次提交
  4. 15 10月, 2009 1 次提交
  5. 12 9月, 2009 2 次提交
  6. 04 9月, 2009 1 次提交
  7. 27 8月, 2009 3 次提交
  8. 24 7月, 2009 1 次提交
  9. 15 7月, 2009 1 次提交
  10. 08 7月, 2009 1 次提交
  11. 03 7月, 2009 1 次提交
  12. 17 6月, 2009 1 次提交
  13. 03 6月, 2009 1 次提交
  14. 27 4月, 2009 2 次提交
  15. 16 4月, 2009 1 次提交
  16. 14 4月, 2009 3 次提交
  17. 11 4月, 2009 1 次提交
  18. 03 4月, 2009 1 次提交
  19. 24 3月, 2009 1 次提交
  20. 14 3月, 2009 1 次提交
  21. 27 2月, 2009 1 次提交
  22. 11 2月, 2009 1 次提交
  23. 01 2月, 2009 1 次提交
  24. 23 1月, 2009 2 次提交
    • S
      phy: Add suspend/resume support to SMSC PHYs · c64d2a9a
      Steve Glendinning 提交于
      All supported SMSC PHYs implement the standard "power down" bit 11 of
      BMCR, so this patch adds support using the generic genphy_{suspend,resume}
      functions.
      Signed-off-by: NSteve Glendinning <steve.glendinning@smsc.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c64d2a9a
    • A
      phylib: Fix oops in suspend/resume paths · 6f051069
      Anton Vorontsov 提交于
      Suspend/resume routines check for phydrv != NULL, but that is
      wrong because "phydrv" comes from container_of(drv). If drv is NULL,
      then container_of(drv) will return non-NULL result, and the checks
      won't work.
      
      The Freescale TBI PHYs are driver-less, so "drv" is NULL, and that
      leads to the following oops:
      
      Unable to handle kernel paging request for data at address 0xffffffe4
      Faulting instruction address: 0xc0215554
      Oops: Kernel access of bad area, sig: 11 [#1]
      [...]
      NIP [c0215554] mdio_bus_suspend+0x34/0x70
      LR [c01cc508] suspend_device+0x258/0x2bc
      Call Trace:
      [cfad3da0] [cfad3db8] 0xcfad3db8 (unreliable)
      [cfad3db0] [c01cc508] suspend_device+0x258/0x2bc
      [cfad3dd0] [c01cc62c] dpm_suspend+0xc0/0x140
      [cfad3e20] [c01cc6f4] device_suspend+0x48/0x5c
      [cfad3e40] [c0068dd8] suspend_devices_and_enter+0x8c/0x148
      [cfad3e60] [c00690f8] enter_state+0x100/0x118
      [cfad3e80] [c00691c0] state_store+0xb0/0xe4
      [cfad3ea0] [c018c938] kobj_attr_store+0x24/0x3c
      [cfad3eb0] [c00ea9a8] flush_write_buffer+0x58/0x7c
      [cfad3ed0] [c00eadf0] sysfs_write_file+0x58/0xa0
      [cfad3ef0] [c009e810] vfs_write+0xb4/0x16c
      [cfad3f10] [c009ed40] sys_write+0x4c/0x90
      [cfad3f40] [c0014954] ret_from_syscall+0x0/0x38
      [...]
      
      This patch fixes the issue, plus removes unneeded parentheses
      and fixes indentation level in mdio_bus_suspend().
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6f051069
  25. 22 1月, 2009 1 次提交
  26. 15 1月, 2009 1 次提交
    • A
      phylib: Fix Freescale TBI PHY detection · f0d44ae3
      Anton Vorontsov 提交于
      Freescale on-chip TBI PHYs reports PHY ID as 0x0, but as of
      
      commit 3ee82383
      Author: Giulio Benetti <giulio.benetti@micronovasrl.com>
      Date:   Thu Nov 13 21:53:13 2008 +0000
      
          phy: fix phy address bug
      
          PHYID returns 0xffff and not 0xffffffff when not found and in some
          case(at91sam9263) 0x0. Maybe this patch could be useful.
      
      phy_device.c treats PHY ID == 0x0 as bogus IDs, and that results in
      gianfar driver failure to see the TBI PHYs. This code snippet triggers:
      
      	if (!priv->tbiphy) {
      		printk(KERN_WARNING "SGMII mode requires that the device "
      				"tree specify a tbi-handle\n");
      		return;
      	}
      
      Although tbi-handle is specified in the device tree.
      
      Btw, technically PHY ID == 0x0 is a valid ID (if we ever see a PHY
      manufactured by Xerox :-).
      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>
      f0d44ae3