#
bbfa4aa1 |
| 23-Oct-2009 |
Alexander Motin <mav@FreeBSD.org> |
Replace most of priority numbers with defines. No logical changes.
|
#
1ee774f6 |
| 02-Oct-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC
|
#
0fbc5fbe |
| 26-Sep-2009 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
Sync with head
|
#
01a967e2 |
| 23-Sep-2009 |
Alexander Motin <mav@FreeBSD.org> |
MFp4: If on sense request device returns no sence, give up and return, or we may loop forever.
|
#
10b3b545 |
| 17-Sep-2009 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
Merge from head
|
#
7d4b968b |
| 17-Sep-2009 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
Merge from head up to r188941 (last revision before the USB stack switch)
|
#
11e9b8ba |
| 04-Aug-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC @196061
|
#
52c9ce25 |
| 10-Jul-2009 |
Scott Long <scottl@FreeBSD.org> |
Separate the parallel scsi knowledge out of the core of the XPT, and modularize it so that new transports can be created.
Add a transport for SATA
Add a periph+protocol layer for ATA
Add a driver
Separate the parallel scsi knowledge out of the core of the XPT, and modularize it so that new transports can be created.
Add a transport for SATA
Add a periph+protocol layer for ATA
Add a driver for AHCI-compliant hardware.
Add a maxio field to CAM so that drivers can advertise their max I/O capability. Modify various drivers so that they are insulated from the value of MAXPHYS.
The new ATA/SATA code supports AHCI-compliant hardware, and will override the classic ATA driver if it is loaded as a module at boot time or compiled into the kernel. The stack now support NCQ (tagged queueing) for increased performance on modern SATA drives. It also supports port multipliers.
ATA drives are accessed via 'ada' device nodes. ATAPI drives are accessed via 'cd' device nodes. They can all be enumerated and manipulated via camcontrol, just like SCSI drives. SCSI commands are not translated to their ATA equivalents; ATA native commands are used throughout the entire stack, including camcontrol. See the camcontrol manpage for further details. Testing this code may require that you update your fstab, and possibly modify your BIOS to enable AHCI functionality, if available.
This code is very experimental at the moment. The userland ABI/API has changed, so applications will need to be recompiled. It may change further in the near future. The 'ada' device name may also change as more infrastructure is completed in this project. The goal is to eventually put all CAM busses and devices until newbus, allowing for interesting topology and management options.
Few functional changes will be seen with existing SCSI/SAS/FC drivers, though the userland ABI has still changed. In the future, transports specific modules for SAS and FC may appear in order to better support the topologies and capabilities of these technologies.
The modularization of CAM and the addition of the ATA/SATA modules is meant to break CAM out of the mold of being specific to SCSI, letting it grow to be a framework for arbitrary transports and protocols. It also allows drivers to be written to support discrete hardware without jeopardizing the stability of non-related hardware. While only an AHCI driver is provided now, a Silicon Image driver is also in the works. Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware is possible and encouraged. Help with new transports is also encouraged.
Submitted by: scottl, mav Approved by: re
show more ...
|
#
09c817ba |
| 03-Jul-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC
|
#
571e8e20 |
| 22-Jun-2009 |
Scott Long <scottl@FreeBSD.org> |
Change cam_periph_ioctl() to take 'cmd' and a u_long instead of an int. All of its callers pass in cmd as a u_long, so this has always been a dangerous type demotion. It was spooted by clang/llvm t
Change cam_periph_ioctl() to take 'cmd' and a u_long instead of an int. All of its callers pass in cmd as a u_long, so this has always been a dangerous type demotion. It was spooted by clang/llvm trying to do a type promotion and sign extension within cam_periph_ioctl.
Submitted by: rdivacky
show more ...
|
#
2e370a5c |
| 26-May-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Merge from HEAD
|
#
9b61a5b9 |
| 12-May-2009 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Add missing free(9) in error case.
Found with: Coverity Prevent(tm) CID: 4224
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
#
1829d5da |
| 12-Mar-2009 |
Warner Losh <imp@FreeBSD.org> |
Update the projects tree to a newer FreeBSD current.
|
#
aa812d9e |
| 09-Feb-2009 |
Max Khon <fjoe@FreeBSD.org> |
cam_periph_alloc: fix "invalid periph name" error condition
Found with: Coverity Prevent(tm) CID: 130
|
#
1fa738c2 |
| 26-Jan-2009 |
John Baldwin <jhb@FreeBSD.org> |
Now that mtx_sleep/msleep can accept Giant as the interlock, simplify the CAM locking code slightly to no longer special case sleeping when a sim uses Giant for its lock.
Tested by: trasz
|
#
53f8b22b |
| 23-Jan-2009 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Guard against NULL pointer dereference.
Reviewed by: scottl Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation Found with: Coverity Prevent(tm) CID: 130
|
Revision tags: release/7.1.0_cvs, release/7.1.0 |
|
#
41fe50f5 |
| 20-Dec-2008 |
Sam Leffler <sam@FreeBSD.org> |
MFH @ 186335
|
#
24ebf566 |
| 19-Dec-2008 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Periph driver fixes, second try.
Reviewed by: scottl Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
|
#
a4e2e711 |
| 19-Dec-2008 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Move mtx_assert lower, when we can be sure that the pointer to the mutex is valid.
Reviewed by: scottl Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
|
#
1fa9ee7d |
| 17-Dec-2008 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Revert r186186 for now; it breaks stuff.
Approved by: rwatson (mentor)
|
#
f5bc8000 |
| 16-Dec-2008 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Fix locking in periph drivers - don't try to unlock periph that was already deallocated.
Reviewed by: scottl Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
|
Revision tags: release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0 |
|
#
af3c383a |
| 12-Feb-2008 |
Rafal Jaworowski <raj@FreeBSD.org> |
Fix typo.
Approved by: cognet (mentor)
|
Revision tags: release/6.3.0_cvs, release/6.3.0 |
|
#
0dd50e9b |
| 14-May-2007 |
Scott Long <scottl@FreeBSD.org> |
Eliminate the use of M_TEMP.
|
#
77dc25cc |
| 20-Apr-2007 |
Scott Long <scottl@FreeBSD.org> |
Retire the spl() markers. Add in some minor missed locking as a result.
|
#
11e4face |
| 20-Apr-2007 |
Scott Long <scottl@FreeBSD.org> |
Inline cam_periph_lock|unlock to make debugging easier. Use more CAM_SIM_LOCK() more uniformly.
|