summaryrefslogtreecommitdiff
path: root/sys/dev/pci/ips.c
AgeCommit message (Collapse)Author
2011-07-17Backout a bunch of my SCSI commits from c2k11. At least one of theseMatthew Dempsky
is causing problems when trying to boot sparc64 from an isp(4). Verified to fix the sparc64/isp(4) regression by krw@; ok deraadt@
2011-07-08First batch of converting SCSI HBAs from setting saa_targets andMatthew Dempsky
saa_luns instead of adapter_buswidth and luns in the prototype link. ok dlg@, miod@
2011-07-05Call bzero(&saa, sizeof(saa)) each time we use saa to attachMatthew Dempsky
something. Doesn't matter right now because scsibus_attach_args only has one field and it's mandatory, but I'm planning to move some more fields from scsi_link to scsibus_attach_args+scsibus_softc. ok dlg@
2011-04-06move ips to iopools. its the usual drill, io between volumes is nowDavid Gwynne
scheduled better, ioctl paths are more reliable, and it removes NO_CCB. ok krw@
2010-10-12Force openings to 1 for devices that can't do tagged i/o, i.e. moreKenneth R Westerback
than 1 i/o active at once. This reduces the chances that concurrent i/o's for such devices will confuse the device or the adapter code. It also eliminates a reason for adapter code to maintain its own queues. Tweak all drivers that fake INQUIRY results to set the SID_CmdQue flag, thus continuing to claim to be able to do tagged i/o. Positive feedback from matthew@ and marco@ for an earlier version. ok dlg@
2010-09-20Use SSD_ERRCODE_CURRENT instead of magic 0x70.Kenneth R Westerback
ok dlg@ matthew@
2010-07-01make this compile with SMALL_KERNELTheo de Raadt
2010-07-01Change scsibus(4)'s scsi_link array to an SLIST to save memory onMatthew Dempsky
sparsely populated buses. ok dlg@, krw@
2010-06-30Use a SLIST for the ccb free list.Michael Knudsen
ok krw
2010-06-28Remove all adapter-specific 'struct scsi_device's. They are never used. FirstKenneth R Westerback
step in elminating 'struct scsi_device' entirely. Spotted and initial diff from matthew@. ok matthew@ dlg@ deraadt@ marco@ miod@
2010-06-15dont pass the dev_t from the scsi device drivers into the midlayer forDavid Gwynne
ioctl requests, and dont pass the proc pointers around for any ioctl requests in scsi land at all. neither were used, so trim the fat. ok krw@ marco@
2010-05-20New scsi code seems to be stable. Pluck previously identifiedKenneth R Westerback
low-hanging splbio/splx pairs that are no longer needed and see if this reveals any hidden scsi flaws. ok dlg@
2010-04-06update a random sampling of drivers after the proc.h -> systm.h moveTed Unangst
2010-03-23Change the scsi_cmd function member of scsi_adapter from int toKenneth R Westerback
void. Use XS_NO_CCB error in the scsi command (xs) to report the NO_CCB condition. Eliminates all SUCCESSFULLY_QUEUED and COMPLETE confusion and untangles the midlayer from the adapter a bit more. Eyes and some fixes by miod@ There may be some compile issues on little used (i.e. I don't have any) drivers but the change is mechanical and thus easy to remedy. ok dlg@
2010-01-09Zap all setting of ITSDONE in drivers that don't look at it. NobodyKenneth R Westerback
else cares so it's just noise. Drivers that actually look at ITSDONE are unchanged. ok marco@ (for his files) dlg@ beck@
2009-03-23Reorganize NBIO and SMALL_KERNEL handling again but this time withoutAlexander Yurchenko
ramdisk breakage.
2009-03-22unbreak ramdisk builds in a way i guess might workTheo de Raadt
2009-03-22Update volume info on every bio call instead of waiting for theAlexander Yurchenko
sensors task to do it.
2009-03-22Don't show rebuild status for offline volumes.Alexander Yurchenko
2009-03-22Put recently added bio and sensors stuff under #if NBIO > 0 andAlexander Yurchenko
#ifndef SMALL_KERNEL respectively.
2009-03-21If rebuild is active set volume state to ``rebuild''.Alexander Yurchenko
2009-03-21Report rebuild progress only if rebuild is active.Alexander Yurchenko
2009-03-21IPS_MAXTARGETS should be 16, not 15.Alexander Yurchenko
2009-03-21Be smart when attaching pass-through scsibuses. Use configurationAlexander Yurchenko
data to check if channel has any devices besides disks and set the actual bus width. This will speedup booting. Also remember enclosure address here instead of messing with inquiry data.
2009-03-21Looks like the ``params'' field in the physical device descriptionAlexander Yurchenko
contains SID_TYPE. Use to to filter out non disks from the bioctl output.
2009-03-20When calculating physical disk size use its number of sectorsAlexander Yurchenko
rather than chunk's.
2009-03-20Detect unused and hot-spare drives.Alexander Yurchenko
2009-03-20Support bio ``unused'' drives.Alexander Yurchenko
2009-03-20Cleanup physical drive states handling.Alexander Yurchenko
2009-03-20Fetch rebuild status only for degraded or offline volumes.Alexander Yurchenko
2009-03-19For rebuilds use a special REBUILD command instead of a genericAlexander Yurchenko
SETSTATE, for some reason it works better on lpinto's machine.
2009-03-19For pass-through commands adjust timeout value to what controllerAlexander Yurchenko
supports. Make sure our timeout will be fired after controller gives up.
2009-03-19Unify command id printing.Alexander Yurchenko
2009-03-19Make ips_timeout to be usable not only with scsi xfers.Alexander Yurchenko
2009-03-19Remove unused code.Alexander Yurchenko
2009-03-18Keep softc pointer in ccb because it requires some work to correctlyAlexander Yurchenko
extract it from scsi_xfer in ips_timeout since link->adapter_softc may point to a per-channel structure in pass-through path.
2009-03-17Provide both errno.h codes for the userspace tools like bioctlAlexander Yurchenko
and XS_* codes for the scsi layer.
2009-03-17Fix compilation without bio(4).Alexander Yurchenko
2009-03-16Implement bioctl volume management: rebuild and hotspare.Alexander Yurchenko
2009-03-16When doing pass-through calculate right xs->resid value based onAlexander Yurchenko
the info hardware returnes.
2009-03-16Don't set error on data underrun. This tiny change allowed scsi tapeAlexander Yurchenko
on the pass-through bus on lpinto's machine to work.
2009-03-16Remove redundant DPRINTF from ips_morpheus_isintr.Alexander Yurchenko
2009-03-16IPS_SCSI_PT flag not used any more.Alexander Yurchenko
2009-03-15Cleanup error processing:Alexander Yurchenko
- in ips_start_xs don't do scsi_done twice on error; - make ips_error return scsi XS_* codes rather than errno.h E* codes; - move all error reporting under debug, let upper layers to spam user. And fix a few missing byte conversions while here.
2009-03-13Add SCSI pass-through and enclosure support. Tested on lpinto'sAlexander Yurchenko
machine which has safte(4).
2009-03-13Some preparation steps for SCSI pass-through support:Alexander Yurchenko
- stack command and DCDB frames along with scatter-gather list into one command block; - use structure field pointers and offsetof() instead of evil pointer arithmetics; - add DCDB definitions. No functional changes.
2009-03-13Process command completion errors while polling, too.Alexander Yurchenko
2009-03-12In the most common case -- array failure -- move error message underAlexander Yurchenko
debug not to spam dmesg, bioctl and sysctl hw.sensors will tell you enough.
2009-03-12Advanced error checking.Alexander Yurchenko
2009-03-12For SYNCHRONIZE_CACHE command use the same code path as for READ/WRITE.Alexander Yurchenko
This required to factor out some common scsi code.