Age | Commit message (Collapse) | Author |
|
run(4) has been reported to work on sparc64 by Maxim Belooussov so I'm
pretty confident that it works on all arches.
|
|
|
|
ok miod@
|
|
and use it to implement BUS_DMA_NOCACHE for uncached mappings of dma
memory. Needed for some broken hardware.
Discussion with art, miod, kettenis and toby, ok miod.
|
|
In order to do that we have to remove all sleeping parts: sleeping
memory allocation and a sleeping lock. Thus we're moving this code
to the spinning lock (mutex) and getting rid of the GDT grow code.
Downside is that now we're pre-allocating 64kb of memory per CPU
from the start, but this might be optimized in future.
This also unifies GDT code and MAXGDTSIZ define across i386 and amd64.
With help from mickey.
ok toby, art
|
|
ok miod@ tedu@
|
|
ok miod@
|
|
mutex with ipl set to IPL_HIGH. While i'm here, unify the code with
i386, by giving the same lock to the i386 code.
This lock is mostly for MP, but could actually prevent a race where a
process is doing pci_conf_{read,write}, and then an interrupt fire and
also does pci_conf_{read,write}. Since this is a two stage process, the
interrupt could race with the one, causing the value to the written to
the wrong place, or the wrong value to be written.
Tested by many. "go ahead" kettenis@.
|
|
|
|
environment sensors. These are found at least on VIA Epia SN18000G
boards.
Not enabled at 0x162e and 0x164e because probing these may not be
safe according to kettenis (guess where my schsio is).
Much help from kettenis. Input from const and fgs.
ok kettenis
|
|
ok kettenis@
|
|
that worked around its presence
ok'ed by miod@
|
|
ok jmc@ stevesk@
|
|
ok kettenis@
|
|
BIOSes.
ok deraadt@ (for the amd64 bit, or the i386 bit, can't remember which)
|
|
Noticed by dlg on system that comes with url(4).
|
|
(if the stge(4) entry is commented, so is the ipgphy(4) entry then).
this allows ipgphy0 to attach to my stge0, which has a IC+ 1000A chip
discussed with and ok jsg@, ok dlg@
|
|
the driver supports legacy 802.11abg modes only (no 802.11n yet.)
WPA works, with hardware encryption/decryption.
committed over an RT2800U (RT2870+RT2820).
enabled on i386 and amd64 GENERIC only for now.
thanks to Paul Lin at Ralink for letting us ship the firmware under an
appropriate license.
"man page looks ok" jmc@
"you should commit it" jsg@, ok deraadt@
|
|
it won't get included in kernel crash dumps.
ok dlg@
|
|
|
|
map. The standard doesn't tell us to look there, Linux and NetBSD don't look
there either. It seems that some BIOSes use this memory as a scratch area
to build the final ACPI tables which means we can accidentally find what
seems like a valid RSDP there. Fixes PR 5847.
ok krw@, marco@
|
|
#ifdef __i386__ code that can go now things have been cleaned up.
|
|
Mostly KNF issues, some reorganisation of the code.
ok dlg@, deraadt@, krw@
|
|
ok kettenis
|
|
ok deraadt@
|
|
ok deraadt@
|
|
|
|
amd64 isa dma code is identical save for some formatting, and a slight
difference in bus_dmamem_alloc.
"Die x86_!" krw@.
|
|
is on the CD rather than always asking for its location. Behaviour
pointed out at OpenCON by Stephan Rickauer.
Tested by Stephan. nick@ has no objections.
ok deraadt@
|
|
incorrectly.
The spec (manpage) states that using two PRE or two POST ops together is
entirely valid, but mixing pre and post is invalid. The way this was
handled before with a switch statement meant that only individual
commands actually would be recognised, so move to just checking the
commands indidually using "if (op & $command)". Additionally, add a
DIAGNOSTIC check and panic for the mixing of pre and post operations
(this is done on several other architectures already).
tested by several people; thanks!
ok dlg@, kettenis@, "the diff made sense" deraadt.
|
|
pick a new one from the list of possible routings if it isn't or if a pin is
currently not routed. Delay re-routing interrupts until we establish a
handler for it. This prevents us from messing with unused interrupt pins
which may have fatal consequences (some machines spontaniously reboot).
The heuristics for picking an interrupt from the list of possibe ones
probably needs some tweaking still, but this makes several NVIDIA-based
boards work much better than before.
tested by many, ok marco@
|
|
and even then it didn't work. we have higher standards than this.
|
|
|
|
|
|
|
|
day when this is useful.
mostly macro magic that does nothing. only actually useful on amd64 for now, compliments of art.
|
|
Positive test results by a handful of people. Ok kettenis@
|
|
pointless and just makes the code different for no reason. This moves i386 and
amd64 bus_dma to being a lot closer to identical.
suggestion to just remove the prefix instead of merge them from deraadt@.
no objections art@, kettenis@, ok weingart@
|
|
|
|
|
|
tag and pin. Reduces the differences between the two architectures and I need
it to fix acpiprt(4)-based interrupt routing.
ok toby@, jordan@
|
|
|
|
vga1 at pci0
inteldrm0 at vga1
to
vga1 at pci0
inteldrm0 at vga1
drm0 at inteldrm0
i.e. a similar scheme to audio(4) where the interface attaches on top of
the wildly different drivers. This helps to clean up the code a lot
(more is coming) and help me start to move drm to being essentially bus
independent, which will help in the future.
|
|
In short, make cpu_unidle do what signotify used to do and
make signotify use cpu_unidle.
Also, include a cpu_unidle in need_resched, it won't change much right now
but will be needed in the future.
|
|
defines into real functions. since machdep.c is cluttered as it is move them
into bus_space.c (like amd64). a later commit will move the stuff from machdep
across too. since machdep.c is cluttered as it is move them into bus_space.c
(like amd64). a later commit will move the stuff from machdep across too.
some shrinkage stats:
GENERIC.MP 209.66kb
RAMDISK 50.84kb
RAMDISKB 50.04kb
RAMDISC 36.28kb
RAMDISK_CD 168.03kb
don't fill it up all at once!
claudio found no network performance hit. toby thought the code went
looked alright. art@ ok.
|
|
from ACPI for est on amd64. This incorporates a few changes from krw@
to fix minor nits, its unlikely to fix the problems with some machines
from acer and dell but lots of machines benefit.
ok krw@
|
|
|
|
This shaves 135.7kb from amd64 GENERIC.MP. An afternoons worth of
testing proved to art, toby and myself that this doesn't slow things
down. i386 will follow shortly.
ok weingart@
|
|
|
|
necessary, so that future hackers will not be mislead the same way I
was when looking at this code.
|