summaryrefslogtreecommitdiff
path: root/sys/dev
AgeCommit message (Collapse)Author
2012-08-30Use only one macro instead of two to turn debug printf on.Martin Pieuchot
ok kettenis@
2012-08-30make a variable that can take a value of -1 signed to match what theJonathan Gray
rest of the code expects. from brad
2012-08-28oops. a bit of debugging code has sneaked inMike Belopuhov
2012-08-28Get rid of several ill-defined concepts and use more informationMike Belopuhov
provided by the IOC. Cleanup scatter-gather code and add more comments. Tested by a "make build" and bonnie++ torturing on a SAS2004 with an IR firmware.
2012-08-26htole64 works as good as htole32 twice for dma virtual addresses.David Gwynne
2012-08-25Better detection of the st16650 v1 (with the broken fifo). Gets rid ofMark Kettenis
false positives like the DUART on the MPC8347 as found on socppc. ok deraadt@
2012-08-25Turns out the v445 isn't happy at all if we touch the registers that dealMark Kettenis
with sleep mode. So skip the wakeup code as well if we are a serial console. The port on the v445 almost certainly isn't a real st16650 and probably doesn't implement sleep mode (perhaps someone cut the soft core down a bit too much?). But it is indistinguishable from it, so we have to deal with it. ok deraadt@
2012-08-25Add support for power saving in Host AP mode.Mark Kettenis
ok stsp@, deraadt@
2012-08-25Make sure we disable interrupts on attachment before re-enabling.Christiano F. Haesbaert
ok dlg@.
2012-08-25Small cleanup.Christiano F. Haesbaert
ok dlg@.
2012-08-25some endian fixes.David Gwynne
2012-08-23cleanup calculations in iocfacts a bit: number of reply frames doesn'tMike Belopuhov
have to be not multiple of 16, recalculate request credit and number of replies if their sum exceeds MaxReplyDescriptorPostQueueDepth. tested on SAS2004 with bonnie++.
2012-08-23whitespace cleanup; no functional changeMike Belopuhov
2012-08-23use BUS_DMA_ZEROMike Belopuhov
2012-08-23the chain_offset in mfii requests are in 16 byte units, not 4 likeDavid Gwynne
mpii. this stops the chip from freaking out on me when doing chained sgls. found by alex wilson who wins prizes.
2012-08-23Fix a race in rt2661 Tx interrupt processing which can cause Tx processingStefan Sperling
to get stuck with OACTIVE set, requiring 'ifconfig ral0 down up' to unwedge. Make space in the Tx queue from the rt2661_tx_dma_intr() handler, rather than waiting until rt2661_tx_intr() is run. The latter function now collects AMRR statistics only. AMRR node allocation is now separated from ieee80211_node allocation to make this possible. This commit also brings back the separation of OACTIVE flags for management and data Tx queues which I reverted in the previous commit. Inspired by ral commits by sephe@dragonflybsd and patch submission to misc@ by Roland Dreier http://marc.info/?l=openbsd-misc&m=125895269930106&w=2 Tested by myself, edd, jsg, Tobias Ulmer, Pieter Verberne, Tim van der Molen.
2012-08-23turns out - is not commutative.David Gwynne
correctly determine the number of segments in the next chain, and also figure out the correct offset for the chain element at the end of the request frame.
2012-08-23stupid code bug.David Gwynne
instead of initting the ccbs sgl dma virtual address, i was assigning it to the sense memories dva. this means we wouldnt be getting sense data where we thought it was, and passing NULL (does NULL mean anything over a pci bus?) to the hardware when we have long sgl chains. hopefully this fixes the NMIs ive been getting.
2012-08-22Split out the bar functions required to attach drm(4) to share themMartin Pieuchot
with macppc's vgafb(4) and maybe later on sparc64 drivers too. suggested by and ok kettenis@
2012-08-22cleanup mpii_alloc_queues, use caddr_t for kva plus a bit of cleanupMike Belopuhov
2012-08-22remove last remnants of mpii_[e]cfg_header and mpii_[e]cfg_pageMike Belopuhov
2012-08-22for device pages of the fixed size there's no need to query theirMike Belopuhov
lengths nor to allocate the storage dynamically so place them on the stack and initialize the header by hand.
2012-08-22minor style nits for the function prototypesMike Belopuhov
2012-08-22Unbreak drm when DRM_NO_AGP is defined.Martin Pieuchot
ok miod@
2012-08-22kill several unused or useless defines; no functional changeMike Belopuhov
2012-08-22Add memory barriers for powerpc.Martin Pieuchot
ok kettenis@, miod@
2012-08-21Define the endianness macro used in drm code corresponding to theMartin Pieuchot
value of BYTE_ORDER, this makes radeondrm(4) usable on big-endian archs. ok kettenis@, deraadt@
2012-08-20add support for chaining a scatter gather list off a request frame if itDavid Gwynne
runs out of space for entries.
2012-08-19Skip putting a port in sleep mode when it is used as serial console. In thatMark Kettenis
case the kernel will still be using the port even after the last process closes it. And on machines like the v445 the firmware won't be happy if the console port is in sleep mode when the kernel reboots or halts. ok miod@
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-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-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-15we're not going to loop in rxeof here as well so remove the leftoversMike Belopuhov
from brad, ok jsg
2012-08-15Remove the old ioctl interface which has been disabled for overJonathan Gray
six years (since bioctl support was added). ok krw@ dlg@