summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2012-08-18glxpcib(4) invokes pcibattach assuming pcib doesn't need more than aMiod Vallat
`struct device' as its softc. This is not the case on loongson, and the glxpcib softc gets subtly corrupted, causing a kernel panic when attempting to select the glxpcib timecounter as the current timecounter. Skirt this by not using the pcib softc fields if we are invoked from glxpcib - it is not really worth putting pcib_softc in a header for the sake of MI glxpcib code.
2012-08-17Properly initialize the IOMMU control and status register for pyro(4).Mark Kettenis
Fixes DMA problems spotted on the v445.
2012-08-17Turns out interrupts for Ebus devices are wired to the *other* PCI Expres leafMark Kettenis
on the v445 (compared to the v215/v245). Generalize the code to allow for arbitrary wirings. Makes the serial console on the v445 work.
2012-08-17cleanup mpii_get_ioc_pg8 mess, no functional changeMike Belopuhov
2012-08-17Fix typos in DPRINTF() so error messages refer to correct *hci.Kenneth R Westerback
Spotted by Artturi Alm. Thanks!
2012-08-17Fix possible panic while switching from STA mode into hostap/ibss modes.Stefan Sperling
ieee80211_create_ibss() resets the set of supported rates but failed to update the index into the rate set array accordingly. If the rate configured during STA operation didn't belong to the newly configured rate set the system ran into an assertion ("bogus xmit rate %u setup") while trying to create the IBSS. ok fgsch@
2012-08-17update to firmware 1.4.55 via freebsd revision 236212.David Gwynne
2012-08-17add support for "physical devices" on skinny controllers.David Gwynne
these controllers let you specify disks that should be accessed directly rather than be part of logical volumes. apparently you can plug in things like tape drives too. anyway, physical devices are exposed via a separate scsibus attached to mfi. ok mikeb@
2012-08-16display board model and firmware revision like mfi/mfii do; ok dlgMike Belopuhov
2012-08-16we are past the point where timecounters may disappearTed Unangst
ok miod
2012-08-16we're not going to loop in rxeof here as well so remove the leftoversMike Belopuhov
from brad, ok jsg
2012-08-16revert previous; wrong diffMike Belopuhov
2012-08-16mfii_exec_done clears ccb_cookie, so mfii_exec should test that, notDavid Gwynne
ccb_done.
2012-08-16fix mfi_poll by having it do delays between loops, and breaking onDavid Gwynne
timeouts. how embarrassment. implement mfi_exec for doing sync executions of commands in process contexts and cut mfi_mgmt over to it.
2012-08-16rework mfi_poll so it will do all the completions on a ccb includingDavid Gwynne
calling the done handler. this makes it consistently complete scsi io with all the proper error checking.
2012-08-16stop passing mfi_softc around as a member of the ccb, consistently give itDavid Gwynne
as the first argument to functions. like mfii.
2012-08-16scrub ccbs when we're about to use them, not when we put them backDavid Gwynne
on the free list. ccbs can be reused, so we dont want old state screwing up new commands.
2012-08-16move the dma syncs for the ccb data into ccb_done, so we can do it onceDavid Gwynne
rather than put the code everywhere.
2012-08-16fix up the dma sync for the command frame in mfi_done.David Gwynne
2012-08-16remove pool hiwat call. hiwat is less useful than it used to be.Ted Unangst
less greedy pools are nicer pools.
2012-08-16white space, no real changesDavid Gwynne
2012-08-16move completions of ccbs out of the postq mutex. avoids the unlikely butDavid Gwynne
still possible deadlock that can occur if a completion starts a polled command.
2012-08-16replace the SLIST for ccbs with a SIMPLEQ so i can add stuff to the endDavid Gwynne
of ccb lists.
2012-08-16rewrite the mfii_mgmt path to be a bit more... symmetrical.David Gwynne
2012-08-15use Lk for links;Jason McIntyre
2012-08-15we're not going to loop in rxeof here as well so remove the leftoversMike Belopuhov
from brad, ok jsg
2012-08-15Enable IPv6 autoconfprivacy by defaultsperreault
diff originally by stsp@ "please commit it" deraadt@ "don't care" stsp@ "don't like" bluhm@
2012-08-15add oce and mfii; ok deraadt dlgMike Belopuhov
2012-08-15Remove the old ioctl interface which has been disabled for overJonathan Gray
six years (since bioctl support was added). ok krw@ dlg@
2012-08-14Add framework support for controlling symbol visibility in sharedMatthew Dempsky
objects, inspired by NetBSD. Discussed with kurt, kettenis, and millert. ok kettenis
2012-08-14whitespace cleanup; no binary changeMike Belopuhov
2012-08-14use scsi_get_link to find out the name of a child device for bioctl ratherDavid Gwynne
than snoop scsi commands and copy it in an io path. no functional change, but the code has one less XXX now.
2012-08-14expose the max number of logical volumes the hardware supports as the widthDavid Gwynne
of its scsibus. only advertise 1 lun on logical volumes instead of letting the midlayer fix it up to 8. give every target on the bus max_cmds openings. iopools means they will properly share access to them. this in particular is useful on skinny controllers which only advertise 31 command slots. if you have 16 volumes, theyll only get 1 opening each with the old maths. this way round the ones that are busy will share the slots. tested on a perc5 with two volumes and hard workloads.
2012-08-14regenDavid Coppa
2012-08-14Replace the encoded character in the device name: Clang doesn't like it.David Coppa
From Brad. OK jsg@
2012-08-14dont maintain tables of all the pci subtypes just so we can print thingsDavid Gwynne
like "Dell PERC 5/i" in dmesg. the firmware on the board knows its own name so we can use that instead. saves some bytes in the kernel.
2012-08-14print the boards name (eg, perc 5/i) according to the firmware like mfii.David Gwynne
ok deraadt@
2012-08-14gc sc_flags now that the iop struct can tell us where the different IDBsDavid Gwynne
are. noted by haesbaert@
2012-08-14oops, dont claim FUSION is an iop type we will support in mfi(4)David Gwynne
2012-08-14move knowledge of the location of the inbound doorbell out of code inDavid Gwynne
transition_firmware into a member of the iop structures. ok mikeb@ haesbaert@
2012-08-14enable mfii(4).David Gwynne
ok deraadt@
2012-08-14wire in mfii(4)David Gwynne
ok by mikeb@ haesbaert@ deraadt@ matthew@
2012-08-14introduce mfii(4), a driver for the generation of megaraid sas boardsDavid Gwynne
after the ones currently supported by mfi(4). mfii is to mfi what mpii is to mpi. it is also strange in that it reuses bits of both mfi(4) and mpii(4) hardware structures. the register layout is sort of like mfi, but the majority of the messaging (post and completion paths) are like mpii. the new logical disk io message is the same as the scsi io command in mpii with an extra raid context bit on the end. other operating systems have supported the new hardware in their existing megaraid sas drivers by cutting them in half and using a metric buttload of function pointers at pretty much every driver entry point to switch between the non-fusion behaviour and the fusion behavior. the only really common code seems to be the handling of the management commands before branching off into the chip specific message handling to move it on and off the hardware. i'll deal with abstracting the mgmt stuff out later. this is working so im getting it in now to polish further in the tree. ok by mikeb@ haesbaert@ deraadt@ matthew@
2012-08-14split the definitions of the hardware out into a separate file so it canDavid Gwynne
be reused by a driver for the recent megaraid sas fusion boards. mikeb was also interested in doing this a while back to make working on mpii.c easier. ok by mikeb@ haesbaert@ deraadt@ matthew@
2012-08-13sync a comment with reality and remove an error path duplicate; from bradMike Belopuhov
2012-08-13get rid of the last foo_lo and foo_hi bits i could find in the hardwareDavid Gwynne
structures and use htole64 instead of htole32(addr >> 32); htole32(addr); gets rid of "handy" stack variables to get the dva to 64bits. sprinkle some more byte swaps for things that should have it. tested on a perc5 (xscale)
2012-08-13do appropriate bus_dmamapy_syncs around the pcq/completion ring.David Gwynne
tested on a perc5 (xscale)
2012-08-13replace uint32_ts for hi and lo addresses in the mfi_init_ hardwareDavid Gwynne
descriptors with single uint64_ts. theyre not some weird middle endian thing. this makes the code more readable. add some missing htole32s to the code while here. tested on a perc5 (xscale).
2012-08-12Make sure snooping is enabled on Intel 7 Series HD Audio.Mark Kettenis
Tested by naddy@.
2012-08-11Fix state tracking for the error ccb, and pay attention when the READ_LOG_EXTJonathan Matthew
command used in ncq error recovery fails. Fixes 'ccb->ccb_xa.state == ATA_S_ONCHIP' assertion failures when talking to dying disks. broken disk supplied by Aidan Rowe ok dlg@