summaryrefslogtreecommitdiffstats
path: root/arch/powerpc
Commit message (Collapse)AuthorAgeFilesLines
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-mergeLinus Torvalds2006-01-1230-104/+148
|\ | | | | | | | | | | | | Fix up delete/modify conflict of arch/ppc/kernel/process.c by hand (it's gone, gone, gone). Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * powerpc: make ARCH=ppc use arch/powerpc/kernel/process.cPaul Mackerras2006-01-122-3/+5
| | | | | | | | | | | | | | | | | | | | Commit 5388fb1025443ec223ba556b10efc4c5f83f8682 made signal_32.c use discard_lazy_cpu_state, which broke ARCH=ppc because that uses the common signal_32.c but has its own process.c. Make ARCH=ppc use the common process.c to fix this and to reduce the amount of duplicated code. Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: cell namespace cleanupArnd Bergmann2006-01-123-3/+5
| | | | | | | | | | | | | | | | These symbols are only used in the file that they are defined in, so they should not be in the global namespace. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: xmon namespace cleanupsArnd Bergmann2006-01-121-7/+7
| | | | | | | | | | | | | | | | These symbols are only used in the file that they are defined in, so they should not be in the global namespace. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: pmac namespace cleanupArnd Bergmann2006-01-121-1/+1
| | | | | | | | | | | | | | | | pmac_setup_arch is only used in the file that it is defined in, so it should not be in the global namespace. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: pseries namespace cleanupArnd Bergmann2006-01-126-10/+8
| | | | | | | | | | | | | | | | These symbols are only used in the file that they are defined in, so they should not be in the global namespace. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: minor dart driver cleanupOlof Johansson2006-01-121-1/+0
| | | | | | | | | | | | | | Rpn is assigned every time in the loop, no need to increase it too. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: small pci cleanupsStephen Rothwell2006-01-121-2/+3
| | | | | | | | | | | | | | | | pcibios_claim_one_bus is not needed on iSeries and phbs_remap_io can be mode static. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: clean up iommu.h a bitStephen Rothwell2006-01-124-0/+40
| | | | | | | | | | | | | | | | | | | | There was a function declared for CONFIG_PSERIES which no longer exists and the two function declarations for CONFIG_ISERIES have been moved into an include file in platforms/iseries since they are defined and used only there. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: iSeries fixes for build with no PCIStephen Rothwell2006-01-122-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts part of "ppc64 iSeries: allow build with no PCI" (145d01e4287b8cbf50f87c3283e33bf5c84e8468) which affected generic code and applies a fix in the arch specific code. Commit "partly merge iseries do_IRQ" (5fee9b3b39eb55c7e3619a3b36ceeabffeb8f144) introduced iSeries_get_irq which was only available if CONFIG_PCI is set. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: eliminate bitfields from ItLpNacaStephen Rothwell2006-01-121-4/+1
| | | | | | | | | | Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: remove bitfields from HvLpEventStephen Rothwell2006-01-124-37/+16
| | | | | | | | | | Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: Fixed memory reserve map layoutKumar Gala2006-01-122-8/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | powerpc: Fixed memory reserve map layout The memory reserve map is suppose to be a pair of 64-bit integers to represent each region. On ppc32 the code was treating the pair as two 32-bit integers. Additional the prom_init code was producing the wrong layout on ppc32. Added a simple check to try to provide backwards compatibility. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: remove warning in EEH codeOlof Johansson2006-01-121-2/+3
| | | | | | | | | | | | | | | | Remove warning in eeh code about mixed variables and code. Signed-off-by: Olof Johansson <olof@lixom.net> Acked-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: Avoid potential FP corruption with preempt and UPPaul Mackerras2006-01-123-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Heikki Lindholm pointed out that there was a potential race with the lazy CPU state (FP, VR, EVR) stuff if preempt is enabled. The race is that in the process of restoring FP state on sigreturn, the task gets preempted by a user task that wants to use the FPU. It will take an FP unavailable exception, which will write the current FPU state to the thread_struct, overwriting the values which sigreturn has stored. Note that this can only happen on UP since we don't implement lazy CPU state on SMP. The fix is to flush the lazy CPU state before updating the thread_struct. To do this we re-use the flush_lazy_cpu_state() function from process.c. Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [PATCH] powerpc: task_stack_page()Al Viro2006-01-121-6/+4
| | | | | | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] powerpc: task_thread_info()Al Viro2006-01-125-9/+9
|/ | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] capable/capability.h (arch/)Randy Dunlap2006-01-111-0/+1
| | | | | | | | arch: Use <linux/capability.h> where capable() is used. Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] kprobes: fix race in recovery of reentrant probeKeshavamurthy Anil S2006-01-111-0/+12
| | | | | | | | | | | | | | | | | There is a window where a probe gets removed right after the probe is hit on some different cpu. In this case probe handlers can't find a matching probe instance related to break address. In this case we need to read the original instruction at break address to see if that is not a break/int3 instruction and recover safely. Previous code had a bug where we were not checking for the above race in case of reentrant probes and the below patch fixes this race. Tested on IA64, Powerpc, x86_64. Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] powerpc: Don't build crash.c for PPC32Michael Ellerman2006-01-111-2/+2
| | | | | | | | | | arch/powerpc/kernel/crash.c isn't safe for PPC32 (yet?), so don't build it. Built with CONFIG_KEXEC=y for pmac32_defconfig, pseries_defconfig, and g5_defconfig. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Fix clean_files in arch/powerpc/boot MakefileKumar Gala2006-01-111-1/+1
| | | | | | | clean-files was being set twice rather than being appended to. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Remove redundant setting of htab_addressMichael Ellerman2006-01-111-6/+0
| | | | | | | | iSeries doesn't need to set the htab_address explicitly, htab_initialize() will do it for us later. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Add ibm,pft-size to iSeries device treeMichael Ellerman2006-01-111-2/+11
| | | | | | | | | To make iSeries just a teensy bit less special, create ibm,pft-size properties in the iSeries device tree. We can then rely on htab_dt_scan_pftsize() to set ppc64_pft_size for us. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Add some missing .gitignore'sKumar Gala2006-01-113-0/+22
| | | | | | | ignore generated files under arch/powerpc Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Updated Kconfig and Makefiles for 83xx supportKumar Gala2006-01-116-53/+81
| | | | | | | | | | | Updated Kconfig & Makefiles in prep for adding support for the Freescale MPC83xx family of processors to arch/powerpc. Moved around some config options that are more globally applicable to other PowerPC processors. Added a temporary config option (83xx) to match existing arch/ppc support for the MPC83xx line. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] spufs: Suspend/restore MFC DMA operations at SPU context switch.Geoff Levand2006-01-111-5/+29
| | | | | | | | | | | | | The SPE Book IV indicates that MFC DMA operations must be suspended and restored on SPU context switch (in Step 8). This patch adds that operation, which is missing from the current spufs implementation. Signed-off-by: Masato Noguchi <Masato.Noguchi@jp.sony.com> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Acked-by: Arnd Bergmann <arndb@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: fix for compile problem in kdump code when SMP disabledHaren Myneni2006-01-111-1/+1
| | | | | | | | | | This patch fixes the compilation error (shown below) when CONFIG_SMP=n. arch/powerpc/kernel/crash.c: In function `crash_kexec_prepare_cpus': arch/powerpc/kernel/crash.c:236: error: implicit declaration of function `smp_release_cpus' Signed-off-by: Haren Myneni <haren@us.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* powerpc: Fix compile error when CONFIG_PROC_VMCORE is not definedPaul Mackerras2006-01-111-0/+2
| | | | | | We were getting elfcorehdr_addr undefined in this case. Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc/64: per cpu data optimisationsAnton Blanchard2006-01-111-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current ppc64 per cpu data implementation is quite slow. eg: lhz 11,18(13) /* smp_processor_id() */ ld 9,.LC63-.LCTOC1(30) /* per_cpu__variable_name */ ld 8,.LC61-.LCTOC1(30) /* __per_cpu_offset */ sldi 11,11,3 /* form index into __per_cpu_offset */ mr 10,9 ldx 9,11,8 /* __per_cpu_offset[smp_processor_id()] */ ldx 0,10,9 /* load per cpu data */ 5 loads for something that is supposed to be fast, pretty awful. One reason for the large number of loads is that we have to synthesize 2 64bit constants (per_cpu__variable_name and __per_cpu_offset). By putting __per_cpu_offset into the paca we can avoid the 2 loads associated with it: ld 11,56(13) /* paca->data_offset */ ld 9,.LC59-.LCTOC1(30) /* per_cpu__variable_name */ ldx 0,9,11 /* load per cpu data Longer term we can should be able to do even better than 3 loads. If per_cpu__variable_name wasnt a 64bit constant and paca->data_offset was in a register we could cut it down to one load. A suggestion from Rusty is to use gcc's __thread extension here. In order to do this we would need to free up r13 (the __thread register and where the paca currently is). So far Ive had a few unsuccessful attempts at doing that :) The patch also allocates per cpu memory node local on NUMA machines. This patch from Rusty has been sitting in my queue _forever_ but stalled when I hit the compiler bug. Sorry about that. Finally I also only allocate per cpu data for possible cpus, which comes straight out of the x86-64 port. On a pseries kernel (with NR_CPUS == 128) and 4 possible cpus we see some nice gains: total used free shared buffers cached Mem: 4012228 212860 3799368 0 0 162424 total used free shared buffers cached Mem: 4016200 212984 3803216 0 0 162424 A saving of 3.75MB. Quite nice for smaller machines. Note: we now have to be careful of per cpu users that touch data for !possible cpus. At this stage it might be worth making the NUMA and possible cpu optimisations generic, but per cpu init is done so early we have to be careful that all architectures have their possible map setup correctly. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Make early debugging configurable via KconfigMichael Ellerman2006-01-116-41/+80
| | | | | | | | | | | | | | | | | This patch adds Kconfig entries to control the early debugging options, currently in setup_64.c. Doing this via Kconfig rather than #defines means you can have one source tree, which is buildable for multiple platforms - and you can enable the correct early debug option for each platform via .config. I made udbg_early_init() a static inline because otherwise GCC is to daft to optimise it away when debugging is off. Now that we have udbg_init_rtas() we can make call_rtas_display_status* static. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: Early debugging support for iSeriesMichael Ellerman2006-01-112-8/+24
| | | | | | | | | | | Connect iSeries up to the standard early debugging infrastructure. To actually use this you need to enable the iSeries early debugging in setup_64.c. Then after the messages are logged hit Ctrl-x Ctrl-x on your console to dump the Hypervisor console buffer. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] powerpc: remove remaining crash_notes variable from machine_kexec.cOlaf Hering2006-01-111-6/+0
| | | | | | | | | | remove remaining crash_notes definition to fix compile error /dev/shm/linux-2.6/arch/powerpc/kernel/machine_kexec.c:21: error: conflicting types for `crash_notes' /dev/shm/linux-2.6/include/linux/kexec.h:129: error: previous declaration of `crash_notes' Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] PCI Hotplug/powerpc: module build breaklinas2006-01-111-0/+3
| | | | | | | | | The RPAPHP hoplug driver will not build as a module, because it calls on a pcibios routine which is not exported. This exports the symbol. Problem reported by Olaf Hering <olh@suse.de> Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
* [PATCH] enable the RTC driver in ppc64_defconfigOlaf Hering2006-01-111-1/+1
| | | | | | | Enable the RTC driver. Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-mergeLinus Torvalds2006-01-1016-425/+854
|\
| * [PATCH] powerpc: Some ppc compile fixes...David Woodhouse2006-01-102-2/+1
| | | | | | | | | | | | | | This gets most of the Fedora rawhide RPM building again, as long as I disable CHRP. Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: Extended PCI config spaceBenjamin Herrenschmidt2006-01-101-1/+1
| | | | | | | | | | | | | | | | | | This adds back the call to pci_cfg_space_size() when building the PCI tree from OF nodes that was commented out due to the function not being exported by the PCI code. It's now exported, so let's use it. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc: remove compat_sys_pciconfig_*Stephen Rothwell2006-01-102-27/+3
| | | | | | | | | | | | | | | | Matthew Wilcox wondered why we need these functions. We don't. Remove them and just use the "normal" versions. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * powerpc: Introduce a new config symbol to control 16550 early debug codePaul Mackerras2006-01-105-8/+10
| | | | | | | | | | | | | | | | | | | | The previous change by Kumar Gala in this area led to legacy_serial.c and udbg_16550.c being built as modules when CONFIG_SERIAL_8250=m. Fix this by introducing a new symbol, CONFIG_PPC_UDBG_16550, to control whether these files get built, and arrange for it to be selected for those platforms that need it. Signed-off-by: Paul Mackerras <paulus@samba.org>
| * [PATCH] powerpc/pseries: dlpar-add crash on null pointer dereflinas2006-01-101-1/+2
| | | | | | | | | | | | | | | | This fixes a crash on null-pointer deref during dlpar slot addition. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 1c87c0f84943fbbc91826967ff4fea1b059a526f commit)
| * powerpc: Fix up some compile errors in the PCI error recovery codePaul Mackerras2006-01-102-10/+9
| | | | | | | | | | | | | | | | | | <asm/systemcfg.h> is gone now, and the PCI error recovery constants in include/linux/pci.h changed their names in the process of getting accepted. Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 5a2516156c591fc3d2059fbd93f97e15eb6010d6 commit)
| * [PATCH] powerpc: get rid of per_cpu EEH countersLinas Vepstas2006-01-101-37/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 242-eeh-no-percpu-counters.patch Remove per-cpu counters from the EEH code. These statistics counters are incremented at a very low frequency, and the performance gains of per-cpu variables are negligable. By contrast, the counters weren't safe against cpu off/online operations, and its not worth the effort to make them so (other than to turn them into plain globals). Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from be3b5d1be053ccb41e91fa5a6f43ef5db301357d commit)
| * [PATCH] powerpc: Save device BARs much earlier in the boot sequenceLinas Vepstas2006-01-103-12/+9
| | | | | | | | | | | | | | | | | | | | 241-eeh-save-bars-earlier.patch Save the PCI device bars *before* any PCI probing is done. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 76c902b919098860f3d4e125f847abcc4cb1782a commit)
| * [PATCH] powerpc: IOMMU: don't ioremap null addressesLinas Vepstas2006-01-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 240-ioremap-null-ptr-test.patch Under highly unusual circumstances, a buggy driver will ask a null ptr to be ioremapped, an operation that curently succeeds but leads to later trouble. Instead, refuse to remap the null pointer. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from e71d9e598533c1889e7162f5f4647e5d378c102c commit)
| * [PATCH] powerpc: handle multifunction PCI devices properlyLinas Vepstas2006-01-102-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 239-eeh-multifunction-consolidate.patch New-style firmware will often place multiple different functions under a non-EEH-aware parent. However, these devices might share a common PE "partition endpoint" and config address, ad thus any EEH events will affect all of the devices in common. This patch makes the effort to find all of these common devices and handle them together. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 216810296bb97d39da8e176822e9de78d2f00187 commit)
| * [PATCH] powerpc: Don't continue with PCI Error recovery if slot reset failed.Linas Vepstas2006-01-102-39/+66
| | | | | | | | | | | | | | | | | | | | | | | | 238-eeh-stop-if-reset_failed.patch If the firmware is unable to reset the PCI slot for some reason, then don't attempt any further recovery steps after that point. Instead, mark the device as permanently failed. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from e06b942521eb2cdaf232726f45a820d5837acb12 commit)
| * [PATCH] powerpc: set up the RTAS token just like the rest of them.Linas Vepstas2006-01-101-5/+3
| | | | | | | | | | | | | | | | | | | | | | 237-eeh-bridge-token.patch Minor: the rtas-bridge token should be set up the same way that all the other rtas tokens are set up. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 78379b6c5fc17b6666c40b05988e6708e98479c0 commit)
| * [PATCH] powerpc: Use PE configuration address consistentlyLinas Vepstas2006-01-101-4/+23
| | | | | | | | | | | | | | | | | | | | | | | | 236-eeh-config-addr.patch The PE configuration address wasn't being cnsistently used in all locations where a config address is called for. This patch adds it to the places it should have appeared in. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from c2bc904a28095aca0b04a37854b63b78622a032e commit)
| * [PATCH] powerpc: bugfix: fill in uninitialized fieldLinas Vepstas2006-01-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | 235-eeh-set-pcidev-bugfix.patch The pci device field of the pci_dn struct should be initialized to a valid value. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from beb45c93d494a11c36e5b24f638e610db8428b54 commit)
| * [PATCH] powerpc: Remove duplicate codeLinas Vepstas2006-01-102-14/+1
| | | | | | | | | | | | | | | | | | | | | | 234-eeh-find-pe.patch The find_device_pe() routine is duplicated in two files. Remove one of the two copies, declare the other extern. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org> (cherry picked from 48408e708282d4d0269136ff27ea5acbd9410b5a commit)
OpenPOWER on IntegriCloud