Messages in this thread | | | Date | Tue, 10 Jul 2007 21:14:42 -0400 | From | Jeff Garzik <> | Subject | Re: [PATCH] sata_promise: SATA hotplug support, take 2 |
| |
Mikael Pettersson wrote: > This patch enables hotplugging of SATA devices in the > sata_promise driver. It's been tested successfully on > both first- and second-generation Promise SATA chips: > SATA150 TX2plus, SATAII150 TX2plus, SATAII150 TX4, > SATA300 TX2plus, and SATA300 TX4. > > The only quirk I've seen is that hotplugging (insertion) > on the first-generation SATA150 TX2plus requires a lengthier > EH sequence than on the second-generation chips. > On the second-generation chips a simple soft reset seems > to suffice, but on the first-generation chip there's a > "port is slow to respond" after the initial soft reset, > after which libata issues a hard reset, and then the > device is recognised. > > The hotplug checks are high up in the interrupt handling > path, not deep down in error_intr as in ahci/sata_sil24. > That's because the chip doesn't signal hotplug status changes > in the per-port status register: instead a global register > contains hotplug control and status flags for all ports. > I considered following the ahci/sata_sil24 structure, but > that would have required non-trivial changes to the interrupt > handling path, so I chose to keep the hotplug changes simple > and unobtrusive. > > Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> > -- > This patch depends on the "sata_promise: cleanups" patch. > > Changes since the previous version (posted June 19): > - Correct pdc_interrupt() to increment 'handled' also in > the hotplug case. This prevents IRQ_NONE from being > returned when an interrupt only has hotplug events to > handle, which could confuse the kernel's IRQ machinery. > - Added testing on the SATAII150 TX4. > > drivers/ata/sata_promise.c | 41 ++++++++++++++++++++++++++++++++++++----- > 1 files changed, 36 insertions(+), 5 deletions(-)
applied
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |