summaryrefslogtreecommitdiff
path: root/sys/arch/sgi
AgeCommit message (Collapse)Author
2011-11-15Simplify various parts of the puc(4) attachment code. Tested lightlyTheo de Raadt
by krw and myself.
2011-11-08Garbage collect now unused MKDEP definitions. ok deraadt@Matthieu Herrb
2011-10-27Specify the TLS variant for each platform.Philip Guenthe
2011-10-10Extend pci_probe_device_hook() on sgi xbridge(4) to return either the straightMiod Vallat
accessors or the byte-swapped accessors, depending upon the byteswap setting of the device we are trying to attach. This allows for the removal of byteswap knowledge from ioc(4) and iof(4) drivers. While there, build pci_chipset_t md structs by bcopy'ing a template and filling the few runtime fields, instead of assigning every field of them.
2011-10-10Introduce pci_probe_device_hook(pci_chipset_tag_t, struct pci_attach_args *).Miod Vallat
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.
2011-10-06ccd goes to the atticTheo de Raadt
discussed with jsing and millert
2011-07-10Register the Heart clock as a timecounter on Octane systems.Miod Vallat
2011-07-10Oops. Copy just the comment about the checkdisklabel() call, notKenneth R Westerback
the checkdisklabel() calls themselves. What's good for hppa/hppa64 is not necessarily good for sgi/macppc. Spotted by deraadt@.
2011-07-10If there is recognized MD disk partitioning info, use it to determineKenneth R Westerback
where to write the OpenBSD disklabel even if there isn't yet a valid OpenBSD disklabel at that location. Alpha/Mac68k/Sparc/Sparc64 to come.
2011-07-09Repair boot32 build after zlib upgrade.Miod Vallat
2011-07-08When reading dos labels use DOS_LABELSECTOR and don't use LABELOFFSET. For ↵Kenneth R Westerback
all these arch's LABELSECTOR == DOS_LABELSECTOR == 1, and LABELOFFSET == 0. Thus, to quote bob, "This is a no-op". Makes the expression used when writing label the same as the one used in readdoslabel().
2011-07-07The drahn memorial bad kernel build fix: prevent blood pressurePhilip Guenthe
spikes in other developers by making it so that removal of a .d file without removing the corresponding object will result in the latter being treated as out of date. ok beck@ art@ drahn@
2011-07-06make clean should clean .d files, so as to leave a fresh canvas.Ted Unangst
ok beck deraadt
2011-06-29Replace all instances of "scsibus* at hba?" with a single "scsibus* atMatthew Dempsky
scsi?" rule, similar to how ethernet PHY drivers attach at mii. Discussed on icb.
2011-06-26if_downall() cannot be done MI in sys_reboot() because vfs_shutdown()Theo de Raadt
might need network (ie. nfs). Move the call to the MD boot() routines. This cause for boot hangs diagnosed by kettenis.
2011-06-24machdep.kbdreset enables a shutdown by Ctrl-Alt-Del on amd64 andChristian Weisgerber
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@
2011-06-23Fix the error path in bus_dmamem_map.Ariane van der Steldt
As discussed on icb: remove the comment, remove pmap_remove (uvm_km_free does that for us). ok oga@, deraadt@
2011-06-05Move the bufcachepercent setting code to MI locations -- set it to 42%Theo de Raadt
for now; that is unlikely to hit some of the remaining starvation bugs. Repair the bufpages calculation too; i386 was doing it ahead of time (incorrectly) and then re-calculating it. ok thib
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-24On OpenBSD, we've always attached scsibus(4) to umass(4), even forMatthew Dempsky
ATAPI devices. atapiscsi(4) is only for handling ATAPI devices on an ATA bus, so umass(4) shouldn't care about it. ok krw@, dlg@; no objections from deraadt@
2011-05-21Add pci_intr_map_msi() stub.Mark Kettenis
2011-05-02Add PCI-Cardbus bridges and the most popular pcmcia and cardbus drivers. InMiod Vallat
my tree for a very long while, no reason not to allow people with such devices to have fun (and maybe experience new bugs) with them on sgi. Also, clean up some comments and explicitely mention which `option' lines are actually mandatory (ARCBIOS, TGT_xxx, etc).
2011-04-28- enable fenvMartynas Venckus
- add nearbyint, nearbyintf and nearbyintl implemented using fenv
2011-04-23Do not set kl_hub_widget[] default value more than once. Found the hard wayMiod Vallat
by deraadt@.
2011-04-23Move assignment of kl_hub_widget[] outside a #ifdef DEBUG ... #endif block,Miod Vallat
giving systems with non-default values a chance to work again. Pass the brown paper bag, please.
2011-04-23Partially revert 1.23, by removing the code which tries to pick the bestMiod Vallat
possible DMA window. This breaks systems which have physical memory contiguous to the selected DMA window. A fix is in the works, in the meantime the spice^WDMA should flow.
2011-04-21Fix dma_constraint upper limit computation. Logical or is not the same asMiod Vallat
arithmetic add.
2011-04-21Print memory sizes as longs. Stolen from sparc64.Miod Vallat
2011-04-21Use 64 bit integer types to compute IP35 memory ranges, to give machinesMiod Vallat
with memory beyond 4GB physical a chance to run. For some reason IP27 was already correct.
2011-04-21Revert the ``remove the `skip splraise/splx for IPL_NONE mutexes' optimization''Miod Vallat
change. It seems to have unexpected side effects, especially on MP systems, and drahn@ disagrees with the way this change has been done and think there is a better way to solve the original problem of msleep() fiddling with mutex internals.
2011-04-17On IP27 systems, fill the array of node hub widget numbers early, so that allMiod Vallat
hubs are known during autoconf. Then, pick the most populated 2GB window as our DMA memory window. xbridge(4) can thus program the correct settings regardless of the order in which the xbow(4) attach.
2011-04-16Use 'CLR(<buf>->b_flags, B_READ | B_WRITE | B_DONE)' regardless ofKenneth R Westerback
what the previous IO was. Less chance of copy and paste errors. Suggested by 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-04-15In days of yore one could arbitrarily whack buffer flags. Those daysKenneth R Westerback
are past. Use CLR() and SET() to modify necessary flags while leaving the flags used by the buffer cache in peace. Should make bufcache code much less confused about the state of the bufs used in reading/writing disklabels. Other such flag abuses no doubt await a visit. Errors in original diff found by miod@. ok beck@ deraadt@
2011-04-15Convert the kernel Makefiles to autogenerate dependencies during compilationPhilip Guenthe
using the -MD option to cc, with -MP, -MT, and -MF where needed, converting "make depend" to a no-op. This increases parallelism for those using "make -j" and keeps the dependencies up to date with each compilation automatically. sparc and vax users will need to rebuild gcc with support for the -M[PTF] options before config'ing with this diff.
2011-04-10A last few NULL -> 0 corrections.Miod Vallat
2011-04-09Make this compile without warnings in all modes, and do not use NULL whenMiod Vallat
integer zero is intended.
2011-04-07Do not use NULL in integer comparisons. No functional change.Miod Vallat
ok matthew@ tedu@, also eyeballed by at least krw@ oga@ kettenis@ jsg@
2011-04-06The various read*label() have stopped returning error strings for quiteMiod Vallat
some time, and return errnos instead. Fix or remove out-of-date comments mentioning the error strings, and make their callers check the return value against zero, not NULL.
2011-04-05Rename a few xbow global variable names to make them less ambiguous.Miod Vallat
Remember the hub widget number of each node, instead of only the master node. Use this in xbridge to compute the proper direct DMA map configuration register value (it needs to embed the hub widget number matching the physical address range). This should allow us to pick memory from a different node than the one we booted from, as the DMA window, if wanted.
2011-04-05Get rid of the ATE code, and do not assume the direct DMA window is set upMiod Vallat
at physical address zero onwards, but instead assume it is controlled by the dma_constraints range. This will eventually allow a different window to be selected.
2011-04-03Enable the use of all the memory found on IP27 and IP30 kernels. CommittedMiod Vallat
from an IP35 system with half its memory outside the dma_constraint range.
2011-04-03Add a consistency check for the value returned by pmap_extract() against theMiod Vallat
dma_constraints range in _dmamap_load_buffer. From and ok beck@
2011-04-03Make sure dma_constraint is listed in uvm_md_constraints[] when it does notMiod Vallat
span the whole physical address space, for the pmemrange magic to operate correctly.
2011-04-03In mtx_leave(), make sure resetting mtx_lock is the last operation on theMiod Vallat
struct mutex. Modelled after hppa.
2011-04-03Remove the `skip splraise/splx for IPL_NONE mutexes' optimizations. It is notMiod Vallat
always gaining anything, and msleep() implementation depends upon mtx_leave() invoking splx().
2011-03-23Normalize sentinel. Use _MACHINE_*_H_ and _<ARCH>_*_H_ properly and consitently.Paul Irofti
Discussed and okay drahn@. Okay deraadt@.
2011-03-18Fix obj directory probing to support cross compiling.Matthew Dempsky
"Go for it" deraadt@
2011-03-13Disable write gathering on devio settings we inherit from ARCS.Miod Vallat
2011-03-13Change daddr_t to daddr32_t. The bootblocks on our architectures onlyTheo de Raadt
do 32-bit block spanning. If later on we get some that can/should do 64-bit, that can be done now using daddr64_t (but of course, we are taking this step to finalize the daddr_t 64-bit conversion). ok miod krw