summaryrefslogtreecommitdiffstats
path: root/sys/arch/landisk/include (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add support for timeconting in userland.pirofti2020-07-061-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | This diff exposes parts of clock_gettime(2) and gettimeofday(2) to userland via libc eliberating processes from the need for a context switch everytime they want to count the passage of time. If a timecounter clock can be exposed to userland than it needs to set its tc_user member to a non-zero value. Tested with one or multiple counters per architecture. The timing data is shared through a pointer found in the new ELF auxiliary vector AUX_openbsd_timekeep containing timehands information that is frequently updated by the kernel. Timing differences between the last kernel update and the current time are adjusted in userland by the tc_get_timecount() function inside the MD usertc.c file. This permits a much more responsive environment, quite visible in browsers, office programs and gaming (apparently one is are able to fly in Minecraft now). Tested by robert@, sthen@, naddy@, kmos@, phessler@, and many others! OK from at least kettenis@, cheloha@, naddy@, sthen@
* Remove obsolete <machine/stdarg.h> header. Nowadays the varargvisa2020-06-301-3/+0
| | | | | | | | functionality is provided by <sys/stdarg.h> using compiler builtins. Tested in a ports bulk build on amd64 by naddy@ OK naddy@ mpi@
* Retire <machine/varargs.h>.visa2020-05-271-3/+0
| | | | | | Nothing uses the header anymore. OK deraadt@ mpi@
* Remove unused spllock().visa2018-08-201-2/+1
| | | | OK deraadt@ mpi@
* Define IPL_MPFLOOR on SP archs.mpi2018-05-301-1/+2
| | | | From Mathieu <naabed at poolp.org>, ok visa@
* add a BUS_DMA_64BIT flag to bus_dma on all our archs.dlg2017-05-081-14/+15
| | | | | | | | | this is so drivers can advertise that they can handle 64 dma addresses to the platform. it may choose to handle dmamaps differently based on this flag. tweaks and ok tom@ ok kettenis@
* provide splraise on landiskdlg2016-06-141-11/+12
| | | | | | | splraise is a wrapper around the sh _cpu_intr_raise(), and all the splfoo macros are now defined as calling splraise(IPL_FOO). tested on my landisk box
* Initial support for MSI-X. Only supported on amd64 for now. I have diffs tokettenis2016-05-041-1/+2
| | | | | | | | | | actually use this in em(4) and xhci(4), but I'm not committing those yet because we almost certainly need to save and restore the MSI-X registers during suspend/resume. However, this allows mpi@ to play with multiple-vector support in networking hardware. Requested by mpi@ ok mlarkin@, mikeb@
* Remove {LOAD,COUNT}_TEXTA from libsa loadfile, it only made sense for a.outmiod2015-07-171-3/+3
| | | | kernels and we no longer have any.
* Add a stub for the new MD hook needed to handle ACPI Power Resources.mpi2013-11-051-1/+2
| | | | ok kettenis@
* add missing license (PD) blockjasper2013-06-012-4/+4
| | | | ok guenther@
* Add a dummy IPL_MPSAFE definition.kettenis2013-05-171-1/+3
| | | | ok miod@, mikeb@
* refactor sys/param.h and machine/param.h. A lot of #ifdef _KERNEL is addedderaadt2013-03-231-10/+3
| | | | | | | to keep definitions our of user space. The MD files now follow a consistant order -- all namespace intrusion is at the tail can be cleaned up independently. locore, bootblocks, and libkvm still see enough visibility to build. Checked on 90% of platforms...
* Implement pci_min_powerstate().kettenis2012-09-041-1/+3
|
* create new machine/_float.h which is namespace clean. create a newderaadt2012-06-263-6/+3
| | | | | | | | | MI float.h which pulls in and defines the values that are needed from there, and repair sys/limits.h so that it defines the values it needs as well (depending on POSIX version, XPG version, etc). guenther has a more exact selection of that coming for limits.h. this also fixes a few mistakes for the vax. reviewed by kettenis and guenther.
* Specify the TLS variant for each platform.guenther2011-10-271-0/+3
|
* Introduce pci_probe_device_hook(pci_chipset_tag_t, struct pci_attach_args *).miod2011-10-101-1/+2
| | | | | | | | | | | | | | | | | | This mandatory function will get invoked in pci_probe_device(), and allows a pci host driver to alter the pci_attach_args passed to a device when attaching. This function will also, if returning non-zero, cause the device to be skipped completely during all the phases of the PCI device discovery (i.e. ressource enumeration, ressource assignment, and actual attachment). This particular feature is experimental and might be reverted in the future (or the scope narrowed to device attachment only). A dummy #define pci_probe_device_hook() 0 is added to all platforms except sgi, where real functions (currently only returning 0) are added; real meat will be added shortly. Discussed at s2k11, no objection from the usual suspects.
* Nuke the useless D_KQFILTER flag and just check that d_kqfilter isnicm2011-07-041-2/+2
| | | | | | filled in. Move D_CLONE down to 0x0001 as suggested by thib. ok deraadt thib
* machdep.kbdreset enables a shutdown by Ctrl-Alt-Del on amd64 andnaddy2011-06-241-4/+4
| | | | | | | | | | | | | | | i386. Stop abusing it on other archs for controling a shutdown by pressing the soft power button: * Add a MI sysctl hw.allowpowerdown; if set to 1 (the default) it allows a power button shutdown. * Make acpi(4)/acpibtn(4) honor hw.allowpowerdown. * Switch the various power button intercepts on landisk, sgi, sparc64 and zaurus over to hw.allowpowerdown. * Garbage collect the machdep.kbdreset sysctl on all archs other than amd64 and i386. ok miod@
* Remove the freelist member from vm_physsegoga2011-05-301-4/+1
| | | | | | | | | | | | | | | | | | 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)
* Add pci_intr_map_msi() stub.kettenis2011-05-211-1/+2
|
* - enable fenvmartynas2011-04-281-0/+3
| | | | - add nearbyint, nearbyintf and nearbyintl implemented using fenv
* Normalize sentinel. Use _MACHINE_*_H_ and _<ARCH>_*_H_ properly and consitently.pirofti2011-03-237-28/+28
| | | | Discussed and okay drahn@. Okay deraadt@.
* Introduce a new pci routine, pci_conf_size(), which returns the size of amiod2010-12-041-1/+3
| | | | | | | given pcitag_t configuration address space. Currently, all pci controllers will return the usual 0x100 bytes of PCI configuration space, but this will eventually change on PCIe-capable controlers. ok kettenis@
* Fix more cdev initializations which were using enodev for poll; ok kettenisderaadt2010-07-211-2/+2
|
* Add support for mapping ACPI to PCI devicesjordan2010-06-291-1/+3
| | | | ok kettenis, deraadt
* OpenBSD uses bus_space_copy_#, not bus_space_copy_region_#. Make sure only themiod2010-04-041-5/+5
| | | | | | first name is used, and remove any #define foo_region foo compatibility defines. Also, on sparc64, do not provide a `raw' version of bus_space_copy.
* - add rcs id's.jasper2009-11-2432-0/+64
|
* Add a BUS_DMA_ZERO flag for bus_dmamem_alloc() to return zeroed memory.oga2009-04-201-1/+2
| | | | | Saves every damned driver calling bzero(), and continues the M_ZERO, PR_ZERO symmetry.
* Introduce splsoftassert(), similar to splassert() but for soft interruptmiod2009-03-151-1/+3
| | | | | | 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.
* revert all changes related to the mpsafe intr handler. i screwed up the committedu2008-12-061-3/+1
| | | | and even then it didn't work. we have higher standards than this.
* mpsafe intr_establish that doesn't get biglock, so that we may dream of the day when this is useful.tedu2008-12-061-1/+3
| | | | mostly macro magic that does nothing. only actually useful on amd64 for now, compliments of art.
* First pass at removing clauses 3 and 4 from NetBSD licenses.ray2008-06-264-32/+4
| | | | | | | | | Not sure what's more surprising: how long it took for NetBSD to catch up to the rest of the BSDs (including UCB), or the amount of code that NetBSD has claimed for itself without attributing to the actual authors. OK deraadt@
* Define IPL_VM on platforms which lack it.miod2007-11-301-3/+4
|
* significantly simplified disklabel infrastructure. MBR handling becomes MIderaadt2007-06-171-0/+2
| | | | | | | | to support hotplug media on most architectures. disklabel setup and verification done using new helper functions. Disklabels must *always* have a correct checksum now. Same code paths are used to learn on-disk location disklabels, to avoid new errors sneaking in. Tested on almost all cases, testing help from todd, kettenis, krw, otto, dlg, robert, gwk, drahn
* Fix KERNBASE, so that profiling kernels initialize (but profiling is brokenmiod2007-05-201-1/+3
| | | | at the moment).
* forgot this one in my previous commit.thib2007-05-161-2/+2
| | | | | | | splassert_ctl defaults to 1 now, so dont wrap the checks for splassert_ctl > 0 in __predict_false(). ok deraadt@
* Simple monoprocessor mutex implementation, faster than the MI code, four leftmiod2007-05-011-0/+1
| | | | to go.
* machdep.led_blink sysctl for landisk, also move cpu_sysctl() code and relatedmiod2007-04-291-1/+16
| | | | variables from arch/sh/ to arch/landisk/. ok deraadt@
* Remove __BUS_SPACE_ADDRESS_SANITY correctly, no cookie for me. Spotted bymiod2007-04-121-21/+6
| | | | djm@
* Remove unused BUS_SPACE_ALIGNED_POINTER, __BUS_SPACE_ADDRESS_SANITY andmiod2007-04-101-34/+1
| | | | __BUS_SPACE_ALIGNED_ADDRESS.
* Add <machine/fpu.h> for upcoming userland changes.miod2007-03-131-0/+1
|
* Dangling includemiod2007-03-131-1/+0
|
* Kernel crash dumps and associated libkvm bits for landisk.miod2007-03-031-0/+1
|
* only make this interface available to the kernel for now, discussed withaderaadt2007-02-191-2/+3
| | | | rt and such; tested and ok miod drahn
* Add machine/atomic.h to all architectures and define two operationsart2007-02-061-0/+9
| | | | | | | | | | | right now that are supposed to be atomic with respect to interrupts and SMP: atomic_setbits_int and atomic_clearbits_int. All architectures other than i386 and amd64 get dummy implementations since at first we'll be replacing operations that are done with "a |= bit" and "a &= ~bit" today. More proper implementations will follow kettenis@, miod@ ok
* Define IPL_SCHED.miod2006-11-211-2/+3
|
* splassert support.miod2006-11-211-1/+17
|
* Don't bother using _cpu_intr_raise() for splhigh(), use _cpu_intr_suspend().miod2006-11-211-2/+2
|
* goodbye splserial, hello splaudio.drahn2006-11-201-3/+3
|