lkml.org 
[lkml]   [2007]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [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/

\
 
 \ /
  Last update: 2007-07-11 03:17    [W:0.052 / U:0.160 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site