1. 09 1月, 2006 14 次提交
    • D
      [PATCH] powerpc: Remove ItLpRegSave area from the paca · 1888e7b5
      David Gibson 提交于
      On iSeries, the paca contains, amongst other things an ItLpRegSave
      structure used by the hypervisor to save registers.  The hypervisor
      locates this area through a pointer at the beginning of the paca, so
      the structure itself can be located elsewhere.  This patch moves the
      reg_save area out into its own array.  This reduces the amount of
      iSeries specific gunk which is visible to general powerpc code via
      paca.h
      
      Built and booted on POWER5 LPAR and iSeries RS64.
      Signed-off-by: NDavid Gibson <dwg@au1.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      1888e7b5
    • S
      powerpc: more iseries irq work · 1d7a6b97
      Stephen Rothwell 提交于
      Make get_IRQ return a pending irq number so it can be handled
      in the powerpc geeneric code.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      1d7a6b97
    • S
      powerpc: partly merge iseries do_IRQ · e199500c
      Stephen Rothwell 提交于
      Hide some of the iseries details in iSeries_get_irq.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      e199500c
    • S
      powerpc: use end_IRQ for iseries irqs · 853f828c
      Stephen Rothwell 提交于
      Encode the sub bus number into the real irq number (even though it
      is always zero for now) so that we have enough information to do
      the EOI in iseries_end_IRQ.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      853f828c
    • S
      powerpc: cleanup iseries irq.c · 60798c6a
      Stephen Rothwell 提交于
      Remove two useless counters.
      DeStropify.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      60798c6a
    • B
      [PATCH] powerpc: Add back support for booting from BootX (#2) · d7f39454
      Benjamin Herrenschmidt 提交于
      ARCH=powerpc couldn't boot from BootX as it uses a "different" way of
      getting in the kernel. This patch adds the necessary trampolines,
      creating a flattened device-tree from the tree passed from MacOS, and
      initializing the btext engine early for really-early debugging.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      d7f39454
    • B
      [PATCH] powerpc: Unify udbg (#2) · 51d3082f
      Benjamin Herrenschmidt 提交于
      This patch unifies udbg for both ppc32 and ppc64 when building the
      merged achitecture. xmon now has a single "back end". The powermac udbg
      stuff gets enriched with some ADB capabilities and btext output. In
      addition, the early_init callback is now called on ppc32 as well,
      approx. in the same order as ppc64 regarding device-tree manipulations.
      The init sequences of ppc32 and ppc64 are getting closer, I'll unify
      them in a later patch.
      
      For now, you can force udbg to the scc using "sccdbg" or to btext using
      "btextdbg" on powermacs. I'll implement a cleaner way of forcing udbg
      output to something else than the autodetected OF output device in a
      later patch.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      51d3082f
    • B
      [PATCH] powerpc: serial port discovery (#2) · 463ce0e1
      Benjamin Herrenschmidt 提交于
      This moves the discovery of legacy serial ports to a separate file,
      makes it common to ppc32 and ppc64, and reworks it to use the new OF
      address translators to get to the ports early. This new version can also
      detect some PCI serial cards using legacy chips and will probably match
      those discovered port with the default console choice.
      
      Only ppc64 gets udbg still yet, unifying udbg isn't finished yet.
      
      It also adds some speed-probing code to udbg so that the default console
      can come up at the same speed it was set to by the firmware.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      463ce0e1
    • A
      [PATCH] spufs: cooperative scheduler support · 8b3d6663
      Arnd Bergmann 提交于
      This adds a scheduler for SPUs to make it possible to use
      more logical SPUs than physical ones are present in the
      system.
      
      Currently, there is no support for preempting a running
      SPU thread, they have to leave the SPU by either triggering
      an event on the SPU that causes it to return to the
      owning thread or by sending a signal to it.
      
      This patch also adds operations that enable accessing an SPU
      in either runnable or saved state. We use an RW semaphore
      to protect the state of the SPU from changing underneath
      us, while we are holding it readable. In order to change
      the state, it is acquired writeable and a context save
      or restore is executed before downgrading the semaphore
      to read-only.
      
      From: Mark Nutter <mnutter@us.ibm.com>,
            Uli Weigand <Ulrich.Weigand@de.ibm.com>
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      8b3d6663
    • M
      [PATCH] spufs: add spu-side context switch code · 05b84117
      Mark Nutter 提交于
      Add the source code that is used to generate spu_save_dump.h and
      spu_restore_dump.h. Since a full spu tool chain is needed to
      generate these files, the default remains to use the shipped
      versions in order to keep the number of tools for building the
      kernel down.
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      05b84117
    • M
      [PATCH] kernel-side context switch code for spufs · 7c038749
      Mark Nutter 提交于
      This adds the code needed to perform a context switch from
      spufs, following the recommended 76-step sequence.
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      7c038749
    • M
      [PATCH] spufs: switchable spu contexts · 5473af04
      Mark Nutter 提交于
      Add some infrastructure for saving and restoring the context of an
      SPE. This patch creates a new structure that can hold the whole
      state of a physical SPE in memory. It also contains code that
      avoids races during the context switch and the binary code that
      is loaded to the SPU in order to access its registers.
      
      The actual PPE- and SPE-side context switch code are two separate
      patches.
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      5473af04
    • A
      [PATCH] spufs: The SPU file system, base · 67207b96
      Arnd Bergmann 提交于
      This is the current version of the spu file system, used
      for driving SPEs on the Cell Broadband Engine.
      
      This release is almost identical to the version for the
      2.6.14 kernel posted earlier, which is available as part
      of the Cell BE Linux distribution from
      http://www.bsc.es/projects/deepcomputing/linuxoncell/.
      
      The first patch provides all the interfaces for running
      spu application, but does not have any support for
      debugging SPU tasks or for scheduling. Both these
      functionalities are added in the subsequent patches.
      
      See Documentation/filesystems/spufs.txt on how to use
      spufs.
      Signed-off-by: NArnd Bergmann <arndb@de.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      67207b96
    • M
      [PATCH] powerpc: Merge kexec · 3d1229d6
      Michael Ellerman 提交于
      This patch merges, to some extent, the PPC32 and PPC64 kexec implementations.
      
      We adopt the PPC32 approach of having ppc_md callbacks for the kexec functions.
      The current PPC64 implementation becomes the "default" implementation for PPC64
      which platforms can select if they need no special treatment.
      
      I've added these default callbacks to pseries/maple/cell/powermac, this means
      iSeries no longer supports kexec - but it never worked anyway.
      
      I've renamed PPC32's machine_kexec_simple to default_machine_kexec, inline with
      PPC64. Judging by the comments it might be better named machine_kexec_non_of,
      or something, but at the moment it's the only implementation for PPC32 so it's
      the "default".
      
      Kexec requires machine_shutdown(), which is in machine_kexec.c on PPC32, but we
      already have in setup-common.c on powerpc. All this does is call
      ppc_md.nvram_sync, which only powermac implements, so instead make
      machine_shutdown a ppc_md member and have it call core99_nvram_sync directly
      on powermac.
      
      I've also stuck relocate_kernel.S into misc_32.S for powerpc.
      
      Built for ARCH=ppc, and 32 & 64 bit ARCH=powerpc, with KEXEC=y/n. Booted on
      P5 LPAR and successfully kexec'ed.
      
      Should apply on top of 493f25ef.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      3d1229d6
  2. 22 12月, 2005 1 次提交
    • P
      powerpc: Fix i8259 cascade on pSeries with XICS interrupt controller · 8b1af56b
      Paul Mackerras 提交于
      It turns out that commit f9bd170a
      broke the cascade from XICS to i8259 on pSeries machines; specifically
      we ended up not ever doing the EOI on the XICS for the cascade.  The
      result was that interrupts from the serial ports (and presumably any
      other devices using ISA interrupts) didn't get through.  This fixes
      it and also simplifies the code, by doing the EOI on the XICS in the
      xics_get_irq routine after reading and acking the interrupt on the
      i8259.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      8b1af56b
  3. 12 12月, 2005 1 次提交
  4. 08 12月, 2005 1 次提交
  5. 05 12月, 2005 1 次提交
    • P
      powerpc/pseries: Optimize IOMMU setup · 6fbb618f
      Paul Mackerras 提交于
      The previous commit will use the page-at-a-time hypervisor call for
      setting up IOMMU entries when we are using 64k pages and setting up
      one 64k page, even though that means 16 calls to the hypervisor, since
      the hypervisor still works on 4k pages.  This optimizes this case by
      using the multi-page IOMMU setup hypervisor call instead.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      6fbb618f
  6. 02 12月, 2005 1 次提交
  7. 23 11月, 2005 1 次提交
  8. 19 11月, 2005 1 次提交
  9. 18 11月, 2005 4 次提交
  10. 17 11月, 2005 1 次提交
  11. 16 11月, 2005 3 次提交
  12. 15 11月, 2005 1 次提交
  13. 14 11月, 2005 6 次提交
  14. 11 11月, 2005 2 次提交
  15. 10 11月, 2005 2 次提交