Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
virtex_ml510.c
Go to the documentation of this file.
1 #include <asm/i8259.h>
2 #include <linux/pci.h>
3 #include "44x.h"
4 
8 static void __devinit ml510_ali_quirk(struct pci_dev *dev)
9 {
10  /* Enable the IDE controller */
11  pci_write_config_byte(dev, 0x58, 0x4c);
12  /* Assign irq 14 to the primary ide channel */
13  pci_write_config_byte(dev, 0x44, 0x0d);
14  /* Assign irq 15 to the secondary ide channel */
15  pci_write_config_byte(dev, 0x75, 0x0f);
16  /* Set the ide controller in native mode */
17  pci_write_config_byte(dev, 0x09, 0xff);
18 
19  /* INTB = disabled, INTA = disabled */
20  pci_write_config_byte(dev, 0x48, 0x00);
21  /* INTD = disabled, INTC = disabled */
22  pci_write_config_byte(dev, 0x4a, 0x00);
23  /* Audio = INT7, Modem = disabled. */
24  pci_write_config_byte(dev, 0x4b, 0x60);
25  /* USB = INT7 */
26  pci_write_config_byte(dev, 0x74, 0x06);
27 }
28 DECLARE_PCI_FIXUP_EARLY(0x10b9, 0x1533, ml510_ali_quirk);
29