summaryrefslogtreecommitdiff
path: root/sys/dev/ic
AgeCommit message (Collapse)Author
2012-10-12Cleanup false positives for uninitialized uses.Christiano F. Haesbaert
Part of the work to remove -Wno-uninitialized. ok blambert jsg
2012-10-11Enable Host AP power saving support for the RT2700, RT2800 and RT3090 chipsets.Mark Kettenis
Tested by Nathanael Rensen.
2012-10-10Avoid potential uninitialized variable access in fxp driver.Bret Lambert
Found by haesbaert@. ok haesbaert@ deraadt@
2012-10-04Clean up uninitialized warnings from ar9003.Christiano F. Haesbaert
Part of the work to remove -Wno-uninitialized. ok kettenis@
2012-09-18several tweaks to make mpi(4) work for vmware emulated sas adapters.David Gwynne
1. vmware advertises more scsi targets than command slots, so the maths we did for openings gave each target 0 openings. always advertise at least 16 openings. 2. if we cant configure the ATA queue depth, dont fail to attach the controller whole. finally, improve the error reporting during attach so its more obvious where things fail. mostly figured out by jmatthew@
2012-09-12Use sg_addr instead of sg_lo_addr, leftovers from last commit.Christiano F. Haesbaert
ok dlg
2012-09-12Make sure we don't sleep on autoconf.Christiano F. Haesbaert
ok mikeb
2012-09-04The powerlevel is an unsigned int, there is no need to check for negativeClaudio Jeker
values and even if this would make more sense. Found by brad some time ago.
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-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-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-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-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-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-15Remove the old ioctl interface which has been disabled for overJonathan Gray
six years (since bioctl support was added). ok krw@ dlg@
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-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-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-11the producer/consumer values are used by the device, which is littleDavid Gwynne
endian. do appropriate byteswapping for when the host cpu uses them. tested on a perc5 (xscale) in an amd64.
2012-08-10simplify pckbc_xt_translation()Alexandr Shadchin
* call only for set translation on (once in /sys/dev/pckbd.c) therefore we can delete unused code. * change behavior (more standard) - return zero on success ok miod@
2012-07-17Revert my previous change for rt2661. It is causing excessive "ral0: deviceStefan Sperling
timeout" messages on my soekris and doesn't fix the real problem.
2012-07-13Keep separate OACTIVE flags to mark full management/data tx queues,Stefan Sperling
and set the interface's IFF_OACTIVE flag if either queue is full and clear it only if both queues have free slots. Before this change both queues were setting/clearing the same flag with no regard for the other queue's state. Also, don't reset the tx watchdog counter if either queue still has frames queued when we exit the frame-processing loop in the per-queue interrupt handlers. Both changes originally from sephe@dragonfly. Tested by myself and edd on a slow busy soekris which before this change required occasional 'ifconfig ral0 down up' to recover.
2012-07-13Init the baseband processor before selecting antennas since selecting antennasStefan Sperling
involves tweaking of BBP registers. Wait for BBP to stop being busy before reading from it. Originally from sephe@dragonfly. ok kettenis sthen
2012-07-02Backout premature optimization and actually commit the diff which had beenMiod Vallat
tested to boot multiuser.
2012-07-02Report immediate deselection from a target upon selection as a `selectionMiod Vallat
timeout', instead of being stuck with a non-progressing request. This lets the nonexistent LUNs of the Insite Floptical probe (as non-existing) correctly. Step two of Floptical support, now if only the loading mechanism would unjam I could try some real I/O with it...
2012-07-01Nuke unused _[23]ltol() and _lto[23]l() inline functions. MoveKenneth R Westerback
_4ltol() and _lto4l() to bha, the only place they were used. ok dlg@
2012-06-10Allow a variable number of words for the Serializer/Deserializer programming.Mark Kettenis
Probably not enought to make the AR9380 chips to work, but at least the kernel shouldn't crash anymore when we see one. ok stsp@
2012-05-12Repairs operation of twin-channel ahc devices. Only affects ahc@eisa sinceMiod Vallat
none of the ahc@pci are twin-channel. Broken since 3.6 as well.
2012-05-12Remove unused variable.Mark Kettenis
ok mpi@, miod@
2012-05-098401E/8402/8105E/8105E_SPIN1 don't support jumbo framesJonathan Gray
from Brad
2012-05-09The 8168D chipset needs to have the PHY wake PM flag set to ensureJonathan Gray
the PHY is woken up upon attachment. From FreeBSD via Brad.
2012-05-06add support for the reverse video attribute in sti(4)Mike Belopuhov
makes programs like less and mg look a wee bit prettier ok miod
2012-04-27Sprinkle bus_space_barrier after register writes. 70% paranoia and 30%Miod Vallat
``boots being interrupted while the prom is loading the kernel and then restarted no longer seem to end up with a hosed chip with this diff'' on sgi.
2012-04-09If running on the original 33C93, reject commands not in groups 0, 1 or 5Miod Vallat
if their size is not exactly six bytes, as the chip can't cope with this situation. Another situation all 33C93 do not cope with very well, is sending stop commands to targets (such as all sd(4) devices when halting with poweroff) - it takes a very long time to recover once all targets on the bus have been powered down, so we need to raise timeouts to unholy values (one test case has required more than 20 seconds to recover). Not surprising, as this command is not documented as supported in the chip documentation.
2012-04-09Cope with strict alignment platforms, and unbreak the RX logic. Tested withMiod Vallat
ep@eisa on sgi.
2012-04-08additional adapter types from FreeBSDJonathan Gray