> > +#if defined(CONFIG_ATA_ACPI)
> > +   /* Prefer the ACPI driver for Nvidia hardware */
> > +   if (pdev->vendor == PCI_VENDOR_ID_NVIDIA && ata_pata_acpi_present(pdev))
> > +           return -ENODEV;
> > +#endif             
> >     /* Check for AMD7411 */
> >     if (type == 3)
> >             /* FIFO is broken */
> 
> Problem with this approach is it may break distro/initrd setups since 
> the pata_amd driver appears to be the one that "should" work based on 
> the PCI ID, so the initrd would end up containing only this driver, 

Diddums

> which will fail out with -ENODEV and cause a boot failure. If the root 
> filesystem was on a disk driven by this controller, the mkinitrd stuff 
> would have to "know" that it should also try loading pata_acpi.

Indeed they will.

> Unless there are some Nvidia boxes out there which don't provide 
> _GTM/_STM ACPI methods (which seems a bit unlikely given Allen Martin's 
> comments) then we could potentially move the Nvidia PATA PCI IDs into 
> the pata_acpi driver, at least if ACPI is enabled in the kernel build..

No we can't. It is a dynamic evaluation. The user may be booting with
acpi=off to work around BIOS problems, so the distribution initrd tools
will just have to learn this out as they do the sata_nv funnies. (Nvidia
is already a special case)
-
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/

Reply via email to