summaryrefslogtreecommitdiff
path: root/include/asm-parisc/processor.h
AgeCommit message (Collapse)Author
2006-01-10[PARISC] Use C99 initializers in asm-parisc/processor.hAlexey Dobriyan
Cleanup asm-parisc/processor.h to use C99 initializers in INIT_THREAD(). Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Matthew Wilcox <matthew@wil.cx> Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2005-10-21[PARISC] Add ability for prctl to change unaligned trap behaviourKyle McMartin
Add support for changing unaligned trap behaviour on a per-thread basis. Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2005-09-10[PATCH] spinlock consolidationIngo Molnar
This patch (written by me and also containing many suggestions of Arjan van de Ven) does a major cleanup of the spinlock code. It does the following things: - consolidates and enhances the spinlock/rwlock debugging code - simplifies the asm/spinlock.h files - encapsulates the raw spinlock type and moves generic spinlock features (such as ->break_lock) into the generic code. - cleans up the spinlock code hierarchy to get rid of the spaghetti. Most notably there's now only a single variant of the debugging code, located in lib/spinlock_debug.c. (previously we had one SMP debugging variant per architecture, plus a separate generic one for UP builds) Also, i've enhanced the rwlock debugging facility, it will now track write-owners. There is new spinlock-owner/CPU-tracking on SMP builds too. All locks have lockup detection now, which will work for both soft and hard spin/rwlock lockups. The arch-level include files now only contain the minimally necessary subset of the spinlock code - all the rest that can be generalized now lives in the generic headers: include/asm-i386/spinlock_types.h | 16 include/asm-x86_64/spinlock_types.h | 16 I have also split up the various spinlock variants into separate files, making it easier to see which does what. The new layout is: SMP | UP ----------------------------|----------------------------------- asm/spinlock_types_smp.h | linux/spinlock_types_up.h linux/spinlock_types.h | linux/spinlock_types.h asm/spinlock_smp.h | linux/spinlock_up.h linux/spinlock_api_smp.h | linux/spinlock_api_up.h linux/spinlock.h | linux/spinlock.h /* * here's the role of the various spinlock/rwlock related include files: * * on SMP builds: * * asm/spinlock_types.h: contains the raw_spinlock_t/raw_rwlock_t and the * initializers * * linux/spinlock_types.h: * defines the generic type and initializers * * asm/spinlock.h: contains the __raw_spin_*()/etc. lowlevel * implementations, mostly inline assembly code * * (also included on UP-debug builds:) * * linux/spinlock_api_smp.h: * contains the prototypes for the _spin_*() APIs. * * linux/spinlock.h: builds the final spin_*() APIs. * * on UP builds: * * linux/spinlock_type_up.h: * contains the generic, simplified UP spinlock type. * (which is an empty structure on non-debug builds) * * linux/spinlock_types.h: * defines the generic type and initializers * * linux/spinlock_up.h: * contains the __raw_spin_*()/etc. version of UP * builds. (which are NOPs on non-debug, non-preempt * builds) * * (included on UP-non-debug builds:) * * linux/spinlock_api_up.h: * builds the _spin_*() APIs. * * linux/spinlock.h: builds the final spin_*() APIs. */ All SMP and UP architectures are converted by this patch. arm, i386, ia64, ppc, ppc64, s390/s390x, x64 was build-tested via crosscompilers. m32r, mips, sh, sparc, have not been tested yet, but should be mostly fine. From: Grant Grundler <grundler@parisc-linux.org> Booted and lightly tested on a500-44 (64-bit, SMP kernel, dual CPU). Builds 32-bit SMP kernel (not booted or tested). I did not try to build non-SMP kernels. That should be trivial to fix up later if necessary. I converted bit ops atomic_hash lock to raw_spinlock_t. Doing so avoids some ugly nesting of linux/*.h and asm/*.h files. Those particular locks are well tested and contained entirely inside arch specific code. I do NOT expect any new issues to arise with them. If someone does ever need to use debug/metrics with them, then they will need to unravel this hairball between spinlocks, atomic ops, and bit ops that exist only because parisc has exactly one atomic instruction: LDCW (load and clear word). From: "Luck, Tony" <tony.luck@intel.com> ia64 fix Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Arjan van de Ven <arjanv@infradead.org> Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Cc: Matthew Wilcox <willy@debian.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Mikael Pettersson <mikpe@csd.uu.se> Signed-off-by: Benoit Boissinot <benoit.boissinot@ens-lyon.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-12-06[PATCH] Move MCA_bus to linux/mca.hMatthew Wilcox
- Move MCA_bus declaration from <asm/processor.h> to <linux/mca.h> - Define it in mca.c, not setup.c - EXPORT_SYMBOL it at the site of its definition. - Fix up random files to include <linux/mca.h> for the use of the MCA_bus symbol - Delete some unnecessary ifdefs. - Delete some unneeded comments. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2004-05-10[PATCH] PA-RISC updates for 2.6.6Matthew Wilcox
- Split PA7300LC from PA7100LC (Matthew Wilcox) - Handle 32-bit firmware and 64-bit kernel at runtime (Ryan Bradetich) - Fix building in a separate tree (Matthew Wilcox) - Update defconfigs (Randolph Chung) - Make WCHAN work (Randolph Chung) - Initial support for SMP in 2.6 (Grant Grundler) - Use 8-byte PTEs on 32-bit kernels (James Bottomley) - Implement L2/L3 hybrid page tables for 64 bit kernels (James Bottomley) - Support 8TB of physical and virtual address space (James Bottomley) - Macro'ise the tlb miss handlers (James Bottomley) - Check the ptrace flags correctly in the syscall return path (Randolph Chung) - Eliminate many magic numbers (James Bottomley) - Work around linker bug in vmlinux.lds.S (James Bottomley) - Many cache flushing fixes (James Bottomley) - first baby step for PA8800 support (Grant Grundler) - Self-aligning spinlocks (Randolph Chung)
2003-09-30[PATCH] PA-RISC updatesMatthew Wilcox
PA-RISC updates for 2.6.0-test6 - Some more support for 64-bit userspace - Move many EXPORT_SYMBOLs out of parisc_ksyms.c - Make both the OSS and ALSA harmony drivers build - ioctl typechecking - Make math-emu build without warnings. - Persuade SuckyIO to not crash the machine.
2003-09-20[PATCH] Move EISA_busMatthew Wilcox
When I change the setting of CONFIG_EISA, everything rebuilds. This is because EISA_bus is declared in <asm/processor.h> which is implicitly included by just about everything. This is a silly place to declare it, so this patch moves it to include/linux/eisa.h. While I'm at it, I also move the variable definition to drivers/eisa/eisa-bus.c. The rest of this patch is fixing up the fallout from having to include <linux/eisa.h> if you use EISA_bus.
2003-07-10[PATCH] parisc updatesMatthew Wilcox
arch/parisc, drivers/parisc and include/asm-parisc updates: - Fixups for struct timespec changes (James Bottomley) - Add CONFIG_FRAME_POINTER (Thibaut Varene) - Fix hpux ustat emulation (Helge Deller) - Add a ->remove operation to struct parisc_device (James Bottomley) - More work on modules (James Bottomley) - More unaligned instructions handled (LaMont Jones) - Fix byteswap assembly (Grant Grundler) - Allow ISA support to be selected (Matthew Wilcox) - Fix swapping (James Bottomley)
2003-06-15[PATCH] parisc arch updateMatthew Wilcox
This update covers a lot of changes to arch/parisc and parisc-specific drivers. - irq_return_t changes - more work on the module loader (James Bottomley) - rewrite of led.c by Helge Deller - many miscellaneous updates
2003-03-09Move "used FPU status" into new non-atomic thread_info->status field.Linus Torvalds
This allows us to avoid having to use atomic updates for the lazy FP status setting, since we don't have to worry about other CPU's racing on the fields. Also, fix x86 FP state after fork() by making sure the FP is unlazied _before_ we copy the state information. Otherwise, if a process did a fork() while holding the FP state lazily in the registers, the child would incorrectly unlazy bogus state.
2003-01-12[PATCH] parisc updates for 2.5.56Matthew Wilcox
Updates for 2.5.56: - Integrate Stephen Rothwell's compat code - OProfile support for Randolph Chung - Makefile updates from Sam Ravnborg - Regenerated defconfig as requested by Rusty - Generic device model updates (James Bottomley) - And lots of general updating bugfixing, etc.
2002-11-03[PATCH] remove *_segments() dummy functions from all other architecturesMatthew Wilcox
A supplement to manfred's patch; remove copy_segments, release_segments and even forget_segments from all architectures (except x86-64 since Andi wants to do that seperately):
2002-11-03[PATCH] PA-RISC updatesMatthew Wilcox
Some misc updates: - adapt our config.in changes to arch/parisc/Kconfig - general Makefile updaes for the new build system - remove asm-parisc/gsc.h in favour of asm-parisc/io.h - Alan-approved fix for the loff_t problem - Define POLLREMOVE like other architectures. - irq handling updates from Grant Grundler
2002-10-29[PATCH] include/asm-pariscMatthew Wilcox
Update include/asm-parisc
2002-07-29[PATCH] make cpu_relax a barrier on all architecturesAnton Blanchard
Make cpu_relax() on all architectures a gcc barrier to match x86.
2002-02-04v2.4.10.4 -> v2.4.10.5Linus Torvalds
- Keith Owens: module exporting error checking - Greg KH: USB update - Paul Mackerras: clean up wait_init_idle(), ppc prefetch macros - Jan Kara: quota fixes - Abraham vd Merwe: agpgart support for Intel 830M - Jakub Jelinek: ELF loader cleanups - Al Viro: more cleanups - David Miller: sparc64 fix, netfilter fixes - me: tweak resurrected oom handling
2002-02-04v2.4.9.10 -> v2.4.9.11Linus Torvalds
- Neil Brown: md cleanups/fixes - Andrew Morton: console locking merge - Andrea Arkangeli: major VM merge
2002-02-04Import changesetLinus Torvalds