Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / arch / powerpc / platforms / 44x / virtex_ml510.c
1 // SPDX-License-Identifier: GPL-2.0
2 #include <asm/i8259.h>
3 #include <linux/pci.h>
4 #include "44x.h"
5
6 /**
7  * ml510_ail_quirk
8  */
9 static void ml510_ali_quirk(struct pci_dev *dev)
10 {
11         /* Enable the IDE controller */
12         pci_write_config_byte(dev, 0x58, 0x4c);
13         /* Assign irq 14 to the primary ide channel */
14         pci_write_config_byte(dev, 0x44, 0x0d);
15         /* Assign irq 15 to the secondary ide channel */
16         pci_write_config_byte(dev, 0x75, 0x0f);
17         /* Set the ide controller in native mode */
18         pci_write_config_byte(dev, 0x09, 0xff);
19
20         /* INTB = disabled, INTA = disabled */
21         pci_write_config_byte(dev, 0x48, 0x00);
22         /* INTD = disabled, INTC = disabled */
23         pci_write_config_byte(dev, 0x4a, 0x00);
24         /* Audio = INT7, Modem = disabled. */
25         pci_write_config_byte(dev, 0x4b, 0x60);
26         /* USB = INT7 */
27         pci_write_config_byte(dev, 0x74, 0x06);
28 }
29 DECLARE_PCI_FIXUP_EARLY(0x10b9, 0x1533, ml510_ali_quirk);
30