1. 14 2月, 2007 2 次提交
  2. 07 2月, 2007 1 次提交
  3. 24 1月, 2007 1 次提交
  4. 04 12月, 2006 2 次提交
    • A
      [POWERPC] ps3: multiplatform build fixes · e22ba7e3
      Arnd Bergmann 提交于
      A few code paths need to check whether or not they are running
      on the PS3's LV1 hypervisor before making hcalls. This introduces
      a new firmware feature bit for this, FW_FEATURE_PS3_LV1.
      
      Now when both PS3 and IBM_CELL_BLADE are enabled, but not PSERIES,
      FW_FEATURE_PS3_LV1 and FW_FEATURE_LPAR get enabled at compile time,
      which is a bug. The same problem can also happen for (PPC_ISERIES &&
      !PPC_PSERIES && PPC_SOMETHING_ELSE). In order to solve this, I
      introduce a new CONFIG_PPC_NATIVE option that is set when at least
      one platform is selected that can run without a hypervisor and then
      turns the firmware feature check into a run-time option.
      
      The new cell oprofile support that was recently merged does not
      work on hypervisor based platforms like the PS3, therefore make
      it depend on PPC_CELL_NATIVE instead of PPC_CELL. This may change
      if we get oprofile support for PS3.
      Signed-off-by: NArnd Bergmann <arnd.bergmann@de.ibm.com>
      e22ba7e3
    • M
      [POWERPC] cell: Add oprofile support · 18f2190d
      Maynard Johnson 提交于
      Add PPU event-based and cycle-based profiling support to Oprofile for Cell.
      
      Oprofile is expected to collect data on all CPUs simultaneously.
      However, there is one set of performance counters per node.  There are
      two hardware threads or virtual CPUs on each node.  Hence, OProfile must
      multiplex in time the performance counter collection on the two virtual
      CPUs.
      
      The multiplexing of the performance counters is done by a virtual
      counter routine.  Initially, the counters are configured to collect data
      on the even CPUs in the system, one CPU per node.  In order to capture
      the PC for the virtual CPU when the performance counter interrupt occurs
      (the specified number of events between samples has occurred), the even
      processors are configured to handle the performance counter interrupts
      for their node.  The virtual counter routine is called via a kernel
      timer after the virtual sample time.  The routine stops the counters,
      saves the current counts, loads the last counts for the other virtual
      CPU on the node, sets interrupts to be handled by the other virtual CPU
      and restarts the counters, the virtual timer routine is scheduled to run
      again.  The virtual sample time is kept relatively small to make sure
      sampling occurs on both CPUs on the node with a relatively small
      granularity.  Whenever the counters overflow, the performance counter
      interrupt is called to collect the PC for the CPU where data is being
      collected.
      
      The oprofile driver relies on a firmware RTAS call to setup the debug bus
      to route the desired signals to the performance counter hardware to be
      counted.  The RTAS call must set the routing registers appropriately in
      each of the islands to pass the signals down the debug bus as well as
      routing the signals from a particular island onto the bus.  There is a
      second firmware RTAS call to reset the debug bus to the non pass thru
      state when the counters are not in use.
      Signed-off-by: NCarl Love <carll@us.ibm.com>
      Signed-off-by: NMaynard Johnson <mpjohn@us.ibm.com>
      Signed-off-by: NArnd Bergmann <arnd.bergmann@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      18f2190d
  5. 01 11月, 2006 1 次提交
    • A
      [POWERPC] Fix oprofile support for e500 in arch/powerpc · dd6c89f6
      Andy Fleming 提交于
      Fixed a compile error in building the 85xx support with oprofile, and in
      the process cleaned up some issues with the fsl_booke performance monitor
      code.
      
      * Reorganized FSL Book-E performance monitoring code so that the 7450
        wouldn't be built if the e500 was, and cleaned it up so it was more
        self-contained.
      
      * Added a cpu_setup function for FSL Book-E.  The original
        cpu_setup function prototype had no arguments, assuming that
        the reg_setup function would copy the required information into
        variables which represented the registers.  This was silly for
        e500, since it has 1 register per counter (rather than 3 for
        all counters), so the code has been restructured to have
        cpu_setup take the current counter config array as an argument,
        with op_powerpc_setup() invoking op_powerpc_cpu_setup() through
        on_each_cpu(), and op_powerpc_cpu_setup() invoking the
        model-specific cpu_setup function with an argument.  The
        argument is ignored on all other platforms at present.
      
      * Fixed a confusing line where a trinary operator only had two
        arguments
      Signed-off-by: NAndrew Fleming <afleming@freescale.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      dd6c89f6
  6. 23 10月, 2006 1 次提交
  7. 04 10月, 2006 1 次提交
  8. 26 9月, 2006 1 次提交
  9. 27 6月, 2006 1 次提交
  10. 21 6月, 2006 1 次提交
  11. 15 6月, 2006 1 次提交
  12. 09 6月, 2006 1 次提交
  13. 22 4月, 2006 1 次提交
  14. 29 3月, 2006 3 次提交
  15. 22 3月, 2006 1 次提交
  16. 24 2月, 2006 1 次提交
  17. 14 1月, 2006 1 次提交
    • A
      [PATCH] powerpc: oprofile cpu type names clash with other code · 7a45fb19
      Andy Whitcroft 提交于
      In 2.6.15-git6 a change was commited in the oprofile support in
      the powerpc architecture.  It introduced the powerpc_oprofile_type
      which contains the define G4.  This causes a name clash with the
      existing wacom usb tablet driver.
      
            CC [M]  drivers/usb/input/wacom.o
          drivers/usb/input/wacom.c:98: error: conflicting types for `G4'
          include/asm/cputable.h:37: error: previous declaration of `G4'
            CC [M]  drivers/usb/mon/mon_text.o
          make[3]: *** [drivers/usb/input/wacom.o] Error 1
          make[2]: *** [drivers/usb/input] Error 2
      
      The elements of an enum declared in global scope are effectivly
      global identifiers themselves.  As such we need to ensure the names
      are unique.  This patch updates the later oprofile support to use
      unique names.
      Signed-off-by: NAndy Whitcroft <apw@shadowen.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      7a45fb19
  18. 09 1月, 2006 3 次提交
  19. 14 11月, 2005 1 次提交
  20. 11 11月, 2005 1 次提交
    • B
      [PATCH] powerpc: Merge vdso's and add vdso support to 32 bits kernel · a7f290da
      Benjamin Herrenschmidt 提交于
      This patch moves the vdso's to arch/powerpc, adds support for the 32
      bits vdso to the 32 bits kernel, rename systemcfg (finally !), and adds
      some new (still untested) routines to both vdso's: clock_gettime() with
      support for CLOCK_REALTIME and CLOCK_MONOTONIC, clock_getres() (same
      clocks) and get_tbfreq() for glibc to retreive the timebase frequency.
      
      Tom,Steve: The implementation of get_tbfreq() I've done for 32 bits
      returns a long long (r3, r4) not a long. This is such that if we ever
      add support for >4Ghz timebases on ppc32, the userland interface won't
      have to change.
      
      I have tested gettimeofday() using some glibc patches in both ppc32 and
      ppc64 kernels using 32 bits userland (I haven't had a chance to test a
      64 bits userland yet, but the implementation didn't change and was
      tested earlier). I haven't tested yet the new functions.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      a7f290da
  21. 10 11月, 2005 1 次提交
  22. 08 11月, 2005 1 次提交
  23. 07 11月, 2005 1 次提交
  24. 20 10月, 2005 1 次提交
    • D
      [PATCH] powerpc: Merge ppc64 pmc.[ch] with ppc32 perfmon.[ch] · f7f6f4fe
      David Gibson 提交于
      This patches the ppc32 and ppc64 versions of the headers and .c files
      with helper functions for manipulating the performance counting
      hardware.  As a side effect, it removes use of the term "perfmon" from
      ppc32, thus avoiding confusion with the unrelated performance counter
      interface from HP Labs also called "perfmon".
      
      Built, but not booted, for g5, pSeries, iSeries, and 32-bit Powermac
      with both ARCH=powerpc and ARCH=ppc{,64} as appropriate.
      Signed-off-by: NDavid Gibson <dwg@au1.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f7f6f4fe
  25. 28 9月, 2005 1 次提交
  26. 21 9月, 2005 4 次提交