1. 24 10月, 2013 1 次提交
    • G
      of/irq: Rename of_irq_map_* functions to of_irq_parse_* · 0c02c800
      Grant Likely 提交于
      The OF irq handling code has been overloading the term 'map' to refer to
      both parsing the data in the device tree and mapping it to the internal
      linux irq system. This is probably because the device tree does have the
      concept of an 'interrupt-map' function for translating interrupt
      references from one node to another, but 'map' is still confusing when
      the primary purpose of some of the functions are to parse the DT data.
      
      This patch renames all the of_irq_map_* functions to of_irq_parse_*
      which makes it clear that there is a difference between the parsing
      phase and the mapping phase. Kernel code can make use of just the
      parsing or just the mapping support as needed by the subsystem.
      
      The patch was generated mechanically with a handful of sed commands.
      Signed-off-by: NGrant Likely <grant.likely@linaro.org>
      Acked-by: NMichal Simek <monstr@monstr.eu>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      0c02c800
  2. 01 11月, 2011 1 次提交
  3. 10 6月, 2011 1 次提交
  4. 30 3月, 2010 1 次提交
    • T
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking... · 5a0e3ad6
      Tejun Heo 提交于
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
      
      percpu.h is included by sched.h and module.h and thus ends up being
      included when building most .c files.  percpu.h includes slab.h which
      in turn includes gfp.h making everything defined by the two files
      universally available and complicating inclusion dependencies.
      
      percpu.h -> slab.h dependency is about to be removed.  Prepare for
      this change by updating users of gfp and slab facilities include those
      headers directly instead of assuming availability.  As this conversion
      needs to touch large number of source files, the following script is
      used as the basis of conversion.
      
        http://userweb.kernel.org/~tj/misc/slabh-sweep.py
      
      The script does the followings.
      
      * Scan files for gfp and slab usages and update includes such that
        only the necessary includes are there.  ie. if only gfp is used,
        gfp.h, if slab is used, slab.h.
      
      * When the script inserts a new include, it looks at the include
        blocks and try to put the new include such that its order conforms
        to its surrounding.  It's put in the include block which contains
        core kernel includes, in the same order that the rest are ordered -
        alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
        doesn't seem to be any matching order.
      
      * If the script can't find a place to put a new include (mostly
        because the file doesn't have fitting include block), it prints out
        an error message indicating which .h file needs to be added to the
        file.
      
      The conversion was done in the following steps.
      
      1. The initial automatic conversion of all .c files updated slightly
         over 4000 files, deleting around 700 includes and adding ~480 gfp.h
         and ~3000 slab.h inclusions.  The script emitted errors for ~400
         files.
      
      2. Each error was manually checked.  Some didn't need the inclusion,
         some needed manual addition while adding it to implementation .h or
         embedding .c file was more appropriate for others.  This step added
         inclusions to around 150 files.
      
      3. The script was run again and the output was compared to the edits
         from #2 to make sure no file was left behind.
      
      4. Several build tests were done and a couple of problems were fixed.
         e.g. lib/decompress_*.c used malloc/free() wrappers around slab
         APIs requiring slab.h to be added manually.
      
      5. The script was run on all .h files but without automatically
         editing them as sprinkling gfp.h and slab.h inclusions around .h
         files could easily lead to inclusion dependency hell.  Most gfp.h
         inclusion directives were ignored as stuff from gfp.h was usually
         wildly available and often used in preprocessor macros.  Each
         slab.h inclusion directive was examined and added manually as
         necessary.
      
      6. percpu.h was updated not to include slab.h.
      
      7. Build test were done on the following configurations and failures
         were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my
         distributed build env didn't work with gcov compiles) and a few
         more options had to be turned off depending on archs to make things
         build (like ipr on powerpc/64 which failed due to missing writeq).
      
         * x86 and x86_64 UP and SMP allmodconfig and a custom test config.
         * powerpc and powerpc64 SMP allmodconfig
         * sparc and sparc64 SMP allmodconfig
         * ia64 SMP allmodconfig
         * s390 SMP allmodconfig
         * alpha SMP allmodconfig
         * um on x86_64 SMP allmodconfig
      
      8. percpu.h modifications were reverted so that it could be applied as
         a separate patch and serve as bisection point.
      
      Given the fact that I had only a couple of failures from tests on step
      6, I'm fairly confident about the coverage of this conversion patch.
      If there is a breakage, it's likely to be something in one of the arch
      headers which should be easily discoverable easily on most builds of
      the specific arch.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Guess-its-ok-by: NChristoph Lameter <cl@linux-foundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
      5a0e3ad6
  5. 29 1月, 2010 1 次提交
  6. 01 4月, 2008 1 次提交
  7. 21 12月, 2007 1 次提交
    • M
      [POWERPC] cell: wrap master run control bit · c25620d7
      Masato Noguchi 提交于
      Add platform specific SPU run control routines to the spufs.  The current
      spufs implementation uses the SPU master run control bit (MFC_SR1[S]) to
      control SPE execution, but the PS3 hypervisor does not support the use of
      this feature.
      
      This change adds the run control wrapper routies spu_enable_spu() and
      spu_disable_spu().  The bare metal routines use the master run control
      bit, and the PS3 specific routines use the priv2 run control register.
      
      An outstanding enhancement for the PS3 would be to add a guard to check
      for incorrect access to the spu problem state when the spu context is
      disabled.  This check could be implemented with a flag added to the spu
      context that would inhibit mapping problem state pages, and a routine
      to unmap spu problem state pages.  When the spu is enabled with
      ps3_enable_spu() the flag would be set allowing pages to be mapped,
      and when the spu is disabled with ps3_disable_spu() the flag would be
      cleared and mapped problem state pages would be unmapped.
      Signed-off-by: NMasato Noguchi <Masato.Noguchi@jp.sony.com>
      Signed-off-by: NGeoff Levand <geoffrey.levand@am.sony.com>
      Signed-off-by: NJeremy Kerr <jk@ozlabs.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c25620d7
  8. 19 12月, 2007 2 次提交
  9. 22 9月, 2007 1 次提交
  10. 30 8月, 2007 1 次提交
    • C
      [POWERPC] spu_manage: fix spu_unit_number for celleb device tree · aac2e684
      Christian Krafft 提交于
      This fixes a regression introduced with 2.6.23-rc4 after on some
      confusion about the device tree interfaces.
      
      IBM QS21 device trees provide "physical-id", so we changed the code to
      run on that and remain compatible with all IBM machines.
      
      However, the Toshiba Celleb device tree provides the "unit-id" property,
      which was in the Linux code, but never used in this way on IBM hardware.
      
      Legacy device tree used the reg property for the physical id of an spe.
      This patch fixes find_spu_unit_number to look for the spu id in that order.
      The length is checked to avoid misinterpretation in case the attributes
      unit-id or reg do not contain the id.
      Signed-off-by: NChristian Krafft <krafft@de.ibm.com>
      Signed-off-by: NArnd Bergmann <arnd.bergmann@de.ibm.com>
      Cc: Jeremy Kerr <jk@ozlabs.org>
      aac2e684
  11. 25 8月, 2007 1 次提交
  12. 10 8月, 2007 1 次提交
  13. 18 7月, 2007 1 次提交
  14. 13 4月, 2007 1 次提交
  15. 13 2月, 2007 1 次提交
  16. 07 2月, 2007 1 次提交
  17. 19 12月, 2006 2 次提交
  18. 04 12月, 2006 1 次提交
    • G
      [POWERPC] cell: abstract spu management routines · e28b0031
      Geoff Levand 提交于
      This adds a platform specific spu management abstraction and the coresponding
      routines to support the IBM Cell Blade.  It also removes the hypervisor only
      resources that were included in struct spu.
      
      Three new platform specific routines are introduced, spu_enumerate_spus(),
      spu_create_spu() and spu_destroy_spu().  The underlying design uses a new
      type, struct spu_management_ops, to hold function pointers that the platform
      setup code is expected to initialize to instances appropriate to that platform.
      
      For the IBM Cell Blade support, I put the hypervisor only resources that were
      in struct spu into a platform specific data structure struct spu_pdata.
      Signed-off-by: NGeoff Levand <geoffrey.levand@am.sony.com>
      Signed-off-by: NArnd Bergmann <arnd.bergmann@de.ibm.com>
      e28b0031
  19. 25 10月, 2006 1 次提交
  20. 21 6月, 2006 3 次提交
  21. 09 1月, 2006 1 次提交
    • A
      [PATCH] spufs: abstract priv1 register access. · f0831acc
      Arnd Bergmann 提交于
      In a hypervisor based setup, direct access to the first
      priviledged register space can typically not be allowed
      to the kernel and has to be implemented through hypervisor
      calls.
      
      As suggested by Masato Noguchi, let's abstract the register
      access trough a number of function calls. Since there is
      currently no public specification of actual hypervisor
      calls to implement this, I only provide a place that
      makes it easier to hook into.
      
      Cc: Masato Noguchi <Masato.Noguchi@jp.sony.com>
      Cc: Geoff Levand <geoff.levand@am.sony.com>
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f0831acc