summaryrefslogtreecommitdiffstats
path: root/sys/dev/twe/twe.c
Commit message (Collapse)AuthorAgeFilesLines
* After extensive QA cycles at 3ware, bring the driver in-line with all theps2003-12-021-48/+100
| | | | | | | | | | | | | | | | | | | | | issues which they found and asked to be changed so 3ware can offcially support the driver. Summary of the most significant changes: - TWE_OVERRIDE is no longer supported - If twe_getparam failed, bogus data would be returned to the caller - Cache the device unit in the twe_drive structure to aid debugging - Add the 3ware driver version. - Proper return error codes for many functions. - Track the minimum queue length statistics - 4.x compat: use the cached unit number from the twe_drive structure instead of the the cached si_drv2. 3ware found that after many loads and unloads that si_drv2 became corrupted. This did not happen in -current. Submitted by: Vinod Kashyap (with modifications by me) Approved by: re (rwatson)
* Don't tsleep on NULLps2003-08-191-2/+2
|
* Fix the busdma support in twe to support EINPROGRESS and enable it forps2003-08-121-53/+52
| | | | use with PAE kernels.
* Properly support the 3ware generic API.ps2003-08-051-59/+92
| | | | | | | | | | | - Build SGL's for ATA_PASSTHROUGH commands - Fallback to using the sgl_offset when the opcode is unknown for building SGL's/ - Add ioctl calls for adding and removing units. - Define previously undefined AEN's - Allocate memory for the ioctl payload in multiples of 512bytes. MFC after: 1 week
* Back out M_* changes, per decision of the TRB.imp2003-02-191-2/+2
| | | | Approved by: trb
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-2/+2
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* Replace (ab)uses of "NULL" where "0" is really meant.archie2002-08-221-1/+1
|
* Update for the 6.9 firmware family (6xxx controllers), as well as formsmith2002-03-071-13/+57
| | | | | | | | | the upcoming 7.4 family (7xxx controllers). - improved error reporting and handling - more diagnostic output - add extra command packet definitions - merge sources again with -stable
* Fix some unused warnings. One function is only used ifpeter2002-02-271-0/+8
| | | | TWE_SHUTDOWN_NOTIFICATION is defined, the other two are never used.
* Minor updates:msmith2001-05-071-21/+31
| | | | | | | | - Rework of twe_report_request to use the command status value rather than the flags register. (Joel Jacobson @ 3ware) - Update to match some changes in -current vs. stable. MFC in: 1 week
* Typo fix; use & to test for bits set in the status register.msmith2001-02-261-1/+1
| | | | Submitted by: Joel Jacobson <jake@3ware.com>
* Remove a prototype for an unused and undefined debugging function.jhb2001-01-231-1/+0
|
* - add support for crashdumps (courtesy of ps and Y!)msmith2000-12-031-164/+171
| | | | | | | - standardise error reporting for commands - simplify the driver-to-controller bio transfer - add bio in/out accounting - correctly preserve the command ID in twe_ioctl (thanks to joel@3ware)
* If we can't get a command to back the bio we just took off the queue,msmith2000-11-031-1/+3
| | | | | put the bio back, otherwise we'll drop it when we bail. This was causing bio lossage under load, leading to eventual system lockup.
* Add a missing newline to a diagnostic.msmith2000-10-271-1/+1
|
* Major update to the 'twe' driver.msmith2000-10-251-1003/+844
| | | | | | | | | | | | | | | | | | | | | | | | | - Layout reorganisation to enhance portability. The driver now has a relatively MI 'core' and a FreeBSD-specific layer over the top. Since the NetBSD people have already done their own port, this is largely just to help me with the BSD/OS port. - Request ID allocation changed to improve performance (I'd been considering switching to this approach after having failed to come up with a better way to dynamically allocate request IDs, and seeing Andy Doran use it in the NetBSD port of the driver convinced me that I was wasting my time doing it any other way). Now we just allocate all the requests up front. - Maximum request count bumped back to 255 after characterisation of a firmware issue (off-by-one causing it to crash with 256 outstanding commands). - Control interface implemented. This allows 3ware's '3dm' utility to talk to the controller. 3dm will be available from 3ware shortly. - Controller soft-reset feature added; if the controller signals a firmware or protocol error, the controller will be reset and all outstanding commands will be retried.
* Remove unneeded #include <machine/clock.h>phk2000-10-151-1/+0
|
* Initial import of a driver for the 3ware Escalade family of ATA RAIDmsmith2000-05-241-0/+1898
controllers.
OpenPOWER on IntegriCloud