| History log of /src/sys/arch/alpha/include/alpha_cpu.h |
| Revision | | Date | Author | Comments |
| 1.56 |
| 20-Jul-2022 |
thorpej | Make alpha_wmb() actually a WMB rather than an MB (all uses of alpha_wmb() have been audited and fixed-up as necessary).
|
| 1.55 |
| 02-Nov-2021 |
ryo | In order to prevent _mcount() from being recursively called when built with COPTS=-O0, sprinkle `__always_inline' to make _mcount() be generated as a single function.
|
| 1.54 |
| 27-May-2021 |
thorpej | Define the arithmetic exception summary bits passed in a0 to entArith.
|
| 1.53 |
| 15-Oct-2020 |
thorpej | branches: 1.53.6; 1.53.8; Fix the bit position for the PMI bit in ALPHA_AMASK_BITS.
|
| 1.52 |
| 29-Sep-2020 |
thorpej | Add alpha_pal_wtint(), which invokes the WTINT PALcode call.
|
| 1.51 |
| 05-Sep-2020 |
thorpej | - Document all of the various interrupt levels in the Processor Stataus register, and provide symbolic names for them as well. - Use ALPHA_PSL_IPL_* values directly for IPL_*.
|
| 1.50 |
| 06-Feb-2012 |
matt | Do a minor cleanup of alpha (this will make applying pullups post branching easier). u_int{8,16,32,64}_t -> uint{*}_t Change all old-style definitions to C89 prototypes. Whitespace cleanup. Constification in db_disasm.c
|
| 1.49 |
| 07-Oct-2010 |
hans | branches: 1.49.8; 1.49.12; Enable Pchip and Cchip error interrupts (machine checks) on DEC 6600 systems. Add some basic pretty-printing for those errors. Tested on a DS20.
|
| 1.48 |
| 16-Feb-2006 |
perry | branches: 1.48.72; 1.48.92; 1.48.94; Change "inline" back to "__inline" in .h files -- C99 is still too new, and some apps compile things in C89 mode. C89 keywords stay.
As per core@.
|
| 1.47 |
| 24-Dec-2005 |
perry | branches: 1.47.2; 1.47.4; 1.47.6; Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
|
| 1.46 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
| 1.45 |
| 28-Jul-2005 |
rpaulo | Added a new AMASK bit (ALPHA_AMASK_PMI) and a new IMPLVER family ID: ALPHA_IMPLVER_EV7.
ok christos@
|
| 1.44 |
| 17-Jan-2003 |
thorpej | branches: 1.44.2; 1.44.18; Merge the nathanw_sa branch.
|
| 1.43 |
| 18-Dec-2001 |
thorpej | Add a memory clobber to alpha_pal_swapctx() and alpha_pal_swpipl(); the former affects the address space, and the latter can let interrupt handlers in to clobber memory.
|
| 1.42 |
| 17-Jul-2001 |
thorpej | branches: 1.42.2; Protect userland from the inlines and kernel variable decls.
|
| 1.41 |
| 08-Jun-2000 |
thorpej | branches: 1.41.6; And more ANSI'ification!
|
| 1.40 |
| 08-Jun-2000 |
thorpej | ANSI'ify.
|
| 1.39 |
| 03-Apr-2000 |
thorpej | branches: 1.39.2; Fix a typo in a previous revision, and add bit names for amask bits for use with bitmask_snprintf().
|
| 1.38 |
| 20-Mar-2000 |
thorpej | Update the amask bits.
|
| 1.37 |
| 05-Mar-2000 |
thorpej | Use ANSI-style function declarations for the various inline functions here. Addresses port-alpha/9056.
|
| 1.36 |
| 02-Dec-1999 |
thorpej | Inline most of the remaining PALcode calls.
|
| 1.35 |
| 02-Dec-1999 |
thorpej | Inline the BWX instructions.
|
| 1.34 |
| 02-Dec-1999 |
thorpej | Move atomic operations into <machine/atomic.h>, and make them in-line assembly, rather than function calls.
...except alpha_atomic_testset_l(), which will go away completely once I commit the new <machine/lock.h>.
|
| 1.33 |
| 01-Dec-1999 |
thorpej | After reading the GCC `documentation' a little more, improve the inline __asm() statements added previously for PALcode operations.
|
| 1.32 |
| 30-Nov-1999 |
thorpej | Inline several things from pal.s: - alpha_rpcc(), alpha_mb(), alpha_wmb() -- these are instructions, and we win by inlining them: rpcc is generally used for profiling, and the memory barriers really should execute as quickly as possible with minimal side-effects (like additional loads/stores required to call the functions!) - alpha_pal_imb(), alpha_pal_rdps(), alpha_pal_swpipl(), alpha_pal_tbi(), alpha_pal_whami() -- these are PALcode ops. We must specify some register clobbers for these.
We have a very decent size savings as a result. My test system: text data bss dec hex filename 2671724 235848 377016 3284588 321e6c /netbsd.bak 2617708 235736 377016 3230460 314afc /netbsd
Most of this comes from fewer register saves/restores around spl*() calls (now that alpha_pal_rdps() and alpha_pal_swpipl() are inlined).
Note that alpha_pal_rdps() and alpha_pal_swpipl() remain in pal.s to maintain binary compatibility with LKMs that may use spl*() functions.
|
| 1.31 |
| 28-Nov-1999 |
thorpej | Implement atomic addition and subtraction on quadwords.
|
| 1.30 |
| 25-Sep-1998 |
thorpej | branches: 1.30.12; 1.30.18; Implement atomic quadword load-and-latch.
|
| 1.29 |
| 25-Sep-1998 |
thorpej | The processor unique value in the PCB is used as a backup kernel stack pointer when booting secondary CPUs. Add an alias for it.
|
| 1.28 |
| 24-Sep-1998 |
thorpej | Implement atomic test-and-set for longwords (32-bit).
|
| 1.27 |
| 23-Sep-1998 |
thorpej | "Gee, there was already a function to do that."
|
| 1.26 |
| 23-Sep-1998 |
thorpej | Implement a function to recompute the HWRPB checksum.
|
| 1.25 |
| 22-Sep-1998 |
thorpej | Implement quadword atomic test-and-set.
|
| 1.24 |
| 20-Sep-1998 |
thorpej | Add definitions for the maximum allowable `whami' procssor ID and the maximum number of processors we'll allow (64, assuming procssor IDs start at 0).
|
| 1.23 |
| 14-Aug-1998 |
thorpej | vm_offset_t -> {paddr_t,vaddr_t}, vm_size_t -> vsize_t
|
| 1.22 |
| 08-Jul-1998 |
mjacob | stale beer- place structure in right file
|
| 1.21 |
| 08-Jul-1998 |
thorpej | Define a shorthand macro that represents the mask of PTE bits that the PALcode cares about.
|
| 1.20 |
| 08-Jul-1998 |
thorpej | Cosmetic change.
|
| 1.19 |
| 08-Jul-1998 |
mjacob | Add machine check type definitions. Structure the expected/received machine check items.
|
| 1.18 |
| 22-Mar-1998 |
thorpej | Implement a set of `atomic' (using load-locked and store-conditional) operations. Initial set includes:
alpha_atomic_setbits_q() set bits in a quad alpha_atomic_clearbits_q() clear bits in a quad
|
| 1.17 |
| 27-Feb-1998 |
thorpej | Implement alpha_pal_swpctx().
|
| 1.16 |
| 13-Feb-1998 |
thorpej | Rewrite the way the platform model string is determined: - Attempt to find the model string in the HWRPB's DSR area. Failing that (if the HWRPB version is too old)... - Look up the system variation in a variation/string table. Failing that (unknown variation)... - Create a default model string using the variation number.
Also, factor out a bunch of common code.
|
| 1.15 |
| 20-Sep-1997 |
mjacob | Add some defines for alpha interrupt types.
|
| 1.14 |
| 17-Sep-1997 |
thorpej | Prototype alpha_implver(), and fix a think-o in a previous commit.
|
| 1.13 |
| 16-Sep-1997 |
thorpej | Add stubs for the Alpha Byte/Word Extension (BWX) instructions, present on EV56 and later processors that have the "amask BWX" bit clear. These instructions will be used to implement non-swizzle bus access functions on newer systems, such as the new AlphaStation 500s with EV56 and 21172 PCI chipsets.
See "Alpha Architecture Handbook, Version 3", DEC order number EC-QD2KB-TE.
|
| 1.12 |
| 16-Sep-1997 |
thorpej | - Define bits used in the "amask" instruction. - Define processor family IDs returned by the "implver" instruction. - Prototype alpha_amask().
|
| 1.11 |
| 03-Sep-1997 |
thorpej | branches: 1.11.2; Add a few more PALcode operations, as documented in pages (II-B) 2-1 through (II-B) 2-33 of the Alpha AXP Architecture Reference Manual, Second Edition:
* rdps - Read Processor Status, needed by spl* functions. * cflush - Cache Flush * rdval - Read System Value * wripir - Write Interprocessor Interrupt Request * wrval - Write System Value
cflush, rdval, wripir, and wrval are used in multi-processor environments.
|
| 1.10 |
| 02-Sep-1997 |
thorpej | Fix a typo: ALPHA_PTE_WRITE needs to include the "user write" bit.
|
| 1.9 |
| 24-Apr-1997 |
cgd | branches: 1.9.2; comment out text after #endif. "Pasto!" pointed out by Kevin Sullivan in PR 3529.
|
| 1.8 |
| 06-Apr-1997 |
cgd | clean up NetBSD RCS ID strings
|
| 1.7 |
| 23-Nov-1996 |
cgd | branches: 1.7.2; make ALPHA_K0SEG_TO_PHYS and ~0xfffffc00000000000 with the address, rather than and-ing 16G-1. That just strips the k0seg bits, rather than making the false assumption that the physical address is going to be in the lower 16G. That doesn't apply for CIA device-space addresses, for instance.
|
| 1.6 |
| 20-Aug-1996 |
cgd | K0SEG_END is inclusive
|
| 1.5 |
| 14-Jul-1996 |
cgd | rename translation buffer invalidation macros to start with ALPHA_, like all other macros defined in alpha_cpu.h.
|
| 1.4 |
| 14-Jul-1996 |
cgd | (1) Remove old trap definitions, define trap and interrupt handling more naturally in terms of way the OSF/1 PALcode delivers traps and interrupts. Clean up fault/exception handling code and system entry points. Seperate ASTs into a seperate C function. (2) Restructure and improve machine check and correctable error handling based on information in the 2nd Ed. of the Alpha Architecture Reference Manual. (3) Removed unused (and not likely useful) PALcode assembly stubs.
|
| 1.3 |
| 11-Jul-1996 |
cgd | Instead of treating the trap/syscall/exception frame like a struct containing a substruct (the hardware frame) and an array of registers, treat it like one big array of registers, for easier and prettier access. Update everything to deal with that.
|
| 1.2 |
| 11-Jul-1996 |
cgd | Add definitions for: Process Control Block Interrupt/Exception/Syscall Stack Frame Machine Check Error Summary Register Machine Check Logout Area clean up some, and add prototypes for all of the CPU instruction and PALcode function stubs.
|
| 1.1 |
| 09-Jul-1996 |
cgd | definitions and constants which are part of the Alpha AXP Architecture, and which relate to the OSF/1 PALcode.
|
| 1.7.2.3 |
| 12-Aug-1997 |
cgd | sync with -current as of August 11, 1997
|
| 1.7.2.2 |
| 06-Jun-1997 |
cgd | sync nwscons with trunk
|
| 1.7.2.1 |
| 01-Jun-1997 |
cgd | sync the nwscons branch up with yesterday's version of the trunk. Lots of conflicts/changes because of the RCS Id format changes. Also, a few cleanups and corrections.
|
| 1.9.2.3 |
| 22-Sep-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
| 1.9.2.2 |
| 04-Sep-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
| 1.9.2.1 |
| 01-Sep-1997 |
thorpej | Repair marc-pcmcia branch.
|
| 1.11.2.2 |
| 03-Sep-1997 |
thorpej | Add a few more PALcode operations, as documented in pages (II-B) 2-1 through (II-B) 2-33 of the Alpha AXP Architecture Reference Manual, Second Edition:
* rdps - Read Processor Status, needed by spl* functions. * cflush - Cache Flush * rdval - Read System Value * wripir - Write Interprocessor Interrupt Request * wrval - Write System Value
cflush, rdval, wripir, and wrval are used in multi-processor environments.
|
| 1.11.2.1 |
| 03-Sep-1997 |
thorpej | file alpha_cpu.h was added on branch bouyer-scsipi on 1997-09-03 23:09:06 +0000
|
| 1.30.18.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
| 1.30.12.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
| 1.39.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
| 1.41.6.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
| 1.41.6.1 |
| 03-Aug-2001 |
lukem | update to -current
|
| 1.42.2.3 |
| 14-Jan-2003 |
nathanw | Add alpha_pal_rdunique() and alpha_pal_wrunique().
|
| 1.42.2.2 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
| 1.42.2.1 |
| 17-Jul-2001 |
nathanw | file alpha_cpu.h was added on branch nathanw_sa on 2002-01-08 00:22:54 +0000
|
| 1.44.18.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
| 1.44.2.1 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
| 1.47.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
| 1.47.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
| 1.47.2.1 |
| 18-Feb-2006 |
yamt | sync with head.
|
| 1.48.94.1 |
| 05-Mar-2011 |
rmind | sync with head
|
| 1.48.92.1 |
| 22-Oct-2010 |
uebayasi | Sync with HEAD (-D20101022).
|
| 1.48.72.1 |
| 09-Oct-2010 |
yamt | sync with head
|
| 1.49.12.1 |
| 18-Feb-2012 |
mrg | merge to -current.
|
| 1.49.8.1 |
| 17-Apr-2012 |
yamt | sync with head
|
| 1.53.8.1 |
| 31-May-2021 |
cjep | sync with head
|
| 1.53.6.1 |
| 17-Jun-2021 |
thorpej | Sync w/ HEAD.
|