linux/drivers
James Bottomley 1acce1942a [SCSI] libsas: Add SATA support to STP piece for SATA on SAS expanders
This patch adds support for SATA over SAS expanders to the previous two
SATA support in libsas patches.

There were a couple of nasty non trivial things to sort out before this
one could be made to work.

Firstly, I'd like to thank Doug Gilbert for diagnosing a problem with
the LSI expanders where the REPORT_SATA_PHY command was returning the
D2H FIS in the wrong order (Although, here, I think I have to blame the
SAS standards which specifies the FIS "shall be returned in little
endian format" and later on "which means resp[24] shall be FIS type"
The latter, of course, implying big endian format).  Just to make sure,
I put a check for the D2H FIS type being in the wrong position and
reverse the FIS data if it is.

The second is a problem outlined in Annex G of the SAS standard (again,
a technical point with D2H FIS ... necessitating a phy reset on certain
conditions).

With the patch, I can now see my SATA-1 disk in a cascaded expander
configuration.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-07-18 11:13:23 -05:00
..
acorn [PATCH] fix request->cmd == INT cases 2007-07-10 08:03:34 +02:00
acpi PCI: Change all drivers to use pci_device->revision 2007-07-11 16:02:10 -07:00
amba
ata [libata] sata_mv: use pci_try_set_mwi() 2007-07-17 16:18:00 -04:00
atm drivers/*: mark variables with uninitialized_var() 2007-07-17 16:23:19 -04:00
auxdisplay Use menuconfig objects II - auxdisplay 2007-07-16 09:05:40 -07:00
base dma: make dma pool to use kmalloc_node 2007-07-16 09:05:51 -07:00
block unregister_blkdev(): delete redundant message 2007-07-17 10:23:03 -07:00
bluetooth [Bluetooth] Remove the redundant non-seekable llseek method 2007-07-11 06:53:45 +02:00
cdrom bsg: add a request_queue argument to scsi_cmd_ioctl() 2007-07-16 08:52:45 +02:00
char zs: move to the serial subsystem 2007-07-18 08:38:22 -07:00
clocksource PCI: Change all drivers to use pci_device->revision 2007-07-11 16:02:10 -07:00
connector Use menuconfig objects: connector 2007-07-16 09:05:40 -07:00
cpufreq [CPUFREQ] Restore previously used governor on a hot-replugged CPU 2007-07-13 01:29:51 -04:00
crypto Use menuconfig objects: crypto hw 2007-07-16 09:05:40 -07:00
dio
dma dma-mapping: prevent dma dependent code from linking on !HAS_DMA archs 2007-07-16 09:05:45 -07:00
edac Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
eisa
fc4
firewire firewire: fw-sbp2: fix DMA mapping of management ORBs 2007-07-10 00:07:49 +02:00
firmware edd: switch to pci_get based API 2007-07-16 09:05:42 -07:00
hid USB: add reset_resume method 2007-07-12 16:34:30 -07:00
hwmon SPI: add 3wire mode flag 2007-07-17 10:23:04 -07:00
i2c OMAP: add TI TWL92330/Menelaus Power Management chip driver 2007-07-17 10:23:15 -07:00
ide Revert drivers/ide/ide.c scsi_cmd_ioctl() usage changes 2007-07-17 15:57:42 -07:00
ieee1394 Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
infiniband drivers/infiniband/hw/mthca/mthca_qp: kill uninit'd var warning 2007-07-17 16:18:00 -04:00
input Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
isdn [ISDN] HiSax hfc_pci: minor cleanups 2007-07-17 17:26:24 -04:00
kvm KVM: Use CPU_DYING for disabling virtualization 2007-07-16 12:05:51 +03:00
leds
macintosh Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
mca
md dm: fix memory leak in dm_create_persistent() when starting metadata update thread fails 2007-07-18 08:38:22 -07:00
media Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
message i2o debug output cleanup 2007-07-17 10:23:06 -07:00
mfd Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
misc IBMASM: must depend on CONFIG_INPUT 2007-07-17 10:23:04 -07:00
mmc Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
mtd drivers/*: mark variables with uninitialized_var() 2007-07-17 16:23:19 -04:00
net drivers/*: mark variables with uninitialized_var() 2007-07-17 16:23:19 -04:00
nubus
oprofile
parisc serial: add early_serial_setup() back to header file 2007-07-18 08:38:22 -07:00
parport parport_pc: it887x fix 2007-07-16 09:05:50 -07:00
pci Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2007-07-16 17:58:08 -07:00
pcmcia powerpc: 8xx: fix whitespace and indentation 2007-07-17 10:23:02 -07:00
pnp Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
power Merge git://git.infradead.org/battery-2.6 2007-07-15 16:56:12 -07:00
ps3
rapidio sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
rtc OMAP: add TI TWL92330/Menelaus Power Management chip driver 2007-07-17 10:23:15 -07:00
s390 Make the "z/VM unit record device driver" depend on S390 2007-07-17 15:43:56 -07:00
sbus unregister_blkdev() delete redundant messages in callers 2007-07-17 10:23:03 -07:00
scsi [SCSI] libsas: Add SATA support to STP piece for SATA on SAS expanders 2007-07-18 11:13:23 -05:00
serial zs: move to the serial subsystem 2007-07-18 08:38:22 -07:00
sh
sn
spi use mutex instead of semaphore in SPI core/init code 2007-07-17 10:23:05 -07:00
tc zs: move to the serial subsystem 2007-07-18 08:38:22 -07:00
telephony drivers/telephony/ixj: cleanup and fix gcc warning 2007-07-17 16:18:00 -04:00
usb drivers/*: mark variables with uninitialized_var() 2007-07-17 16:23:19 -04:00
video fbdev: make fb_append_extra_logo() depend on fb=y 2007-07-18 08:38:22 -07:00
w1 Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
zorro sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
Kconfig Merge git://git.infradead.org/~dwmw2/battery-2.6 2007-07-10 14:47:59 -07:00
Makefile [BATTERY] Universal power supply class (was: battery class) 2007-07-10 11:25:44 +01:00