1. 27 4月, 2010 1 次提交
    • J
      ssb: do not read SPROM if it does not exist · d53cdbb9
      John W. Linville 提交于
      Attempting to read registers that don't exist on the SSB bus can cause
      hangs on some boxes.  At least some b43 devices are 'in the wild' that
      don't have SPROMs at all.  When the SSB bus support loads, it attempts
      to read these (non-existant) SPROMs and causes hard hangs on the box --
      no console output, etc.
      
      This patch adds some intelligence to determine whether or not the SPROM
      is present before attempting to read it.  This avoids those hard hangs
      on those devices with no SPROM attached to their SSB bus.  The
      SSB-attached devices (e.g. b43, et al.) won't work, but at least the box
      will survive to test further patches. :-)
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
      Cc: Larry Finger <Larry.Finger@lwfinger.net>
      Cc: Michael Buesch <mb@bu3sch.de>
      d53cdbb9
  2. 28 10月, 2009 1 次提交
  3. 09 9月, 2009 1 次提交
  4. 29 8月, 2009 1 次提交
  5. 14 8月, 2009 1 次提交
  6. 06 3月, 2009 1 次提交
  7. 10 2月, 2009 1 次提交
  8. 30 1月, 2009 1 次提交
  9. 11 11月, 2008 1 次提交
  10. 30 8月, 2008 2 次提交
  11. 27 7月, 2008 1 次提交
    • F
      dma-mapping: add the device argument to dma_mapping_error() · 8d8bb39b
      FUJITA Tomonori 提交于
      Add per-device dma_mapping_ops support for CONFIG_X86_64 as POWER
      architecture does:
      
      This enables us to cleanly fix the Calgary IOMMU issue that some devices
      are not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).
      
      I think that per-device dma_mapping_ops support would be also helpful for
      KVM people to support PCI passthrough but Andi thinks that this makes it
      difficult to support the PCI passthrough (see the above thread).  So I
      CC'ed this to KVM camp.  Comments are appreciated.
      
      A pointer to dma_mapping_ops to struct dev_archdata is added.  If the
      pointer is non NULL, DMA operations in asm/dma-mapping.h use it.  If it's
      NULL, the system-wide dma_ops pointer is used as before.
      
      If it's useful for KVM people, I plan to implement a mechanism to register
      a hook called when a new pci (or dma capable) device is created (it works
      with hot plugging).  It enables IOMMUs to set up an appropriate
      dma_mapping_ops per device.
      
      The major obstacle is that dma_mapping_error doesn't take a pointer to the
      device unlike other DMA operations.  So x86 can't have dma_mapping_ops per
      device.  Note all the POWER IOMMUs use the same dma_mapping_error function
      so this is not a problem for POWER but x86 IOMMUs use different
      dma_mapping_error functions.
      
      The first patch adds the device argument to dma_mapping_error.  The patch
      is trivial but large since it touches lots of drivers and dma-mapping.h in
      all the architecture.
      
      This patch:
      
      dma_mapping_error() doesn't take a pointer to the device unlike other DMA
      operations.  So we can't have dma_mapping_ops per device.
      
      Note that POWER already has dma_mapping_ops per device but all the POWER
      IOMMUs use the same dma_mapping_error function.  x86 IOMMUs use device
      argument.
      
      [akpm@linux-foundation.org: fix sge]
      [akpm@linux-foundation.org: fix svc_rdma]
      [akpm@linux-foundation.org: build fix]
      [akpm@linux-foundation.org: fix bnx2x]
      [akpm@linux-foundation.org: fix s2io]
      [akpm@linux-foundation.org: fix pasemi_mac]
      [akpm@linux-foundation.org: fix sdhci]
      [akpm@linux-foundation.org: build fix]
      [akpm@linux-foundation.org: fix sparc]
      [akpm@linux-foundation.org: fix ibmvscsi]
      Signed-off-by: NFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Cc: Muli Ben-Yehuda <muli@il.ibm.com>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Avi Kivity <avi@qumranet.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8d8bb39b
  12. 15 7月, 2008 1 次提交
  13. 27 6月, 2008 1 次提交
  14. 10 6月, 2008 1 次提交
  15. 16 4月, 2008 1 次提交
    • M
      ssb: Fix usage of struct device used for DMAing · 4ac58469
      Michael Buesch 提交于
      This fixes DMA on architectures where DMA is nontrivial, like PPC64.
      We must use the host-device's (PCI) struct device for any DMA
      operation instead of the SSB device. For this we add a new
      struct device pointer to the SSB device structure that will always
      point to the right device for DMAing.
      
      Without this patch b43 and b44 drivers won't work on complex-DMA
      architectures, that for example need dev->archdata for DMA operations.
      Signed-off-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      4ac58469
  16. 09 4月, 2008 2 次提交
  17. 14 3月, 2008 1 次提交
  18. 07 3月, 2008 1 次提交
  19. 01 3月, 2008 2 次提交
  20. 21 2月, 2008 5 次提交
  21. 06 2月, 2008 1 次提交
  22. 29 1月, 2008 7 次提交
  23. 11 10月, 2007 1 次提交