1. 27 3月, 2009 1 次提交
  2. 25 3月, 2009 1 次提交
  3. 16 3月, 2009 1 次提交
    • N
      [ARM] make page_to_dma() highmem aware · 58edb515
      Nicolas Pitre 提交于
      If a machine class has a custom __virt_to_bus() implementation then it
      must provide a __arch_page_to_dma() implementation as well which is
      _not_ based on page_address() to support highmem.
      
      This patch fixes existing __arch_page_to_dma() and provide a default
      implementation otherwise.  The default implementation for highmem is
      based on __pfn_to_bus() which is defined only when no custom
      __virt_to_bus() is provided by the machine class.
      
      That leaves only ebsa110 and footbridge which cannot support highmem
      until they provide their own __arch_page_to_dma() implementation.
      But highmem support on those legacy platforms with limited memory is
      certainly not a priority.
      Signed-off-by: NNicolas Pitre <nico@marvell.com>
      58edb515
  4. 09 3月, 2009 1 次提交
    • E
      [ARM] pxa: separate definitions from pxa-regs.h and remove it finally · 5bf3df3f
      Eric Miao 提交于
      The remaining registers are separated into:
      
         - <mach/regs-ost.h>
         - <mach/regs-rtc.h>
         - <mach/regs-intc.h>
      
      and then we can remove pxa-regs.h completely. Instead of #include this
      file, let's:
      
      1. include the specific <mach/regs-*.h> with care (if that's absolutely
         necessary)
      
      2. define the registers in the driver, make cleanly defined API to expose
         the register access to external with sufficient reason
      Signed-off-by: NEric Miao <eric.miao@marvell.com>
      5bf3df3f
  5. 24 1月, 2009 1 次提交
    • R
      [ARM] clkdev: fix clock matching · 409dc360
      Russell King 提交于
      The old matching algorithm was too fuzzy, causing false positives.
      For example, when asked for device D connection C1 and we only find
      device D connection C2, we return that as a valid match despite the
      connection names being different.
      
      Change the algorithm such that:
        An entry with a NULL ID is assumed to be a wildcard.
        If an entry has a device ID, it must match
        If an entry has a connection ID, it must match
      
      However, we maintain the order of precidence while still only doing
      a single pass over all entries: dev+con > dev only > con only.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      409dc360
  6. 16 12月, 2008 1 次提交
  7. 14 12月, 2008 1 次提交
  8. 13 12月, 2008 1 次提交
  9. 02 12月, 2008 1 次提交
  10. 27 11月, 2008 1 次提交
  11. 30 10月, 2008 1 次提交
  12. 22 10月, 2008 1 次提交
  13. 17 10月, 2008 2 次提交
  14. 10 10月, 2008 1 次提交
    • N
      [ARM] 5295/1: make ZONE_DMA optional · 3bca103a
      Nicolas Pitre 提交于
      Most ARM machines don't need a special "DMA" memory zone, and
      when configured out, the kernel becomes a bit smaller:
      
      |   text    data     bss     dec     hex filename
      |3826182  102384  111700 4040266  3da64a vmlinux
      |3823593  101616  111700 4036909  3d992d vmlinux.nodmazone
      
      This is because the system now has only one zone total which effect is
      to optimize away many conditionals in page allocation paths.
      
      So let's configure this zone only on machines that need split zones.
      Signed-off-by: NNicolas Pitre <nico@marvell.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      3bca103a
  15. 09 10月, 2008 1 次提交
  16. 03 10月, 2008 1 次提交
  17. 29 9月, 2008 5 次提交
  18. 26 9月, 2008 3 次提交
  19. 06 9月, 2008 1 次提交
  20. 10 8月, 2008 2 次提交
  21. 07 8月, 2008 3 次提交
  22. 27 7月, 2008 2 次提交
    • D
      [ARM] 5179/1: Replace obsolete IRQT_* and __IRQT_* values with IRQ_TYPE_* · 6cab4860
      Dmitry Baryshkov 提交于
      IRQT_* and __IRQT_* were obsoleted long ago by patch [3692/1].
      Remove them completely. Sed script for the reference:
      
      s/__IRQT_RISEDGE/IRQ_TYPE_EDGE_RISING/g
      s/__IRQT_FALEDGE/IRQ_TYPE_EDGE_FALLING/g
      s/__IRQT_LOWLVL/IRQ_TYPE_LEVEL_LOW/g
      s/__IRQT_HIGHLVL/IRQ_TYPE_LEVEL_HIGH/g
      s/IRQT_RISING/IRQ_TYPE_EDGE_RISING/g
      s/IRQT_FALLING/IRQ_TYPE_EDGE_FALLING/g
      s/IRQT_BOTHEDGE/IRQ_TYPE_EDGE_BOTH/g
      s/IRQT_LOW/IRQ_TYPE_LEVEL_LOW/g
      s/IRQT_HIGH/IRQ_TYPE_LEVEL_HIGH/g
      s/IRQT_PROBE/IRQ_TYPE_PROBE/g
      s/IRQT_NOEDGE/IRQ_TYPE_NONE/g
      Signed-off-by: NDmitry Baryshkov <dbaryshkov@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      6cab4860
    • 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
  23. 22 7月, 2008 2 次提交
  24. 10 7月, 2008 1 次提交
  25. 22 6月, 2008 1 次提交
  26. 03 6月, 2008 1 次提交
  27. 22 5月, 2008 1 次提交
  28. 19 5月, 2008 1 次提交
    • R
      [ARM] pxa: corgibl_limit_intensity build errors · 02a8e769
      Russell King 提交于
      If CONFIG_BACKLIGHT_CORGI is not selected, then corgibl_limit_intensity()
      is not present.  However, both corgi_pm.c and sharp_pm.c reference this
      symbol, resulting in a link error.
      
      Wrap the references with the relevant ifdefs, and avoid the resulting
      NULL pointer dereference by making the code in sharpsl_pm.c also
      conditional on the config symbol.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      02a8e769