#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
240209 |
|
07-Sep-2012 |
jhb |
Remove remaining 4.x compat shims. No resulting changes (verified by md5).
|
#
239244 |
|
13-Aug-2012 |
jhb |
Add locking to the twe(4) driver and make it MPSAFE: - Add per-controller configuration (sx) and I/O (mutex) locks. The configuration lock protects the relationship of volumes and drives while the I/O lock protects access to the controller's registers and the main I/O path. - Remove some checks for M_WAITOK malloc()'s failing. - Remove the explicit bus space tag/handle from the softc and use bus_*() rather than bus_space_*(). - Reuse the existing new-bus sysctl context instead of creating a new one. - Remove compat shims for FreeBSD 4.x. - Use pci_enable_busmaster() rather than doing it by hand, and rely on bus_alloc_resource() to enable PCI I/O decoding.
Tested by: Mike Tancsa mike sentex net Reviewed by: scottl (partially) MFC after: 1 month
|
#
146734 |
|
29-May-2005 |
nyan |
Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 and amd64. The optimization is a trivial on recent machines.
Reviewed by: -arch (imp, marcel, dfr)
|
#
130585 |
|
16-Jun-2004 |
phk |
Do the dreaded s/dev_t/struct cdev */ Bump __FreeBSD_version accordingly.
|
#
129879 |
|
30-May-2004 |
phk |
Add missing <sys/module.h> includes
|
#
123103 |
|
02-Dec-2003 |
ps |
After extensive QA cycles at 3ware, bring the driver in-line with all the 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)
|
#
119287 |
|
22-Aug-2003 |
imp |
Prefer new location of pci include files (which have only been in the tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
|
#
118816 |
|
12-Aug-2003 |
ps |
Fix the busdma support in twe to support EINPROGRESS and enable it for use with PAE kernels.
|
#
118508 |
|
05-Aug-2003 |
ps |
Properly support the 3ware generic API.
- 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
|
#
112263 |
|
15-Mar-2003 |
phk |
Fix a bug I introduced by overlooking the fact that "unit number" can be one of several things in this driver.
Spotted & Tested by: alfred
|
#
111979 |
|
08-Mar-2003 |
phk |
Centralize the devstat handling for all GEOM disk device drivers in geom_disk.c.
As a side effect this makes a lot of #include <sys/devicestat.h> lines not needed and some biofinish() calls can be reduced to biodone() again.
|
#
111471 |
|
25-Feb-2003 |
phk |
NO_GEOM cleanup:
Move to new "struct disk *" centric API. Retire major #147 (twed)
|
#
106696 |
|
09-Nov-2002 |
alfred |
Fix instances of macros with improperly parenthasized arguments.
Verified by: md5
|
#
76340 |
|
07-May-2001 |
msmith |
Minor updates:
- 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
|
#
67555 |
|
25-Oct-2000 |
msmith |
Major update to the 'twe' driver.
- 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.
|