summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2009-04-15Disable DEBUG now, it floods too much information.Miod Vallat
2009-04-15A firsh shot at IP27 interrupts; currently the code assumes it runs onMiod Vallat
the first cpu on dual-cpu boards; this will be fixed later. Just don't disable it at the prom.
2009-04-15Change the way the widget interrupt register is computed and have it becomeMiod Vallat
a complete physical address. Also add proper cpu pa<->device pa for dma on Origin 200. This lets xbridge work and route interrupts correctly on Origin 200.
2009-04-15Oops, referenced an include file which I don't plan to commit yet.Miod Vallat
2009-04-15Only enable the passthrough interrupt for serial ports, and let com(4) manage.Miod Vallat
Otherwise we get stuck interrupted by the ``tx empty'' condition. Also, on Origin 200 the second interrupt vector has to be computed differently, which adds to the ``I wish I never had looked at this code'' trauma.
2009-04-15Remove en(4) (no manpage present, no none removed), and the midway.c glue codeOwain Ainsworth
for it. It is very unlikely this still compiles, the hardware is dead. It isn't in any arch's config file. the sparc sbus code is even commented out in files.sparc. Not to mention that the code is fucking appauling, doesn't even know that sparc got bus.h ages ago, still uses vtophys(), defines all types of functions to arch-specific hacks. I will miss the bitchy comments, though... As a note to other drivers: this is the fate that awaits you if you screw up my ctags on commonly used functions. "you have my ok" claudio@, "zap zap zap" deraadt@ If i've missed any bits, please remove them.
2009-04-15fix properly; size gets decremented while we check the segments, so save it soOwain Ainsworth
when we setmapsize it's not zero. *sigh*
2009-04-15make load_raw do the same as the others and set mapsize and nsegs toOwain Ainsworth
zero so that we return an empty map on error.
2009-04-15bus_dmamap_load_raw didn't set map->dm_mapsize on successful load.Owain Ainsworth
I just spent five hours looking in the wrong place because of this.
2009-04-14Convert the waitok field of uvm_pglistalloc to "flags", more will be added soon.Owain Ainsworth
For the possibility of sleeping, the first two flags are UVM_PLA_WAITOK and UVM_PLA_NOWAIT. It is an error not to show intention, so assert that one of the two is provided. Switch over every caller in the tree to using the appropriate flag. ok art@, ariane@
2009-04-14enable ix(4).Jonathan Gray
ok reyk@
2009-04-13Ignore zero-sized regions from the BIOS memory map when reserving root PCIMark Kettenis
bus address space. Fixes a problem reported by david@.
2009-04-13The start of Origin 200 support. Based on some code contributed by pefo@Miod Vallat
some years ago for KL enumeration, building on the existing XBow support to limit ourselves to a single node for now. This is a work-in-progress; it currently lacks complete interrupt code, as well as PCI resource management. And there are likely bugs creeping inside.
2009-04-13Also match on Uniqueware family 0x91, and correctly report the third byteMiod Vallat
of the Ethernet address.
2009-04-13Add missing option BOOT_CONFIGMiod Vallat
2009-04-13Remove commented out debug options.Miod Vallat
2009-04-13Explicitly test whether the SUNW,start-cpu-by-cpuid interface is availableMark Kettenis
instead of assuming it is. Makes sure we actually spin up the secondary CPUs on Serengeti machines with certain firmware revisions. Tested by Christophe Latt.
2009-04-12Implement /dev/mdesc, a device to read the machine description on sun4vMark Kettenis
(virtual) machines.
2009-04-12Interrupt support for IOC3 and its subdevices (currently limited to theMiod Vallat
SuperIO part, the Ethernet part needs a whole driver); kernel now boot single user (or bsd.rd). Joint work with jsing@
2009-04-12Add code to prevent the MI pci code to cause IOC3 devices to freeze andMiod Vallat
hog the bus, and also to fake a valid interrupt register. The IOC3 device is not a PCI device at all, but pretends to be one. Except its own registers overlap the PCI configuration space, and some flavours do not support disabling memory space in the control register, violating the PCI specs. Fun.
2009-04-12Needs <machine/atomic.h> to compile.Miod Vallat
2009-04-12Get com console global variables from <dev/ic/comvar.h> instead of declaringMiod Vallat
them manually.
2009-04-12Better constraints on the temporary register in atomic_{set,clear}bits_int.Miod Vallat
2009-04-12need nvram to link; ok miodTheo de Raadt
2009-04-12Move code handling Machine Descriptions out of the cbus(4) driver.Mark Kettenis
2009-04-11Create extents for resource accounting on the root PCI bus and populate themMark Kettenis
based on the BIOS memory map.
2009-04-11There is no support for building multi-socket machines in AMD Family 11hMark Kettenis
processors, so the registers to configure addition HyperTransport links are absent. Don't try attaching addition pci busses on these processors to avoid probing non-existant registers.
2009-04-10Catch up with sparc changes (bcopy fix, struct cpuinfo, etc); still dies earlyMiod Vallat
with so-called ``external memory fault'' which cause I can't figure out.
2009-04-10Don't blindly dereference a NULL pointer when the boot device is not known.Miod Vallat
2009-04-10Use soft interrupts to dispatch pcmcia device interrupts; this ensures theMiod Vallat
driver handlers get invoked at the right level. Parts from NetBSD.
2009-04-10generic soft interrupts support for sparc. Soft interrupt handlers are nowMiod Vallat
kept in a separate intrhand array, with their own enable bits so that soft interrupts sharing the same level only get invoked if really triggered. Inspired by NetBSD with significant changes. ok kettenis@
2009-04-10When deciding whether a sti@pci board is the console, compare all valid BARMiod Vallat
addresses against PAGE0 information, instead than only the BAR mapping sti region #0; on Visualize FXe, PAGE0 will point to another BAR and we would not recognize the display as the console device. Tested on Visualize FX4 (on C240), Visualize EG (on B1000) and Visualize FXe (on B2000).
2009-04-10fix typos introducedTheo de Raadt
2009-04-09in bus_dmamap_load_raw, only map the requested number of bytes into theDavid Gwynne
dmamap rather than all the bytes that are described by the sg list we're mapping. tested on iwn by me and beck@
2009-04-09unrevert marco's revert of my bus_dmamap_load_raw change now that i foundDavid Gwynne
the bug in it. bugfix will be committed next. make bus_dmamap_load_raw respect the constraints of the dmamap we're loading the raw memory into, particularly the segment size constraint.
2009-04-08Cleanup arm soft interrupt handling; remove the unused IPL_SERIAL and renameMark Kettenis
IPL_SOFTSERIAL to IPL_SOFTTTY. tested by oga@ ok miod@
2009-04-08Rever _raw change from dlg because it breaks iwn.Marco Peereboom
ok oga
2009-04-07Eliminate useless loop over partitions and ignore zero lengthKenneth R Westerback
partitions in bsd_to_sun(), even if their offsets are nonsense. Theo says if sparc64 compiles so will sparc. Fixes some useless disklabel warning messages. ok miod@ deraadt@
2009-04-06Remove the only (commented) instance of UVM_PAGE_INLINE from the treeOwain Ainsworth
now that it has been removed. uncommenting that would not even have been the correct way to enable it. ok miod@
2009-04-05In the rare case where after we've loaded the iomap into the hardware,Owain Ainsworth
if we fail while assembling the dmamap due to the memory not fitting into our constraints we'll return from the function with the iomap still loaded, and more importantly with memory still allocated from the extent(9). So in such a case, make sure we clean up after outselves. In order to make this cleaner, remove an impossible condition check (kettenis and myself are satisfied that it will never happen), and make iomap_load_map void (it can't fail), so that we can only fail after both the extent is allocated and the iomap is loaded, and not inbetween the two. I tested iommu, kettenis tested viommu. ok kettenis@.
2009-04-04Bump the size of the array that we use to store bootpath components. Makes theMark Kettenis
t5120 and similar systems boot from our install CD-ROM.
2009-04-04Remove an unused function inherited from NetBSD that deals with a brokenMark Kettenis
SiS chipset that we'll never see on and amd64 machine. ok oga@
2009-04-04Remove unused #include.Mark Kettenis
2009-04-04make bus_dmamap_load_raw respect the constraints of the dmamap we'reDavid Gwynne
loading the raw memory into. similair to the change made to src/sys/arch/amd64/amd6/bus_dma.c 1.18
2009-04-04make bus_dmamap_load_raw respect teh constraints of the dmamap we'reDavid Gwynne
loading the raw memory into, particularly the segment size constraint. written in june/july last year, but my studies held me back from handling it.
2009-04-04Cleanup debug printfs.Mark Kettenis
2009-04-04Cleanup debug printf.Mark Kettenis
2009-03-31bzero pci attach argsMark Kettenis
2009-03-31bzero pci attach argsMark Kettenis
2009-03-31- remove obsolete commentArtur Grabowski
- remove dead (#if 0) code - move switch_error panics to after cpu_switchto to make branch prediction happier and the code more readable. no functional change