summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2009-11-11Let ioc(4) pass the information whether it is an onboard device or not, to itsMiod Vallat
subdevices; use this on iockbc to only perform the fuel workaround on the onboard ioc.
2009-11-11Perform a bit more kbc initialization, instead of relying upon the prom toMiod Vallat
do this for us; PS/2 ports on CADduo boards attach keyboard and mouse now. ok jsing@
2009-11-11It turns out PCI IOC3 card which embed both the Ethernet controller and theMiod Vallat
superio chip interrupt on two different pins (yet do not advertize themselves as a multi-function device, of course). So, on one hand, this makes the ioc attachment code simpler, because it simply needs to map interrupt pins A and B, and another hand, this moves all the interrupt knowledge to the PCI bridge driver, since routing of pin B differs whether the device is the onboard IOC3 chip (and able to use any of the 8 bridge interrupt sources...) or on a PCI board (with pin mapping sane, since controlled by the bridge). This makes superio interrupts on CADduo boards work. Tested to cause no regressions on Origin 200, Octane and Fuel.
2009-11-10Handle LOMlite2 in an interrupt-driven way; avoids using delay(9) once theMark Kettenis
machine is up and running.
2009-11-10Add iockbc(4), a driver for the PS/2 keyboard and mouse interface found onJoel Sing
ioc(4) devices. Joint work with miod@. Committed from the glass console on an SGI Fuel.
2009-11-10Fix indentation.Joel Sing
2009-11-09Fix error message.Mark Kettenis
2009-11-09Every selwakeup() should have a matching KNOTE() (even if kqueue isn'tNicholas Marriott
supported it doesn't do any harm), so put the KNOTE() in selwakeup() itself and remove it from any occurences where both are used, except one for kqueue itself and one in sys_pipe.c (where the selwakeup is under a PIPE_SEL flag). Based on a diff from tedu. ok deraadt
2009-11-09Make sure we correctly return failure in l1_serial_ppp_read() when a readMiod Vallat
fails after an escape character, and while there put explicit casts to l1_command_build() variadic arguments.
2009-11-09Only invoke the L1 code if IP35.Miod Vallat
2009-11-08Add code to send L1 commands and parse command results; use it to add a wayMiod Vallat
for IP35 systems with IOC3 onboard Ethernet to get their Ethernet address since it's no longer stored as an owmac(4) device on the IOC3 device itself.
2009-11-08Relocate FDT blob such that it doesn't clash with the kernel we're going toMark Kettenis
load. This makes it possible to load bsd.rd on the RB600. Bump version number. ok dms@
2009-11-08Move KERNEL_LOCK/UNLOCK dance into softintr_dispatch().Mark Kettenis
ok miod@, dms@
2009-11-08Make sure xscale_cache_flushD_rng will not try to flush more than theMiod Vallat
cache size; might skirt some cache hazards. ok deraadt@
2009-11-08Figure out the size of the SSRAM used as internal memory by the chip onMiod Vallat
attach, print it, and decide how many RX descriptors to use accordingly.
2009-11-08Do not risk touching nonexisting registers on MENET boards; untested due toMiod Vallat
lack of such hardware.
2009-11-08update description for iwn(4)Damien Bergamini
2009-11-07According to Brad, bnx(4) is not endian-safe, so remove it from sgi kernels.Miod Vallat
2009-11-07Blink leds on the DEC 3000 models (three different led types).Miod Vallat
2009-11-07In case an ioc(4) device has lost its NIC component, do not recognize itMiod Vallat
as the onboard ioc device, if one has already been found on this node. Also, on Origin 300, do not attempt to attach the PS/2 controller on the onboard ioc(4) since PS/2 ports are not wired.
2009-11-07A few more PCI Ethernet controllers; from Brad.Miod Vallat
2009-11-07Add a bunch of PCI audio devices, only compile tested; from Brad.Miod Vallat
2009-11-07Replace option TGT_ORIGIN200 and TGT_ORIGIN2000 with a single option,Miod Vallat
TGT_ORIGIN, which enables support for all IP27 and IP35 systems. The original two options have always been used together, and go back to when pefo thought supporting multiple nodes would be significant work. Since an Origin 200 can be a dual-node system, making a distinction between single node and multiple node systems is a moot point anyway. Be sure to rerun config(8) before rebuilding a kernel.
2009-11-07Change sgi system identification from a single system type list, to a smallerMiod Vallat
system type list (which really is the system family) and a subsystem type. No functional change yet.
2009-11-06When rebooting IP27 or IP35 systems, do not request the prom to skip diagnosticsMiod Vallat
anymore, as this causes the nsphy connected to the onboard iec to sometimes disappear after a warm boot. Unfortunately this brings back the long reboot times on Origin 200, despite still asking for no memory test.
2009-11-04Get rid of __HAVE_GENERIC_SOFT_INTERRUPTS now that all our platforms support it.Mark Kettenis
ok jsing@, miod@
2009-11-04Replace the #ifdef NON_DEBUG and #ifdef NOTDEF_DEBUG mess with more saneJoel Sing
DPRINTF/DNPRINTF() debugging.
2009-11-04MP safe mutex.Takuya ASADA
ok miod@
2009-11-03Align each RX descriptor to a 4KB boundary; fixes poor RX performance (chipMiod Vallat
would stop RX operation if it had to cross a 4KB boundary during receive).
2009-11-03A few cleanups and also reflect duplex state in mcr in addition to tcsr.Miod Vallat
2009-11-03Offset the start of the RX buffers by two bytes, so that the ethernetMiod Vallat
header is properly aligned; speeds up RX buffer -> mbuf copies.
2009-11-03fix previous commit.Damien Bergamini
do not ignore BUS_DMA_NOCACHE (used by some variants of auich and ati drm only). ok kettenis "That looks right" deraadt
2009-11-02s/hz/Hz/ on multiples of the SI unit hertz other than MHz.Igor Sobrado
reminded by STeve Andre.
2009-11-02Got the RX threshold interrupt working, does not help RX performance though;Miod Vallat
while there, silence overzealous messages when the TX empty interrupt fires before we disable it.
2009-11-02Remove file that should never have been there.Mark Kettenis
2009-11-02A few fixes and improvements:Miod Vallat
- double the number of rx buffers. - copy packets of 104 bytes or less entirely in the tx descriptor, instead of only doing this for packets smaller than an Ethernet header. - correctly disable the rx threshold interrupt. Otherwise, one received frame every 64 would not be handled because we are not using this interrupt.
2009-11-02When the iec(4) Ethernet address is unkown, pass ff:ff:ff:ff:ff:ff instead ofMiod Vallat
00:00:00:00:00:00, in order to trigger the code which will assign a `feel bad' random address.
2009-11-01Move IS[12]BYTEMSG and ISEXTMSG defines to a common place.Federico G. Schwindt
Pointed out by miod@. krw@ miod@ ok.
2009-11-01Remove bogus #define __HAVE_GENERIC_SOFT_INTERRUPTS. No code change.Mark Kettenis
2009-11-01Call selwakeup()/KNOTE() even if the queue has emptied completely.Nicholas Marriott
ok miod
2009-11-01Looks like I forgot to add files again. These are the most important filesMiod Vallat
for the new iec(4) driver. Reminded by brad@
2009-11-01Driver for the sgi IOC3 onboard Ethernet interface. Tested on Octane only soMiod Vallat
far, and needs help to figure out its Ethernet address on IP35 systems. Heavily derived from mec(4) written by Izumi Tsutsui and Christopher Sekiya, although it required many changes to fit the IOC3 chip.
2009-10-31A chunk from my WIP bootblocks tree went in by mistake in previous commit;Miod Vallat
spotted by deraadt@
2009-10-31Establish a shutdown hook to disable the watchdog timer to prevent watchdogMark Kettenis
triggers after the kernel has been halted.
2009-10-31Make sure we don't insert and entry into the list of pending commends twice.Mark Kettenis
2009-10-31in the absense of link state handling, drivers should still be silent; ok miodTheo de Raadt
2009-10-31Do not override AS and LD, to be cross compilation friendly; noticed by syuu@Miod Vallat
2009-10-31s/Mhz/MHz/, MHz is a multiple of the SI unit hertz (whose symbol is Hz).Igor Sobrado
2009-10-31Use suser when possible. Suggested by miod@.Federico G. Schwindt
miod@ deraadt@ ok.
2009-10-31Add missing KNOTE() calls after selwakeup(), until we decide if the KNOTE()Theo de Raadt
calls can go directly into selwakeup() safely long discussion with nicm, murmers of consent from tedu and miod, noone else seems to care of kqueue is busted as long as it makes their sockets move data fast... pretty sad.