Shane Huang wrote:
> SB700 SATA MSI bug will be fixed in SB700 revision A21 at hardware
> level,
> but the SB700 revision older than A21 will also be found in the market.
> This patch modify the original quirk commit
> bc38b411fe696fad32b261f492cb4afbf1835256 instead of withdrawing it.
> 
> 
> Signed-off-by: Shane Huang <[EMAIL PROTECTED]>
> 
> 
> Since there is some word wrapping problem with my mail client MS
> outlook, I also attach the patch as an attachment. Please check it.

Can you please get a decent email client?  Thunderbird + toggle word
wrap + external editor combination works fine.

> diff -ruN old/drivers/pci/quirks.c new/drivers/pci/quirks.c
> --- old/drivers/pci/quirks.c  2008-01-07 05:45:38.000000000 +0800
> +++ new/drivers/pci/quirks.c  2008-01-22 11:31:09.000000000 +0800
> @@ -1709,6 +1709,22 @@
>  {
>       dev->dev_flags |= PCI_DEV_FLAGS_MSI_INTX_DISABLE_BUG;
>  }
> +static void __devinit quirk_msi_intx_disable_ati_bug(struct pci_dev
> *dev)
> +{
> +     struct pci_dev *p;
> +     u8 rev = 0;
> +
> +     /* SB700 MSI issue will be fixed at HW level from revision A21,
> +      * we need check PCI REVISION ID of SMBus controller to get
> SB700 revision.
> +      */
> +     p = pci_get_device(PCI_VENDOR_ID_ATI,
> PCI_DEVICE_ID_ATI_SBX00_SMBUS, NULL);

It would be nice if things stay under 80col limit although we don't
follow that too well in quirks.c.

> +     if (p!=NULL) {

We usually write 'if (p)' and don't use unless necessary.

> +             pci_read_config_byte(p, PCI_CLASS_REVISION, &rev);
> +     }
> +     if ((rev < 0x3B) && (rev >= 0x30)) {
> +             dev->dev_flags |= PCI_DEV_FLAGS_MSI_INTX_DISABLE_BUG;
> +     }
> +}
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_BROADCOM,
>                       PCI_DEVICE_ID_TIGON3_5780,
>                       quirk_msi_intx_disable_bug);
> @@ -1729,17 +1745,17 @@
>                       quirk_msi_intx_disable_bug);
>  
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4390,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4391,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4392,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4393,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4394,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x4395,
> -                     quirk_msi_intx_disable_bug);
> +                     quirk_msi_intx_disable_ati_bug);

-- 
tejun
--
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