summaryrefslogtreecommitdiff
path: root/sys/arch/alpha/include
AgeCommit message (Collapse)Author
2011-11-25Rework assembler constraints to satisfy gcc 4. Unfortunately this could notMiod Vallat
been done earlier because these new and improved constraints lose bigtime with gcc3, so be sure to compile your kernel with gcc 4 only if you have atomic.h 1.10 onwards.
2011-11-16Make userret() MI. On architectures which jammed stuff into it in theTheo de Raadt
past, pull that code out seperately. ok guenther miod
2011-10-27Specify the TLS variant for each platform.Philip Guenthe
2011-09-08Provide namespace-safe alignment macros in <machine/_types.h>, withPhilip Guenthe
compat names kept in <machine/param.h>. In <sys/socket.h>, pull in <sys/_types.h> instead of the namespace polluting <machine/param.h> and completely eliminate __CMSG_ALIGN, replaced by _ALIGN ok deraadt@
2011-09-08Make the INT_FAST*_{MIN,MAX} macros match the types they're defined to.Philip Guenthe
Since the underlying types of the int_fast types are set by machine/_types.h, put internal macros in that same file and define the exposed INT_FAST*_{MIN,MAX} macros from those. ok millert@, kettenis@
2011-08-29Only provide FLT_EVAL_METHOD for C99. Add missing DECIMAL_DIG for C99.Mark Kettenis
ok guenther@
2011-07-06Make alpha consistent with our other architectures by using "longMatthew Dempsky
long" for __off_t. This is a C++ ABI bump, but martynas@ already bumped libstdc++. Discussed and requested by many on icb.
2011-06-05Update alpha bootblocks to use MI loadfile code instead of rolling our own;Miod Vallat
also print a meaningful message if the kernel load address conflicts with the SRM memory areas, so that we can know which kernel load address to use. Requires `make includes' before attempting to build bootblocks. Tweaks mk@, `nice' deraadt@
2011-05-30Remove the freelist member from vm_physsegOwain Ainsworth
The new world order of pmemrange makes this data completely redundant (being dealt with by the pmemrange constraints instead). Remove all code that messes with the freelist. While touching every caller of uvm_page_physload() anyway, add the flags argument to all callers (all but one is 0 and that one already used PHYSLOAD_DEVICE) and remove the macro magic to allow callers to continue without it. Should shrink the code a bit, as well. matthew@ pointed out some mistakes i'd made. ``freelist death, I like. Ok.' ariane@ `I agree with the general direction, go ahead and i'll fix any fallout shortly'' miod@ (68k 88k and vax i could not check would build)
2011-05-25Also enclose variable names with external linkage in __BEGIN_DECLS.Martynas Venckus
Doesn't matter much since C++ ABI used by GCC doesn't mangle variable names; however technically is required by Section 7.5 of the C++ spec. Discussed with/OK guenther@, matthew@.
2011-04-28fenv improvements and cleanupsMartynas Venckus
2011-04-23Implement C99 floating-point environment for Alpha.Martynas Venckus
Delivering FPE with non-masked exceptions doesn't work on Alpha; I suspect there's a bug in the kernel trap handler. FE_INEXACT is intentionally left out of FE_ALL_EXCEPT; since the inexact exception is not being maintained. Otherwise it will lead to the bogus results.
2011-04-23Sysarch is for userland, not kernel.  ifdef _KERNEL -> ifndef _KERNELMartynas Venckus
so that the userland actually gets the proto. OK kettenis@, miod@.
2011-04-15More than a decade ago, interrupt handlers on sparc started returning 0Theo de Raadt
(interrupt was not for me), 1 (positive interrupt was for me), or -1 (i am not sure...). We have continued with this practice in as many drivers as possible, throughout the tree. This makes some of the architectures use that information in their interrupt handler calling code -- if 1 is returned (and we know this specific machine does not have edge-shared interrupts), we finish servicing other possible handlers on the same pin. If the interrupt pin remains asserted (from a different device), we will end up back in the interrupt servicing code of course... but this is cheaper than calling all the chained interrupts on a pin. This does of course count on shared level interrupts being properly sorted by IPL. There have been some concerns about starvation of drivers which incorrectly return 1. Those drivers should be hunted down so that they return -1. (other architectures will follow) ok kettenis drahn dlg miod
2011-03-23Normalize sentinel. Use _MACHINE_*_H_ and _<ARCH>_*_H_ properly and consitently.Paul Irofti
Discussed and okay drahn@. Okay deraadt@.
2011-03-11Use _MACHINE_ENDIAN_H_ for this is The Right Thing To Do.Paul Irofti
Okay guenther@, millert@.
2010-12-30add a simple __va_copy inside ifdef lint, from tim van der molen.Ted Unangst
ok guenther
2010-12-26Kill pmap_phys_address(), and force every driver's mmap() routine to returnMiod Vallat
a physical address [more precisely, something suitable to pass to pmap_enter()'sphysical address argument]. This allows MI drivers to implement mmap() routines without having to know about the pmap_phys_address() implementation and #ifdef obfuscation.
2010-12-21Convert netisr to a normal soft interrupt instead of hanving MD codeClaudio Jeker
for it. This makes the netisr a real C function which will help further development. No noticable performance change on i386 and amd64. With input from kettenis@ and miod@ additional OKs mikeb@ and henning@
2010-12-15oops, i forgot to check in the BRKSIZ define in uvm, but deraadt thinksTed Unangst
its better as a per arch MD define anyway. all default to MAXDSIZ as before.
2010-11-28Get rid of machdep.root_device sysctl and related variables.Miod Vallat
2010-11-27Remove ddb single-step load and store counters. Most platforms do notMiod Vallat
implement them, and they are of questionable usefulness.
2010-09-28Implement a per-cpu held mutex counter if DIAGNOSTIC on all non-x86 platforms,Miod Vallat
to complete matthew@'s commit of a few days ago, and drop __HAVE_CPU_MUTEX_LEVEL define. With help from, and ok deraadt@.
2010-07-24One the -> On theMiod Vallat
2010-06-30remove compat_osf1 support from the kernelTed Unangst
ok deraadt miod
2010-05-31there is no spllpt(), since lpt's are just tty devices (call tty functions,Theo de Raadt
and thus should be using spltty() from Matthew Dempsky ok oga guenther
2010-04-23Make sure IPL_SCHED is always defined by MD headers, instead of having a MIMiod Vallat
fallback definition in <sys/sched.h>, so that there is no hidden include ordering requirement between <machine/intr.h> and <sys/sched.h>. ok deraadt@ tedu@
2009-12-25Add bus_space_vaddr() when applicable; from NetBSD.Miod Vallat
2009-11-27Move MB_LEN_MAX into the machine-independent sys/limits.h header,Philip Guenthe
rather than defining it separately for each architecture. Also set it to 4, to accommodate for future UTF-8 support (rfc3629). Diff by stsp, committing to catch the libc major bump ok kettenis@, guenther@
2009-11-07Blink leds on the DEC 3000 models (three different led types).Miod Vallat
2009-11-04Get rid of __HAVE_GENERIC_SOFT_INTERRUPTS now that all our platforms support it.Mark Kettenis
ok jsing@, miod@
2009-10-02Link the kernel at a higher physical address, in order to accomodate SRMMiod Vallat
with larger footprint than the usual 2MB, as encountered on some of the most recent alpha systems. Tested on many models (DEC 3000, PC164, AS500, ES40, and more)
2009-09-30Remove unused last argument of alpha_shared_intr_disestablish().Miod Vallat
2009-09-30Get rid of prom_open() and implement it directly as a prom_dispatch() wrapper,Miod Vallat
necessary for some old SRM version. From NetBSD.
2009-09-30Fix MDDT_NONVOLATILE value, it's 10 binary, not 10 hexadecimal.Miod Vallat
While there, add two more RPB system type values.
2009-09-25Fix the value of one voltage sensor in ev6 environmental machine checks.Miod Vallat
2009-07-30Get rid of the obsolet BUS_BARRIER_xxx constants for bus_space_barrier(), onlyMiod Vallat
provide and use BUS_SPACE_BARRIER_xxx.
2009-04-25Strengthen the constraints of the atomic operations assembly statementsMiod Vallat
to make sure the register holding the ld_l and st_c addresses doesn't get reused when gcc's register allocator is too aggressive.
2009-04-20Add a BUS_DMA_ZERO flag for bus_dmamem_alloc() to return zeroed memory.Owain Ainsworth
Saves every damned driver calling bzero(), and continues the M_ZERO, PR_ZERO symmetry.
2009-03-26Remove cpu_wait(). It's original use was to be called from the reaper soOwain Ainsworth
MD code would free resources that couldn't be freed until we were no longer running in that processor. However, it's is unused on all architectures since mikeb@'s tss changes on x86 earlier in the year. ok miod@
2009-03-25Deinline softintr_schedule(). Also fix softintr priorities I got inverted afterMiod Vallat
adding splsoftassert().
2009-03-15Now that we have splsoftassert(), make the soft ipl levels positive andMiod Vallat
remove the special casing in splassert().
2009-03-15Introduce splsoftassert(), similar to splassert() but for soft interruptMiod Vallat
levels. This will allow for platforms where soft interrupt levels do not map to real hardware interrupt levels to have soft ipl values overlapping hard ipl values without breaking spl asserts.
2009-03-15Allow CPU_INFO_UNIT() to be used before cpu0 attaches.Miod Vallat
2009-03-07No need to register a soft interrupt for softclock, it's done in MI code.Miod Vallat
2009-02-01Remove unused _pfthresh member from struct alpha_bus_dma_tag.Miod Vallat
2009-01-17Recognize environmental change machine checks on ES40, and report whatMiod Vallat
happens instead of panicing; while there, start providing more details for ev6 processor machine checks as well. This allows power supplies to be unplugged and exchanged while the system is running, without causing the kernel to crash.
2008-10-23Move the va_copy define to <sys/stdrag.h> making sure it is uniformalyMark Kettenis
protected by __ISO_C_VISIBLE > 1999. With a little help from miod@. ok miod@
2008-10-15make random(9) return per-cpu values (by saving the seed in the cpuinfo),Theo de Raadt
which are uniform for the profclock on each cpu in a SMP system (but using a different seed for each cpu). on all cpus, avoid seeding with a value out of the [0, 2^31-1] range (since that is not stable) ok kettenis drahn
2008-10-10Add empty cpu_unidle() macros for architectures that currently don't doArtur Grabowski
anything special to prod a cpu to leave the idle loop in signotify. powerpc, i386, amd64 and sparc64 will follow soon so that everyone has the same interface to wake an idling cpu.