lkml.org 
[lkml]   [2008]   [Feb]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] libata: Register for dock events when the drive is inside a dock station
On Fri 22. Feb - 10:34:24, Tejun Heo wrote:
> > If a device/bay is inside a docking station, we need to register for dock
> > events additionally to bay events. If a dock event occurs, the dock driver
> > will call the appropriate handler (ata_acpi_ap_notify() or
> > ata_acpi_dev_notify()) for us.
> >
> > Signed-off-by: Holger Macht <hmacht@suse.de>
> > ---
> >
> > diff --git a/drivers/ata/libata-acpi.c b/drivers/ata/libata-acpi.c
> > index 9e8ec19..563ad72 100644
> > --- a/drivers/ata/libata-acpi.c
> > +++ b/drivers/ata/libata-acpi.c
> > @@ -191,20 +191,33 @@ void ata_acpi_associate(struct ata_host *host)
> > else
> > ata_acpi_associate_ide_port(ap);
> >
> > - if (ap->acpi_handle)
> > + if (ap->acpi_handle) {
> > acpi_install_notify_handler (ap->acpi_handle,
> > ACPI_SYSTEM_NOTIFY,
> > ata_acpi_ap_notify,
> > ap);
> > +#ifdef CONFIG_ACPI_DOCK_MODULE
>
> Heh, you need
>
> #if defined(CONFIG_ACPI_DOCK) || defined(CONFIG_ACPI_DOCK_MODULE)
>
> Also, another question. Is there a way to tell whether the device or
> port is connected behind a dock or not? Just notifying hotplug signal
> is fine for hotplugging but to make hot unplug safe for PATA, libata
> should be able to tell whether the device is actually gonna go away and
> kill it explicitly.

The hotplug handler is only called if the device is actually inside the
dock station. If it is not, nothing will happen. I hope that I got your
question right?

However, if this would be helpful, it would be easy to add something like
a am_I_on_dock_station?(...) function to the dock driver.

Regards,
Holger


\
 
 \ /
  Last update: 2008-02-26 11:17    [W:0.083 / U:1.588 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site