1. 10 10月, 2006 2 次提交
  2. 26 9月, 2006 1 次提交
  3. 22 9月, 2006 2 次提交
    • N
      [POWERPC] Demacrofy arch/powerpc/platforms/maple/pci.c · cc9881ce
      Nathan Lynch 提交于
      Noticed that the U3_*CFA macros have some typos:
      
      #define U3_HT_CFA0(devfn, off)		\
      		((((unsigned long)devfn) << 8) | offset)
      
      (refers to offset rather than off)
      
      #define U3_AGP_CFA0(devfn, off)	\
      	((1 << (unsigned long)PCI_SLOT(dev_fn)) \
      	| (((unsigned long)PCI_FUNC(dev_fn)) << 8) \
      
      (refers to dev_fn rather than devfn)
      
      Things happen to work, but there doesn't seem to be any reason these
      shouldn't be functions.  Overall behavior should be unchanged.
      Signed-off-by: NNathan Lynch <ntl@pobox.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      cc9881ce
    • N
      [POWERPC] Maple U3 HT - reject inappropriate config space access · d608df5c
      Nathan Lynch 提交于
      When there is a PCI-X mode 2 capable device behind the HT<->PCI-X
      bridge, the pci core decides that the device has the extended 4K
      config space, even though the bus is not operating in mode 2.  This is
      because the u3_ht pci ops silently accept offsets greater than 255 but
      use only the 8 least significant bits, which means reading at offset
      0x100 gets the data at offset 0x0, and causes confusion for lspci.
      
      Reject accesses to configuration space offsets greater than 255.
      Signed-off-by: NNathan Lynch <ntl@pobox.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      d608df5c
  4. 31 7月, 2006 1 次提交
  5. 28 7月, 2006 2 次提交
  6. 03 7月, 2006 2 次提交
    • B
      [POWERPC] Add new interrupt mapping core and change platforms to use it · 0ebfff14
      Benjamin Herrenschmidt 提交于
      This adds the new irq remapper core and removes the old one.  Because
      there are some fundamental conflicts with the old code, like the value
      of NO_IRQ which I'm now setting to 0 (as per discussions with Linus),
      etc..., this commit also changes the relevant platform and driver code
      over to use the new remapper (so as not to cause difficulties later
      in bisecting).
      
      This patch removes the old pre-parsing of the open firmware interrupt
      tree along with all the bogus assumptions it made to try to renumber
      interrupts according to the platform. This is all to be handled by the
      new code now.
      
      For the pSeries XICS interrupt controller, a single remapper host is
      created for the whole machine regardless of how many interrupt
      presentation and source controllers are found, and it's set to match
      any device node that isn't a 8259.  That works fine on pSeries and
      avoids having to deal with some of the complexities of split source
      controllers vs. presentation controllers in the pSeries device trees.
      
      The powerpc i8259 PIC driver now always requests the legacy interrupt
      range. It also has the feature of being able to match any device node
      (including NULL) if passed no device node as an input. That will help
      porting over platforms with broken device-trees like Pegasos who don't
      have a proper interrupt tree.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      0ebfff14
    • B
      [POWERPC] Fix booting on Momentum "Apache" board (a Maple derivative) · 980a6513
      Benjamin Herrenschmidt 提交于
      This extends the maple device-tree workarounds to work on the
      Apache board as well, and extends the maple platform probing code
      to recognize the Apache board.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      980a6513
  7. 01 7月, 2006 1 次提交
  8. 28 6月, 2006 2 次提交
  9. 22 4月, 2006 2 次提交
  10. 29 3月, 2006 1 次提交
  11. 28 3月, 2006 1 次提交
  12. 27 3月, 2006 1 次提交
    • P
      powerpc: Unify the 32 and 64 bit idle loops · a0652fc9
      Paul Mackerras 提交于
      This unifies the 32-bit (ARCH=ppc and ARCH=powerpc) and 64-bit idle
      loops.  It brings over the concept of having a ppc_md.power_save
      function from 32-bit to ARCH=powerpc, which lets us get rid of
      native_idle().  With this we will also be able to simplify the idle
      handling for pSeries and cell.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      a0652fc9
  13. 24 2月, 2006 1 次提交
  14. 10 2月, 2006 1 次提交
  15. 15 1月, 2006 1 次提交
  16. 10 1月, 2006 1 次提交
  17. 09 1月, 2006 4 次提交
    • B
      [PATCH] powerpc: Experimental support for new G5 Macs (#2) · 1beb6a7d
      Benjamin Herrenschmidt 提交于
      This adds some very basic support for the new machines, including the
      Quad G5 (tested), and other new dual core based machines and iMac G5
      iSight (untested). This is still experimental !  There is no thermal
      control yet, there is no proper handing of MSIs, etc.. but it
      boots, I have all 4 cores up on my machine. Compared to the previous
      version of this patch, this one adds DART IOMMU support for the U4
      chipset and thus should work fine on setups with more than 2Gb of RAM.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      1beb6a7d
    • M
      [PATCH] powerpc: Add arch dependent basic infrastructure for Kdump. · cc532915
      Michael Ellerman 提交于
      Implementing the machine_crash_shutdown which will be called by
      crash_kexec (called in case of a panic, sysrq etc.). Disable the
      interrupts, shootdown cpus using debugger IPI and collect regs
      for all CPUs.
      
      elfcorehdr= specifies the location of elf core header stored by
      the crashed kernel. This command line option will be passed by
      the kexec-tools to capture kernel.
      
      savemaxmem= specifies the actual memory size that the first kernel
      has and this value will be used for dumping in the capture kernel.
      This command line option will be passed by the kexec-tools to
      capture kernel.
      Signed-off-by: NHaren Myneni <haren@us.ibm.com>
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      cc532915
    • 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
    • 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
  18. 18 11月, 2005 1 次提交
  19. 16 11月, 2005 1 次提交
    • B
      [PATCH] powerpc: pci_64 fixes & cleanups · b5166cc2
      Benjamin Herrenschmidt 提交于
      I discovered that in some cases (PowerMac for example) we wouldn't
      properly map the PCI IO space on recent kernels. In addition, the code
      for initializing PCI host bridges was scattered all over the place with
      some duplication between platforms.
      
      This patch fixes the problem and does a small cleanup by creating a
      pcibios_alloc_controller() in pci_64.c that is similar to the one in
      pci_32.c (just takes an additional device node argument) that takes care
      of all the grunt allocation and initialisation work. It should work for
      both boot time and dynamically allocated PHBs.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      b5166cc2
  20. 10 11月, 2005 1 次提交
    • B
      [PATCH] ppc64: fix PCI IO mapping · 0f34f490
      Benjamin Herrenschmidt 提交于
      phbs_remap_io(), which maps the PCI IO space into the kernel virtual space,
      is called too early on powermac, and thus doesn't work.
      
      This fixes it by removing the call from all platforms and putting it back
      into the ppc64 common code where it belongs, after the actual probing of
      the bus.
      
      That means that before that call, only the ISA IO space (if any) is mapped,
      any PIO access (from quirks for example) will fail. This happens not to be
      a problem for now, but we'll have to rework that code if it becomes one in
      the future.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      0f34f490
  21. 29 10月, 2005 1 次提交