ACPI provides a mechanism for noting which devices can be hotswapped and
notifying the system that this has happened. Hotswappable devices are
tagged with a _RMV token. What effectively needs to be done is this:
1) Find every device with an _RMV token, and install a notify handler
for it. This is fairly easy.
2) On notification, check whether the device is present or absent. This
can be done by calling the _STA method - alternatively it could
presumably be done through the appropriate IDE or SCSI layer. I believe
that we now have code that allows binding of ACPI devices to appropriate
busses.
3) If a device has been added, enumerate it and do appropriate messaging
to userspace (for device node creation and so forth). This ought to be
relatively easy?
4) If a device has been removed, we currently have problems. SATA
hotplugging is only supported on a subset of devices. The SATA laptop I
have here is an Intel ICH part, but uses the ata_piix driver (ahci won't
load) which isn't supposed to support hotswap. Unregistering devices in
the IDE layer has been broken for ages.
Is there any point in working on the first three of these points until
point four is more reasonable? What actually needs to be done to improve
this?
--
Matthew Garrett | [email protected]
On Sat, 24 Sep 2005 17:48:23 +0100 Matthew Garrett wrote:
> ACPI provides a mechanism for noting which devices can be hotswapped and
> notifying the system that this has happened. Hotswappable devices are
> tagged with a _RMV token. What effectively needs to be done is this:
>
> 1) Find every device with an _RMV token, and install a notify handler
> for it. This is fairly easy.
>
> 2) On notification, check whether the device is present or absent. This
> can be done by calling the _STA method - alternatively it could
> presumably be done through the appropriate IDE or SCSI layer. I believe
> that we now have code that allows binding of ACPI devices to appropriate
> busses.
>
> 3) If a device has been added, enumerate it and do appropriate messaging
> to userspace (for device node creation and so forth). This ought to be
> relatively easy?
>
> 4) If a device has been removed, we currently have problems. SATA
> hotplugging is only supported on a subset of devices. The SATA laptop I
> have here is an Intel ICH part, but uses the ata_piix driver (ahci won't
> load) which isn't supposed to support hotswap. Unregistering devices in
> the IDE layer has been broken for ages.
Do you know why the ahci driver won't load?
Are there any BIOS setup options for enabling AHCI native mode
vs. legacy or compatibility mode?
> Is there any point in working on the first three of these points until
> point four is more reasonable? What actually needs to be done to improve
> this?
---
~Randy
You can't do anything without having to do something else first.
-- Belefant's Law
>Do you know why the ahci driver won't load?
Undoubtedly the chip is being used in "combined mode",
to support a PATA ATAPI device on the second channel.
For that matter, the primary HD is probably actually PATA,
perhaps with a SATA bridge on the notebook M/B.
Very very common arrangement these days -- practically all
Sonoma Centrino chipset notebooks are set up like this.
Cheers
On Sat, Sep 24, 2005 at 03:45:45PM -0400, Mark Lord wrote:
> >Do you know why the ahci driver won't load?
>
> Undoubtedly the chip is being used in "combined mode",
> to support a PATA ATAPI device on the second channel.
>
> For that matter, the primary HD is probably actually PATA,
> perhaps with a SATA bridge on the notebook M/B.
>
> Very very common arrangement these days -- practically all
> Sonoma Centrino chipset notebooks are set up like this.
Yeah, I'd guess something along those lines. The CD drive presents as
SATA, but looks more like a PATA part. pci_request_regions fails when
trying to load ahci. It's a Sonoma system (Dell Latitude D610)
--
Matthew Garrett | [email protected]
I saw the same thing.
-Bob
> --- Matthew Garrett <[email protected]> wrote:
>
> > On Sat, Sep 24, 2005 at 03:45:45PM -0400, Mark
> Lord
> > wrote:
> > > >Do you know why the ahci driver won't load?
> > >
> > > Undoubtedly the chip is being used in "combined
> > mode",
> > > to support a PATA ATAPI device on the second
> > channel.
> > >
> > > For that matter, the primary HD is probably
> > actually PATA,
> > > perhaps with a SATA bridge on the notebook M/B.
> > >
> > > Very very common arrangement these days --
> > practically all
> > > Sonoma Centrino chipset notebooks are set up
> like
> > this.
> >
> > Yeah, I'd guess something along those lines. The
> CD
> > drive presents as
> > SATA, but looks more like a PATA part.
> > pci_request_regions fails when
> > trying to load ahci. It's a Sonoma system (Dell
> > Latitude D610)
> >
> > Tyffani Purnell
> > [email protected]
> > Gregory Roman
> > [email protected]
> > Joseph A Zyskowski
> > [email protected]
> > Mike Hafen
> > [email protected]
> > --
> > Matthew Garrett | [email protected]
> > -
> > To unsubscribe from this list: send the line
> > "unsubscribe linux-kernel" in
> > the body of a message to [email protected]
> > More majordomo info at
> > http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
>
>
>
>
>
>
______________________________________________________
>
> Yahoo! for Good
> Donate to the Hurricane Katrina relief effort.
> http://store.yahoo.com/redcross-donate3/
>
>
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com