summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2010-04-09- add and enable pgs(4), a driver for the Programmers Switch found onJasper Lievisse Adriaanse
recent-ish macs with macgpio(4). Basically dropping one to DDB when pushed. ...and not to be confused by the "reset" button ;-) feedback and ok drahn@
2010-04-09Prevent an interrupt from causing recursion while holding the pmap hash lock,Dale Rahn
Otherwise a pmap_remove from a completed I/O may deadlock.
2010-04-09- don't use memset() where we should use bzero()Jasper Lievisse Adriaanse
* no binary change ok drahn@
2010-04-08Since we only start doing tlb shootdowns after setting the CPUF_RUNNING flag,Mark Kettenis
flush the TLB immediately after doing so, to make sure there are no stale TLB entries. Suggested by art@ ok art@, oga@, deraadt@, weingart@
2010-04-08Fill in the bus_dma_sync for intagp to use clflush instead of wbinvd()Owain Ainsworth
if supported. When we do memory management on intel this would lead to a LOT of wbinvd() to deal with gpu->cpu incoherency. no one wants that. Needed for sanity of inteldrm memory management which is coming up next.
2010-04-08On amd64, move the bus_dma buftype stuff that is only used by sg_dmaOwain Ainsworth
into the sg_dma code instead of main bus_dma. Add identical code to i386 since this will be used in the next commit. ok kettenis@ back in december.
2010-04-07Correctly initialize cursor attribute when this display is a console device;Miod Vallat
tested by marco@
2010-04-07Make suspend/resume work on MP machines (running an MP kernel). Joint workMark Kettenis
from mlarkin@ and me, with some amd64 fixes thrown in by deraadt@ ok marco@, deraadt@, pirofti@, mlarkin@
2010-04-06Split the device_register() code responsible for boot path recognition intoMiod Vallat
two distinct sets of routines: one for the ARCBios-compatible path used on non-KL systems (such as O2 and Octane), and one for the KL system using dksc() paths. When trying to match a dksc() path, walk the KL configuration of the whole system until the dksc controller is found; since the controller numbers are not assigned sequentially and contiguously, the old code would not work on complex systems (such as when booting from controller #6 when #3 to #5 are unaffected).
2010-04-06Obtain struct sgi_device_location for the console input and output devices,Miod Vallat
and compare against them when attaching potential console drivers, to figure out whether they indeed are acting are console devices or not.
2010-04-06Add more KL grovelling routines: one routine to enumerate on all nodes,Miod Vallat
and routines to turn a KL console and a KL component structs, respectively, into struct sgi_device_location for further device identification. XXX Due to the way PCI devices are numbered on PIC buses, this code is tainted XXX by knowledge about PIC widgets, to compensate. I have considered changing XXX xbridge(4) to have our PCI device numbering match KL on PIC-connected XXX devices, but I expect this to be even uglier. This is not settled yet.
2010-04-06Introduce struct sgi_device_location to carry enough information to uniquelyMiod Vallat
identify a given device by its physical connection, and add a lazy compare routine. This will be used shortly.
2010-04-06Provide WIDGET_ID_FOO() macros to extract parts of the ID register value,Miod Vallat
instead of duplicating tedious mask and shift constructs MAXINT times.
2010-04-06sparc64 has no boot(8) page; from Daniel DickmanJason McIntyre
2010-04-06se(4) now fits, for you sickos buying such strange hardwareTheo de Raadt
2010-04-05Make this work properly after the cpu_info indexing change.Mark Kettenis
tested by ratchov@
2010-04-05Fix indentation.Mark Kettenis
2010-04-05Be sure to preserve boot code load address and size information whenMiod Vallat
writing a new VID label.
2010-04-04Fix build after spc_scsi_cmd() prototype change.Miod Vallat
2010-04-04regenMiod Vallat
2010-04-04OpenBSD uses bus_space_copy_#, not bus_space_copy_region_#. Make sure only theMiod Vallat
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.
2010-04-04Fix bus_space_{read,write}_raw_region_# operation.Miod Vallat
2010-04-03Minor reliability fixes:Miod Vallat
- clear initrd signature before returning to PMON or to the loaded kernel - fail /etc/boot.conf access when loading from an initrd image, instead of letting it point to the beginning of the kernel image and have the code complain of lines being too long. Bump minor version.
2010-04-03se* cannot fit until I resize the mediaTheo de Raadt
2010-04-03add bnx; from bradTheo de Raadt
2010-04-02Put se(4) onto these ramdisksTheo de Raadt
2010-04-02SiS 190 ethernet driver ported from FreeBSD by Christopher ZimmermannTheo de Raadt
<madroach@zakweb.de>. SiS 191 is not verified to work yet because he does not have the hardware; if anyone has it, please contact him.
2010-04-02For the VT8251 host bridge, only attach the pci bus is non-zero, otherwiseMark Kettenis
keep attaching bus 0 forever. tested by mk@
2010-04-02fix an ugly constructTheo de Raadt
2010-04-02Clear the PG_PMAP_EXE flags whenever writable mappings are created.Dale Rahn
ok deraadt@ kettenis@
2010-04-02Remove parent/slave mode of rbus as nothing uses it.Jonathan Gray
ok kettenis, sgi usage of rbus_new_body() pointed out by miod
2010-04-01Avoid null pointer dereference. Pointed out by Nick Hudson; variant on hisMark Kettenis
diff from NetBSD.
2010-04-01Don't index cpu_info by apic id, but by device unit number instead. RecentMark Kettenis
Intel CPUs come up with apic id's >= 32, even on systems with less than 32 logical CPUs. ok krw@, marco@; tested by deraadt@
2010-04-01Allow for multiple CPUs by moving to an array of cpu_info.Joel Sing
ok kettenis@
2010-03-31More carefully manage PG_PMAP_EXE bit and cache flushing on pmap_protectDale Rahn
operations, where X or W is taken away. ok deraadt@ kettenis@
2010-03-31Make sure the boundaries of uvm_pglistalloc() calls are set up with lowMiod Vallat
being page-aligned, and high being end of page (i.e. high & PAGE_MASK == PAGE_MASK) everywhere, for consistency. Future code will depend on this. ok deraadt@
2010-03-31Add bnx firmware on installation media; this causes a media oflow, soMiod Vallat
enlarge bsd.rd filesystem; this in turn causes a cd oflow, so enlarge cd filesystem. ok jsing@ deraadt@
2010-03-31if bthub defines are needed by conf.c, they must come from files.bluetoothTheo de Raadt
2010-03-31fix typoTheo de Raadt
2010-03-30Add missing bthub device entries on arches that support bluetooth.Matthieu Herrb
ok miod@, deraadt@, todd@.
2010-03-30Prevent the apmd/x races for good.Owain Ainsworth
When we hit suspend time, go through all wsdisplays on the system. if they are in mode MAPPED, but not MODE_DUMBFB then if possible do a full vt switch to a !mapped vt, and prevent switching back until resume time. This has to be called from MD code because this involves userland running so that X can run the vt switch signal handler. This way, any case where we are using the "poke registers from userland" model, we will not be on the hardware when we go down, so the kernel can actually handle thing properly. Tested on several acpi laptops (by kettenis@ and ian@), x40 (me and beck@ at LEAST) and zaurus (me). Maybe others, but if so I forgot who at this time.. Idea from deraadt somewhere over the Faroe Islands (I thought of a similar thing myself a while ago). Much prompting from him. Ok and comments miod@
2010-03-30Since we use a direct mapping for the area where we save a process' floatingMark Kettenis
point registers, we no longer need to flush/purge the cache.
2010-03-30We will never condtionalize ficache on PTE_PROT(TLB_EXECUTE) because itTheo de Raadt
is risky. Delete the comment suggesting we might.
2010-03-29PMAP_CANFAIL for bus_dmamem_map on all other architectures (and someOwain Ainsworth
whitespace tweaks on i386 so that it matches). ok kettenis@
2010-03-28Fix user-after-free bug in pmap_remove(). Page table pages are freed as soonMark Kettenis
as the last page table entry that was actually used is cleared. So make sure we check the page table page is still there for every page we remove. Otherwise we will bring back the tlb entry and cache lines when we touch the freed page, and we will create an illegal alias (non-equivalent mapping) as soon as the page gets re-used. Seems to fix the last remaining issue with fast page recycling (although I need to do a bit more testing to be sure). Help from drahn@, ok jsing@ and miod@ (for an earlier version of this diff)
2010-03-28Add envy(4), as found on Tezro; attaches, not tested yet because marco@ doesn'tMiod Vallat
seem to have speakers at home.
2010-03-28Correctly account devio usage, instead of relying upon unused devio registersMiod Vallat
being set to zero; this allows a full PIC bus to correctly configure I/O resources. While there, when initializing a ppb, setup I/O resources before memory resources; without this a ppb connected to a PIC could not get I/O resources if devices behind it would use both I/O and memory resources.
2010-03-28Correctly report the R16010 version.Miod Vallat
2010-03-28Driver for microguru sensor microcontroller found on ABIT motherboards.Theo de Raadt
Driver written by Mikko Tolmunen <oskari@sefirosu.org>
2010-03-28Allow a multiprocessor kernel to compile.Joel Sing
ok kettenis@