On Thu, 07 Dec 2006 03:19:40 +0800 Conke Hu wrote: > On Mon, 2006-12-04 at 21:41 -0800, Andrew Morton wrote: > > On Mon, 04 Dec 2006 23:56:42 -0500 > > Jeff Garzik <jeff@xxxxxxxxxx> wrote: > > > > > Andrew Morton wrote: > > > > via-pata-controller-xfer-fixes.patch > > > > via-pata-controller-xfer-fixes-fix.patch > > > > > > Tejun's 3d3cca37559e3ab2b574eda11ed5207ccdb8980a has been ack'd by the > > > reporter as fixing things, so these two shouldn't be needed. > > > > OK thanks, I dropped it. > > > > > > > > > libata_resume_fix.patch > > > > > > I thought this was resolved long ago? Are there still open reports that > > > this solves, where upstream doesn't work? > > > > Heck, I don't know. > > > > > > > > > ahci-ati-sb600-sata-support-for-various-modes.patch > > > > > > With the PCI quirk, I thought ATI was finally sorted? > > > > Was it? I don't know that either. > > > > I'll drop these too. > > - > > Hi Jeff, Andrew > The following patch is ATI's final solution. It was ACKed by Alan. > Jeff, you're the maintainer of libata, but this patch is based on > pci/quirks.c, so I don't know who will apply this patch? You or somebody > else? > Andrew, could you please drop ATI's previous patch and add this one > in next -mm patch? The previous patch I sent > (ahci-ati-sb600-sata-support-for-various-modes.patch) is not as good as > this one :) > > > Best regards, > Conke @AMD/ATI > > > [------------------PATCH------------------] > > --- linux-2.6.19-rc6-git4/drivers/pci/quirks.c.orig 2006-11-23 > 19:45:49.000000000 +0800 > +++ linux-2.6.19-rc6-git4/drivers/pci/quirks.c 2006-11-23 > 19:34:23.000000000 +0800 > @@ -795,6 +795,25 @@ static void __init quirk_mediagx_master( > } > } > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_CYRIX, > PCI_DEVICE_ID_CYRIX_PCI_MASTER, quirk_mediagx_master ); > + > +#if defined(CONFIG_SATA_AHCI) || defined(CONFIG_SATA_AHCI_MODULE) > +static void __devinit quirk_sb600_sata(struct pci_dev *pdev) > +{ > + /* set sb600 sata to ahci mode */ > + if ((pdev->class >> 8) == PCI_CLASS_STORAGE_IDE) { > + u8 tmp; > + > + pci_read_config_byte(pdev, 0x40, &tmp); > + pci_write_config_byte(pdev, 0x40, tmp|1); > + pci_write_config_byte(pdev, 0x9, 1); > + pci_write_config_byte(pdev, 0xa, 6); > + pci_write_config_byte(pdev, 0x40, tmp); > + > + pdev->class = 0x010601; > + } > +} > +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, > PCI_DEVICE_ID_ATI_IXP600_SATA, quirk_sb600_sata); > +#endif > > /* > * As per PCI spec, ignore base address registers 0-3 of the IDE > controllers Can you use fewer magic numbers, please? At least some of those are already #defined in include/linux/pci_regs.h. --- ~Randy - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html