1. 19 5月, 2011 1 次提交
    • G
      drivercore: revert addition of of_match to struct device · b1608d69
      Grant Likely 提交于
      Commit b826291c, "drivercore/dt: add a match table pointer to struct
      device" added an of_match pointer to struct device to cache the
      of_match_table entry discovered at driver match time.  This was unsafe
      because matching is not an atomic operation with probing a driver.  If
      two or more drivers are attempted to be matched to a driver at the
      same time, then the cached matching entry pointer could get
      overwritten.
      
      This patch reverts the of_match cache pointer and reworks all users to
      call of_match_device() directly instead.
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      b1608d69
  2. 30 4月, 2011 2 次提交
  3. 02 4月, 2011 1 次提交
  4. 01 3月, 2011 1 次提交
  5. 17 12月, 2010 1 次提交
  6. 27 9月, 2010 1 次提交
  7. 26 8月, 2010 1 次提交
  8. 19 8月, 2010 1 次提交
  9. 06 8月, 2010 1 次提交
  10. 24 7月, 2010 1 次提交
  11. 29 6月, 2010 1 次提交
    • G
      sparc/of: Move of_device fields into struct pdev_archdata · 1636f8ac
      Grant Likely 提交于
      This patch moves SPARC architecture specific data members out of
      struct of_device and into the pdev_archdata structure.  The reason
      for this change is to unify the struct of_device definition amongst
      all the architectures.  It also remvoes the .sysdata, .slot, .portid
      and .clock_freq properties because they aren't actually used by
      anything.
      
      A subsequent patch will replace struct of_device entirely with struct
      platform_device and the of_platform support code will share common
      routines with the platform bus (but the bus instances themselves can
      remain separate).
      
      This patch also adds 'struct resources *resource' and num_resources
      to match the fields defined in struct platform_device.  After this
      change, 'struct platform_device' can be used as a drop-in replacement
      for 'struct of_platform'.
      
      This change is in preparation for merging the of_platform_bus_type
      with the platform_bus_type.
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      1636f8ac
  12. 22 5月, 2010 1 次提交
    • G
      of: Remove duplicate fields from of_platform_driver · 4018294b
      Grant Likely 提交于
      .name, .match_table and .owner are duplicated in both of_platform_driver
      and device_driver.  This patch is a removes the extra copies from struct
      of_platform_driver and converts all users to the device_driver members.
      
      This patch is a pretty mechanical change.  The usage model doesn't change
      and if any drivers have been missed, or if anything has been fixed up
      incorrectly, then it will fail with a compile time error, and the fixup
      will be trivial.  This patch looks big and scary because it touches so
      many files, but it should be pretty safe.
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      Acked-by: NSean MacLennan <smaclennan@pikatech.com>
      4018294b
  13. 19 5月, 2010 1 次提交
  14. 18 5月, 2010 1 次提交
  15. 14 5月, 2010 1 次提交
    • J
      drivers/net: Remove unnecessary returns from void function()s · a4b77097
      Joe Perches 提交于
      This patch removes from drivers/net/ all the unnecessary
      return; statements that precede the last closing brace of
      void functions.
      
      It does not remove the returns that are immediately
      preceded by a label as gcc doesn't like that.
      
      It also does not remove null void functions with return.
      
      Done via:
      $ grep -rP --include=*.[ch] -l "return;\n}" net/ | \
        xargs perl -i -e 'local $/ ; while (<>) { s/\n[ \t\n]+return;\n}/\n}/g; print; }'
      
      with some cleanups by hand.
      
      Compile tested x86 allmodconfig only.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a4b77097
  16. 10 5月, 2010 1 次提交
  17. 07 5月, 2010 1 次提交
  18. 04 4月, 2010 1 次提交
    • J
      net: convert multicast list to list_head · 22bedad3
      Jiri Pirko 提交于
      Converts the list and the core manipulating with it to be the same as uc_list.
      
      +uses two functions for adding/removing mc address (normal and "global"
       variant) instead of a function parameter.
      +removes dev_mcast.c completely.
      +exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for
       manipulation with lists on a sandbox (used in bonding and 80211 drivers)
      Signed-off-by: NJiri Pirko <jpirko@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      22bedad3
  19. 19 2月, 2010 1 次提交
  20. 13 2月, 2010 1 次提交
  21. 08 1月, 2010 1 次提交
  22. 04 12月, 2009 1 次提交
  23. 03 12月, 2009 1 次提交
    • M
      sunhme: fix dma warning in Sun HME · ff236f7a
      Mikulas Patocka 提交于
      Fix dma-api-checking warnings in Sun HME
      
      Sun HME driver is mapping the first fragment with dma_map_single and subsequent
      fragments with dma_map_page. It is unmapping all fragments with dma_unmap_single
      and that produces the warning.
      
      This patch changes it so that it unmaps only the first fragment with
      dma_unmap_single and subsequent fragments are unmapped with dma_unmap_page.
      
      WARNING: at lib/dma-debug.c:816 check_unmap+0x3ac/0x780()
      hme 0000:01:01.1: DMA-API: device driver frees DMA memory with wrong function [device address=0x00000000c1082000] [size=32 bytes] [mapped as page] [unmapped as single]
      Modules linked in: nbd sunhme openpromfs sermouse unix
      Call Trace:
       [0000000000456910] warn_slowpath_common+0x50/0xa0
       [0000000000571f4c] check_unmap+0x3ac/0x780
       [0000000000572570] debug_dma_unmap_page+0x50/0x60
       [000000001002f5fc] happy_meal_tx+0x11c/0x260 [sunhme]
       [000000001002fc4c] happy_meal_interrupt+0xcc/0xe0 [sunhme]
       [0000000000492d94] handle_fasteoi_irq+0x74/0x100
       [000000000042ac0c] handler_irq+0xcc/0x100
       [0000000000426a54] valid_addr_bitmap_patch+0x14/0x1c0
       [0000000000665de0] _spin_unlock_irqrestore+0x40/0x60
       [0000000000462bb8] mod_timer+0x118/0x1a0
       [00000000005ec254] sk_reset_timer+0x14/0x40
       [0000000000635e4c] tcp_event_new_data_sent+0x8c/0xc0
       [0000000000639374] __tcp_push_pending_frames+0x34/0xc0
      ---[ end trace 73d5c42c1e9f11c4 ]---
      Mapped at:
       [<000000001002f148>] happy_meal_start_xmit+0x308/0x480 [sunhme]
       [<00000000005fc858>] dev_hard_start_xmit+0x318/0x3c0
       [<000000000060fec4>] sch_direct_xmit+0x1a4/0x200
       [<00000000005fced0>] dev_queue_xmit+0x410/0x560
       [<0000000000604a1c>] neigh_resolve_output+0xfc/0x300
      Signed-off-by: NMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ff236f7a
  24. 19 11月, 2009 1 次提交
  25. 01 9月, 2009 1 次提交
  26. 06 7月, 2009 1 次提交
  27. 13 6月, 2009 1 次提交
  28. 09 3月, 2009 1 次提交
  29. 11 2月, 2009 1 次提交
    • M
      sunhme: Fix Quattro HME irq registration on proble failures · 7b7a799d
      Meelis Roos 提交于
      Currently, the sunhme driver installs SBus Quattro interrupt handler 
      when at least one HME card was initialized correctly and at least one 
      Quattro card is present. This breaks when a Quattro card fails 
      initialization for whatever reason - IRQ is registered and OOPS happens 
      when it fires.
      
      The solution, as suggested by David Miller, was to keep track which 
      cards of the Quattro bundles have been initialized, and request/free the 
      Quattro IRQ only when all four devices have been successfully 
      initialized.
      
      The patch only touches SBus initialization - PCI init already resets the 
      card pointer to NULL on init failure.
      
      The patch has been tested on Sun E3500 with SBus and PCI single HME 
      cards and one PCI Quattro HME card in a situation where any PCI card 
      failed init when the SBus routines tried to init them by mistake.
      
      Additionally it replaces Quattro request_irq panic with error return - 
      if this card fails to work, at least let the others work.
      
      Tested on E450 with PCI HME and PCI Quad HME.
      
      [ Minor coding style fixups -DaveM ]
      Signed-off-by: NMeelis Roos <mroos@linux.ee>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7b7a799d
  30. 07 2月, 2009 1 次提交
  31. 08 1月, 2009 1 次提交
  32. 13 11月, 2008 1 次提交
    • W
      netdevice: safe convert to netdev_priv() #part-3 · 8f15ea42
      Wang Chen 提交于
      We have some reasons to kill netdev->priv:
      1. netdev->priv is equal to netdev_priv().
      2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously
         netdev_priv() is more flexible than netdev->priv.
      But we cann't kill netdev->priv, because so many drivers reference to it
      directly.
      
      This patch is a safe convert for netdev->priv to netdev_priv(netdev).
      Since all of the netdev->priv is only for read.
      But it is too big to be sent in one mail.
      I split it to 4 parts and make every part smaller than 100,000 bytes,
      which is max size allowed by vger.
      Signed-off-by: NWang Chen <wangchen@cn.fujitsu.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8f15ea42
  33. 04 11月, 2008 1 次提交
  34. 28 10月, 2008 1 次提交
  35. 31 8月, 2008 1 次提交
  36. 29 8月, 2008 4 次提交