1. 12 2月, 2007 1 次提交
    • C
      [PATCH] Set CONFIG_ZONE_DMA for arches with GENERIC_ISA_DMA · 5ac6da66
      Christoph Lameter 提交于
      As Andi pointed out: CONFIG_GENERIC_ISA_DMA only disables the ISA DMA
      channel management.  Other functionality may still expect GFP_DMA to
      provide memory below 16M.  So we need to make sure that CONFIG_ZONE_DMA is
      set independent of CONFIG_GENERIC_ISA_DMA.  Undo the modifications to
      mm/Kconfig where we made ZONE_DMA dependent on GENERIC_ISA_DMA and set
      theses explicitly in each arches Kconfig.
      
      Reviews must occur for each arch in order to determine if ZONE_DMA can be
      switched off.  It can only be switched off if we know that all devices
      supported by a platform are capable of performing DMA transfers to all of
      memory (Some arches already support this: uml, avr32, sh sh64, parisc and
      IA64/Altix).
      
      In order to switch ZONE_DMA off conditionally, one would have to establish
      a scheme by which one can assure that no drivers are enabled that are only
      capable of doing I/O to a part of memory, or one needs to provide an
      alternate means of performing an allocation from a specific range of memory
      (like provided by alloc_pages_range()) and insure that all drivers use that
      call.  In that case the arches alloc_dma_coherent() may need to be modified
      to call alloc_pages_range() instead of relying on GFP_DMA.
      Signed-off-by: NChristoph Lameter <clameter@sgi.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5ac6da66
  2. 08 2月, 2007 3 次提交
  3. 07 2月, 2007 5 次提交
  4. 28 1月, 2007 1 次提交
  5. 27 1月, 2007 1 次提交
    • D
      Fix Maple PATA IRQ assignment. · 8cdf92a9
      David Woodhouse 提交于
      On the Maple board, the AMD8111 IDE is in legacy mode... except that it
      appears on IRQ 20 instead of IRQ 15. For drivers/ide this was handled by
      the architecture's "pci_get_legacy_ide_irq()" function, but in libata we
      just hard-code the numbers 14 and 15.
      
      This patch provides asm-powerpc/libata-portmap.h which maps the IRQ as
      appropriate, having added a pci_dev argument to the
      ATA_{PRIM,SECOND}ARY_IRQ macros.
      
      There's probably a better way to do this -- especially if we observe
      that the _only_ case in which this seemingly-generic
      "pci_get_legacy_ide_irq()" function returns anything other than 14 and
      15 for primary and secondary respectively is the case of the AMD8111 on
      the Maple board -- couldn't we handle that with a special case in the
      pata_amd driver, or perhaps with a PCI quirk for Maple to switch it into
      native mode during early boot and assign resources properly?
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      8cdf92a9
  6. 26 1月, 2007 1 次提交
  7. 09 1月, 2007 1 次提交
  8. 11 12月, 2006 1 次提交
    • J
      [POWERPC] Generic BUG for powerpc · 73c9ceab
      Jeremy Fitzhardinge 提交于
      This makes powerpc use the generic BUG machinery.  The biggest reports the
      function name, since it is redundant with kallsyms, and not needed in general.
      
      There is an overall reduction of code, since module_32/64 duplicated several
      functions.
      
      Unfortunately there's no way to tell gcc that BUG won't return, so the BUG
      macro includes a goto loop.  This will generate a real jmp instruction, which
      is never used.
      
      [akpm@osdl.org: build fix]
      [paulus@samba.org: remove infinite loop in BUG_ON]
      Signed-off-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Hugh Dickens <hugh@veritas.com>
      Cc: Michael Ellerman <michael@ellerman.id.au>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      73c9ceab
  9. 09 12月, 2006 2 次提交
    • D
      [PATCH] LOG2: Provide ilog2() fallbacks for powerpc · ef55d53c
      David Howells 提交于
      Provide ilog2() fallbacks for powerpc for 32-bit numbers and 64-bit numbers on
      ppc64.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      ef55d53c
    • D
      [PATCH] LOG2: Implement a general integer log2 facility in the kernel · f0d1b0b3
      David Howells 提交于
      This facility provides three entry points:
      
      	ilog2()		Log base 2 of unsigned long
      	ilog2_u32()	Log base 2 of u32
      	ilog2_u64()	Log base 2 of u64
      
      These facilities can either be used inside functions on dynamic data:
      
      	int do_something(long q)
      	{
      		...;
      		y = ilog2(x)
      		...;
      	}
      
      Or can be used to statically initialise global variables with constant values:
      
      	unsigned n = ilog2(27);
      
      When performing static initialisation, the compiler will report "error:
      initializer element is not constant" if asked to take a log of zero or of
      something not reducible to a constant.  They treat negative numbers as
      unsigned.
      
      When not dealing with a constant, they fall back to using fls() which permits
      them to use arch-specific log calculation instructions - such as BSR on
      x86/x86_64 or SCAN on FRV - if available.
      
      [akpm@osdl.org: MMC fix]
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Herbert Xu <herbert@gondor.apana.org.au>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Wojtek Kaniewski <wojtekka@toxygen.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f0d1b0b3
  10. 08 12月, 2006 2 次提交
  11. 05 12月, 2006 1 次提交
  12. 04 12月, 2006 11 次提交
  13. 30 11月, 2006 1 次提交
  14. 13 11月, 2006 1 次提交
  15. 10 11月, 2006 1 次提交
  16. 22 10月, 2006 1 次提交
  17. 16 10月, 2006 1 次提交
  18. 04 10月, 2006 3 次提交
    • L
      [POWERPC] Add QUICC Engine (QE) infrastructure · 98658538
      Li Yang 提交于
      Add QUICC Engine (QE) configuration, header files, and
      QE management and library code that are used by QE devices
      drivers.
      
      Includes Leo's modifications up to, and including, the
      platform_device to of_device adaptation:
      
      "The series of patches add generic QE infrastructure called
      qe_lib, and MPC8360EMDS board support.  Qe_lib is used by
      QE device drivers such as ucc_geth driver.
      
      This version updates QE interrupt controller to use new irq
      mapping mechanism, addresses all the comments received with
      last submission and includes some style fixes.
      
      v2: Change to use device tree for BCSR and MURAM;
      Remove I/O port interrupt handling code as it is not generic
      enough.
      
      v3: Address comments from Kumar;  Update definition of several
      device tree nodes;  Copyright style change."
      
      In addition, the following changes have been made:
      
      o removed typedefs
      o uint -> u32 conversions
      o removed following defines:
        QE_SIZEOF_BD, BD_BUFFER_ARG, BD_BUFFER_CLEAR, BD_BUFFER,
        BD_STATUS_AND_LENGTH_SET, BD_STATUS_AND_LENGTH, and BD_BUFFER_SET
        because they hid sizeof/in_be32/out_be32 operations from the reader.
      o fixed qe_snums_init() serial num assignment to use a const array
      o made CONFIG_UCC_FAST select UCC_SLOW
      o reduced NR_QE_IC_INTS from 128 to 64
      o remove _IO_BASE, etc. defines (not used)
      o removed irrelevant comments, added others to resemble removed BD_ defines
      o realigned struct definitions in headers
      o various other style fixes including things like pinMask -> pin_mask
      o fixed a ton of whitespace issues
      o marked ioregs as __be32/__be16
      o removed platform_device code and redundant get_qe_base()
      o removed redundant comments
      o added cpu_relax() to qe_reset
      o uncasted all get_property() assignments
      o eliminated unneeded casts
      o eliminated immrbar_phys_to_virt (not used)
      Signed-off-by: NLi Yang <leoli@freescale.com>
      Signed-off-by: NShlomi Gridish <gridish@freescale.com>
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      98658538
    • M
      Attack of "the the"s in arch · 4b3f686d
      Matt LaPlante 提交于
      The patch below corrects multiple occurances of "the the"
      typos across several files, both in source comments and KConfig files.
      There is no actual code changed, only text.  Note this only affects the /arch
      directory, and I believe I could find many more elsewhere. :)
      Signed-off-by: NAdrian Bunk <bunk@stusta.de>
      4b3f686d
    • V
      POWERPC: 8272ads merge to powerpc: common stuff · ed943c1f
      Vitaly Bordug 提交于
      This has modules of common directories related to the
      mpc8272ADS board, mainly common cpm2 changes and fsl_soc.c
      portions related to the bitbang MDIO and other mechanisms specific
      for this family.
      Signed-off-by: NVitaly Bordug <vbordug@ru.mvista.com>
      ed943c1f
  19. 03 10月, 2006 1 次提交
  20. 02 10月, 2006 1 次提交
    • A
      [PATCH] Kprobes: Make kprobe modules more portable · 3a872d89
      Ananth N Mavinakayanahalli 提交于
      In an effort to make kprobe modules more portable, here is a patch that:
      
      o Introduces the "symbol_name" field to struct kprobe.
        The symbol->address resolution now happens in the kernel in an
        architecture agnostic manner. 64-bit powerpc users no longer have
        to specify the ".symbols"
      o Introduces the "offset" field to struct kprobe to allow a user to
        specify an offset into a symbol.
      o The legacy mechanism of specifying the kprobe.addr is still supported.
        However, if both the kprobe.addr and kprobe.symbol_name are specified,
        probe registration fails with an -EINVAL.
      o The symbol resolution code uses kallsyms_lookup_name(). So
        CONFIG_KPROBES now depends on CONFIG_KALLSYMS
      o Apparantly kprobe modules were the only legitimate out-of-tree user of
        the kallsyms_lookup_name() EXPORT. Now that the symbol resolution
        happens in-kernel, remove the EXPORT as suggested by Christoph Hellwig
      o Modify tcp_probe.c that uses the kprobe interface so as to make it
        work on multiple platforms (in its earlier form, the code wouldn't
        work, say, on powerpc)
      Signed-off-by: NAnanth N Mavinakayanahalli <ananth@in.ibm.com>
      Signed-off-by: NPrasanna S Panchamukhi <prasanna@in.ibm.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      3a872d89