[POWERPC] 86xx: Enable the AC97 interface on 8641D board.
authorJason Jin <jason.jin@freescale.com>
Wed, 2 May 2007 21:53:38 +0000 (16:53 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Thu, 10 May 2007 04:01:09 +0000 (23:01 -0500)
HD interface and AC97 interface share some pins and they are enabled at
the same time, In order to use AC97 interface, we need to disable the HD
interface first.

Signed-off-by:Jason Jin<jason.jin@freescale.com>
Acked-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
arch/powerpc/platforms/86xx/mpc86xx_hpcn.c

index 90877565caa33238f2b83514df58a7dd0d0ac1c1..1051702c8d4f48c5e2dc9bc0c01be7e913e8eb0b 100644 (file)
@@ -168,7 +168,7 @@ static void __devinit quirk_uli1575(struct pci_dev *dev)
 {
        unsigned short temp;
        struct pci_controller *hose = pci_bus_to_host(dev->bus);
-       unsigned char irq2pin[16];
+       unsigned char irq2pin[16], c;
        unsigned long pirq_map_word = 0;
        u32 irq;
        int i;
@@ -288,6 +288,11 @@ static void __devinit quirk_uli1575(struct pci_dev *dev)
        outb(0x1e, 0x4d1);
 
 #undef ULI1575_SET_DEV_IRQ
+
+       /* Disable the HD interface and enable the AC97 interface. */
+       pci_read_config_byte(dev, 0xb8, &c);
+       c &= 0x7f;
+       pci_write_config_byte(dev, 0xb8, c);
 }
 
 static void __devinit quirk_uli5288(struct pci_dev *dev)