aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2005-10-10powerpc: Get 64-bit configs to compile with ARCH=powerpcPaul Mackerras
This is a bunch of mostly small fixes that are needed to get ARCH=powerpc to compile for 64-bit. This adds setup_64.c from arch/ppc64/kernel/setup.c and locks.c from arch/ppc64/lib/locks.c. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: move lparmap.c to arch/powerpc/kernelPaul Mackerras
Since lparmap.s gets included in arch/powerpc/kernel/head_64.S, this avoids depending on a file in another directory. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Fix bug caused by negation of 64-bit reloc_offset valuePaul Mackerras
Although both ppc32 and ppc64 have a reloc_offset function, the ppc64 one produced the opposite sign to the ppc32 one. This standardizes on the ppc32 sign and fixes the merged 64-bit code to account for that. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Reduce the 32/64-bit diffs in vmlinux.lds.SPaul Mackerras
Also adds the definition of the _sdata symbol to the ppc64 vmlinux.lds.S. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Reduce the 32/64-bit differences in traps.cPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Make prom_init.c suitable for both 32-bit and 64-bitPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Introduce entry_{32,64}.S, misc_{32,64}.S, systbl.SPaul Mackerras
The system call table has been consolidated into systbl.S. We have separate 32-bit and 64-bit versions of entry.S and misc.S since the code is mostly sufficiently different to be not worth merging. There are some common bits that will be extracted in future. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: make process.c suitable for both 32-bit and 64-bitPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Use arch/powerpc/mm and arch/powerpc/lib for 64-bitPaul Mackerras
This also puts a copy of indirect_pci.c in arch/powerpc/sysdev so that we don't need to build in arch/ppc/syslib. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Use reg.h instead of processor.h when we just want reg namesPaul Mackerras
Now that the register names and bit definitions are all in reg.h, use that instead of processor.h in assembly code in a few places. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Merge Kconfig.debugPaul Mackerras
This merges in the ppc64 bits into arch/powerpc/Kconfig.debug Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: rename powermac files to remove pmac_ prefixPaul Mackerras
Since the files are now in arch/powerpc/platforms/powermac, the pmac_ prefix that they had is redundant. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10ppc64: Use SPRN_ prefix for special purpose register namesPaul Mackerras
Now that we are using the merged reg.h we have to use the SPRN_xxx names rather than the xxx names. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: move pSeries files to arch/powerpc/platforms/pseriesPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Merge arch/ppc64/mm to arch/powerpc/mmPaul Mackerras
This moves the remaining files in arch/ppc64/mm to arch/powerpc/mm, and arranges that we use them when compiling with ARCH=ppc64. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Rename files to have consistent _32/_64 suffixesPaul Mackerras
This doesn't change any code, just renames things so we consistently have foo_32.c and foo_64.c where we have separate 32- and 64-bit versions. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10ppc64: Use the merged lmb routinesPaul Mackerras
The only real change here is that lmb_enforce_memory_limit now takes the memory_limit as a parameter instead of as a global variable. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Make some #includes explicit.Paul Mackerras
In preparation for merging processor.h, this adds some explicit but won't be after the merge. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-10powerpc: Use SPRN_xxx rather than xxx for SPR numbersPaul Mackerras
This changes symbols like HID0, SPRG3, SRR0, SRR1 etc. that refer to special purpose registers to SPRN_HID0, SPRN_SPRG3, etc. Using the SPRN_ symbols clutters the namespace less, and the forthcoming merge of asm/processor.h and asm/reg.h is going to remove the non-SPRN_ versions. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Fix idle.c compile warningPaul Mackerras
This fixes a compile warning when using arch/ppc/kernel/idle.c in a merged (ARCH=powerpc) kernel. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Define a _sdata symbolPaul Mackerras
This is needed by arch/powerpc/mm/mem.c now. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Merge traps.c a bit morePaul Mackerras
This reduces the differences between ppc32 and ppc64 in arch/powerpc/kernel/traps.c a bit further. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Use the merged of_device.c with ARCH=powerpcPaul Mackerras
Also compile btext.c with -fPIC; this was missed before. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Merge of_device.c and of_device.hPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Remove 64-bit cpu support from ppc32.Paul Mackerras
These days there is no good reason to run a ppc32 kernel on a 64-bit cpu, rather than a ppc64 kernel, so remove the config option and a bunch of code (and ifdefs) from head.S. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Merge lmb.c and make MM initialization use it.Paul Mackerras
This also creates merged versions of do_init_bootmem, paging_init and mem_init and moves them to arch/powerpc/mm/mem.c. It gets rid of the mem_pieces stuff. I made memory_limit a parameter to lmb_enforce_memory_limit rather than a global referenced by that function. This will require some small changes to ppc64 if we want to continue building ARCH=ppc64 using the merged lmb.c. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Merge in the ppc64 version of the prom code.Paul Mackerras
This brings in the ppc64 version of prom_init.c, prom.c and btext.c and makes them work for ppc32. This also brings in the new calling convention, where the first entry to the kernel (with r5 != 0) goes to the prom_init code, which then restarts from the beginning (with r5 == 0) after it has done its stuff. For now this also brings in the ppc32 version of setup.c. It also merges lmb.h. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-06powerpc: Define 32/64 bit asm macros and use them in fpu.SPaul Mackerras
These macros help in writing assembly code that works for both ppc32 and ppc64. With this we now have a common fpu.S. This takes out load_up_fpu from head_64.S. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-04ppc32: remove obsolete klock_info definitionPaul Mackerras
klock_info isn't used or referenced anywhere else in the kernel. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-04ppc32: export a few more things where they are definedPaul Mackerras
... and remove the exports from ppc_ksyms.c. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-10-02Merge rsync://ozlabs.org/sfr-git/for-paulus/Paul Mackerras
2005-10-01powerpc: make iSeries bootStephen Rothwell
Now that we use the device tree, it helps to build it in. It helps to links the kernel at the correct address. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-10-01powerpc: make iSeries buildStephen Rothwell
Merge vmlinux.lds.S. Also remove arch/powerpc/kernel/vmlinux.lds which is a generated file. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-10-01ppc64: simplify the build a littleStephen Rothwell
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-10-01powerpc: merge idle_power4.S and trapc.sStephen Rothwell
Use idle_power4.S from ppc64 as we are not going to support 32 bit power4 in the merged tree. Merge ppc64 traps.c into powerpc traps.c: use ppc64 versions of exception routine names (as they don't have StudlyCaps) make all the versions if die() have the same prototype Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-10-01powerpc: Get merged kernel to compile and run on 32-bit SMP powermac.Paul Mackerras
This updates the powermac SMP code to use the mpic driver instead of the openpic driver and fixes the SMP-dependent context switch code. We had a subtle bug where we were using interrupt numbers 256-259 for IPIs, but ppc32 had NR_IRQS = 256. Moved the IPIs down to use interrupt numbers 252-255 instead. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-09-30powerpc: Move lparmap.c to powerpc/platformsStephen Rothwell
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-09-30powerpc: more cleanup of powerpc/kernelStephen Rothwell
Update head_64.S from arch/ppc64 Remove arc/ppc/kernel/fpu.S Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-09-30powerpc: remove old vector.S filesStephen Rothwell
Update old kernel/Makefiles to cope Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-09-30powerpc: merge asm-offsets.cStephen Rothwell
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-09-30ppc64 iseries: move some iSeries include filesStephen Rothwell
These files are only referenced from within arch/powerpc/platforms/iseries, so move them there. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
2005-09-29Merge by hand from Linus' tree.Paul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-09-28[PATCH] ppc64: More hugepage fixesBenjamin Herrenschmidt
My previous patch fixing invalidation of huge PTEs wasn't good enough, we still had an issue if a PTE invalidation batch contained both small and large pages. This patch fixes this by making sure the batch is flushed if the page size fed to it changes. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-28[PATCH] ppc64: Add missing barrier() in kexec codeAnton Blanchard
Mikey and I were testing kexec and hit a lockup. It turns out gcc 4.0 optimises the kexec_prepare_cpus loop so we avoid reloading paca.hw_cpu_id. A gcc barrier() fixes the problem. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-28[PATCH] x86-64: Fix bad assumption that dualcore cpus have synced TSCsjohn stultz
This should resolve the issue seen in bugme bug #5105, where it is assumed that dualcore x86_64 systems have synced TSCs. This is not the case, and alternate timesources should be used instead. For more details, see: http://bugzilla.kernel.org/show_bug.cgi?id=5105 Andi's earlier concerns that the TSCs should be synced on dualcore systems have been resolved by confirmation from AMD folks that they can be unsynced. Acked-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-28[PATCH] ppc: fix stupid thinko in oprofile fixBenjamin Herrenschmidt
I did something stupid in my oprofile fix, here's the obvious fix: Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-28Merge Stephen Rothwell's patchesPaul Mackerras
2005-09-28powerpc: Fixes to get the merged kernel to boot on powermac.Paul Mackerras
This merges ppc_ksyms.c, puts back the actual do_execve call in sys_execve, makes init_MMU call find_end_of_memory rather than ppc_md.find_end_of_memory (every platform has a device tree with a /memory node now, right?) and fixes some problems with the mpic initialization on newworld powermacs. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-09-28powerpc: Fix building in the old arch's boot directory for nowPaul Mackerras
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-09-28[PATCH] ppc32: make cur_cpu_spec a single pointer instead of an arrayKumar Gala
Changed ppc32 so that cur_cpu_spec is just a single pointer for all CPUs. Additionally, made call_setup_cpu check to see if the cpu_setup pointer is NULL or not before calling the function. This lets remove the dummy cpu_setup calls that just return. Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>