summaryrefslogtreecommitdiff
path: root/sys/dev/ic
AgeCommit message (Collapse)Author
2010-07-02correctly init ppr_able in reset, and some others gcc complained about.Ted Unangst
ok deraadt
2010-07-02m_copyback can fail to allocate memory, but is a void fucntion so gymnasticsBret Lambert
are required to detect that. Change the function to take a wait argument (used in nfs server, but M_NOWAIT everywhere else for now) and to return an error ok claudio@ henning@ krw@
2010-07-01compile when SMALL_KERNEL is setTheo 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 SLIST for the ccb free list.Michael Knudsen
ok krw, discontent grunts from marco.
2010-06-30Use SLIST instead of TAILQ for the ccb free list.Michael Knudsen
ok krw
2010-06-30* use audio(9)'s DMA trigger methods instead of the init/startJacob Meuser
methods. the AD1848 DMA engine runs continuously and doesn't need to be started/stopped or otherwise manipulated for each block. makes the driver a bit more efficient. * allow "Mode 2" capable chips such as the CS4231 to work in "Mode 1" when there is only one DMA channel, instead of forcing it into "Mode 2", which expects two DMA channels. allows recording to work for "Mode 2" capable devices when there is only one DMA channel. * service both playback and recording interrupts in full-duplex mode, instead of only playback interrupts. allows "Mode 2" capable chips to work in full-duplex mode. * fix checks for sample rate/format recalibration completion. gets rid of busy loops that briefly "hang" the kernel when the device is opened and/or reconfigured.
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-28fix typo; from BradChristian Weisgerber
2010-06-28Add initial support for RTL8168E, brokenness reported by Joe Gidi.Stuart Henderson
With help from Brad, ok jsg@, closes system/6402
2010-06-28Allow tty drivers to request larger buffers at attach time using aTheo de Raadt
max-baud-rate hint. Adjust TTYHOG (the nearly full logic) to this new situation. The larger buffers are required by the very high speed KDDI devices in Japan (CF com, or USB ucom) so those are the only two drivers which currently ask for a larger buffer size. ok yasuoka miod
2010-06-28add back the initialisation of a loop condition thatJonathan Gray
was mistakenly removed in 1.208 ok dlg@ marco@
2010-06-28implement iopools in osiop to get rid of another use of XS_NO_CCB.David Gwynne
original diff corrected by miod@ tested by and ok miod@
2010-06-28Use a more moderate fifo trigger level (4) for moderately quickChris Kuethe
(sub-38400) port speeds. Inspired by netbsd. ok fgsch krw deraadt miod
2010-06-26Don't #include <sys/user.h> into files that don't need the stuffPhilip Guenthe
it defines. In some cases, this means pulling in uvm.h or pcb.h instead, but most of the inclusions were just noise. Tested on alpha, amd64, armish, hppa, i386, macpcc, sgi, sparc64, and vax, mostly by krw and naddy. ok krw@
2010-06-26Grow COM_IBUFSIZE from 1024 to 8192 to be enough size for recentYASUOKA Masahiko
devices. This will fix the problem using KDDI W04K that has 3.1 Mbps in downlink. ok deraadt@
2010-06-26If you put CISS_LOCK()/CISS_UNLOCK() around a switch statement, youKenneth R Westerback
must break out of the cases, not directly 'return' error codes. I think the error case is currently impossible, but why leave an armed bear trap lying about?
2010-06-26xs->cmd[n] doesn't mean the n'th byte, because xs->cmd is a structKenneth R Westerback
*scsi_generic. Change xs->cmd[0] references in sii.c to xs->cmd->opcode and do (caddr_t) arithmetic when copying chunks into the adw adapter struct. Found by Matthew Dempsky, diff tweaked and tested by me.
2010-06-23cut ami over to iopools.David Gwynne
makes the ioctl and sensor paths more reliably now that they cant fail due to a ccb allocation failure, and allows better sharing of resources between multiple logical volumes and physical devices.
2010-06-23switch ami over to using mutexes instead of splbio to protect itself. thisDavid Gwynne
protects the ccb runqueues and the mailbox with a single mutex. the biggest change as a consequence of this is a rewrite of the polled command code. it now forces the polled command onto the chip ahead of the pending runqueue, and simply runs the interrupt handler until the ccb completes. tested by sthen@
2010-06-22cleanup/fix PA predistortion code.Damien Bergamini
2010-06-21use LE_READ_4/LE_READ_2 instead of hardcodingDamien Bergamini
2010-06-21Implement PA linearization on adapters with digital predistortersDamien Bergamini
(AR9003 family only). The power amplifier predistortion state machine works as follows: 1) Disable digital predistorters for all Tx chains 2) Repeat steps 3~7 for all Tx chains 3) Force Tx gain to that of training signal 4) Send training signal (asynchronous) 5) Wait for training signal to complete (asynchronous) 6) Read PA measurements (input power, output power, output phase) 7) Compute the predistortion function that linearizes PA output 8) Write predistortion functions to hardware tables for all Tx chains 9) Enable digital predistorters for all Tx chains from ath9k (though implementation differs a lot)
2010-06-21allow Tx flags to be passed to the tx() routine.Damien Bergamini
2010-06-21use correct clock rate when computing the listen time for ANIDamien Bergamini
2010-06-21no delay is necessary on the AR9003 after writing an analog register.Damien Bergamini
2010-06-21protect the ccb free list with its own mutex.David Gwynne
2010-06-20update AR9380 ROM layout (add PA predistortion related fields.)Damien Bergamini
2010-06-20update 5GHz Tx gain tables for the Osprey (AR9380).Damien Bergamini
2010-06-19Remove more splbio/splx pairs from around scsi_done() calls.Kenneth R Westerback
From Matthew Dempsky.
2010-06-15rearrange attach so that the SDEV_VIRTUAL flag is set during scsi_probe,David Gwynne
rather than as a scan of all attached devices after scsibus is attached. this will allow the cache enabling on virtual disks to run as part of the disks attach routine.
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-06-12Add missing arg to a printf call.Jonathan Gray
ok damien@
2010-06-09Do not set time 100 years in the future if the time read is beforeMiod Vallat
POSIX_BASE_YEAR (1970) because the clock's base year is before that year as well (as found on sparc which use 1968 as their base year); this allows clocks with dead batteries to ``correctly'' report the current date as in year 1968, instead of year 2068 which causes a 32 bit time_t wraparound in year 1931. Found the hard way by Philippe Meunier, ok deraadt@
2010-06-05- fix athn_set_key() on big-endian machines (function is not used yet)Damien Bergamini
- change sign extension such that we do not rely on >> being an arithmetic shift on signed integers - various changes to AR9003 code, fix Tx path, enable Tx IQ calibration
2010-06-04gc unused variableDavid Gwynne
2010-06-03enable async fifo for >=AR9287 1.3 only.Damien Bergamini
from ath9k.
2010-06-03massage the code to avoid races in ami_mgmt.David Gwynne
2010-06-03Always initialize the ccb provided by the scsi layer into the properKenneth R Westerback
state when starting an i/o. Necessary as the scsi layer may now re-submit a completed xs/ccb to the adapter in some error situations. Fixes panics seen by various people, reproduced and fix tested by sobrado@. ok dlg@
2010-06-03get rid of the kthread. it is unused and just bloats the kernel.David Gwynne
pointed out by brad.
2010-06-03replace TAILQs with SLISTs for managing the ccb free list. theyre smaller.David Gwynne
2010-06-03useless abstraction is, by definition, useless.David Gwynne
dont typedef the tailq head struct.
2010-06-02convert ciss(4) over to using iopools. this is fairly easy after the recentDavid Gwynne
tweaks ive made. this provides better concurrent access to multiple volumes on the same hba, while improving the reliability of the ioctl and sensor codepaths. tested by okan@ halex@ ok krw@ okan@ halex@
2010-06-02dont drop out of handling a command if ITSDONE is set. return a betterDavid Gwynne
error to the midlayer if something screws up. scrub the code slightly while here. this plus src/sys/scsi/scsi_base.c r1.174 seems to fix problems henning has had with tape drives plugged into ahc. tested by and ok henning@
2010-06-02its pretty obvious that ciss_cmd should be called with splbio being held,David Gwynne
especially if you're passing it SCSI_POLL too.
2010-06-02call scsi_done before put_ccb, rather than have put_ccb call scsi_doneDavid Gwynne
for us.
2010-06-02push the "locking" in ciss_scsi_cmd down. we dont need splbio to callDavid Gwynne
scsi_done or to get or put ccbs anymore.
2010-06-02protect the ccb free queue with its own mutexDavid Gwynne
2010-06-02get rid of useless ccb queues. when the ccb is on the chip, we mark itsDavid Gwynne
state as such, putting it on a queue is silly. one of the queues was initted by never used.
2010-06-02get rid of the code for the passthru bus support. it was never enabled andDavid Gwynne
confuses the code and bloats the kernel.