|
20 | 20 | #define DEV_PCIE_PORT_2 0x7a29
|
21 | 21 |
|
22 | 22 | #define DEV_LS2K_APB 0x7a02
|
23 |
| -#define DEV_LS7A_CONF 0x7a10 |
| 23 | +#define DEV_LS7A_GMAC 0x7a03 |
| 24 | +#define DEV_LS7A_DC1 0x7a06 |
24 | 25 | #define DEV_LS7A_LPC 0x7a0c
|
| 26 | +#define DEV_LS7A_AHCI 0x7a08 |
| 27 | +#define DEV_LS7A_CONF 0x7a10 |
| 28 | +#define DEV_LS7A_GNET 0x7a13 |
| 29 | +#define DEV_LS7A_EHCI 0x7a14 |
| 30 | +#define DEV_LS7A_DC2 0x7a36 |
| 31 | +#define DEV_LS7A_HDMI 0x7a37 |
25 | 32 |
|
26 | 33 | #define FLAG_CFG0 BIT(0)
|
27 | 34 | #define FLAG_CFG1 BIT(1)
|
@@ -100,6 +107,25 @@ static void loongson_mrrs_quirk(struct pci_dev *dev)
|
100 | 107 | }
|
101 | 108 | DECLARE_PCI_FIXUP_ENABLE(PCI_ANY_ID, PCI_ANY_ID, loongson_mrrs_quirk);
|
102 | 109 |
|
| 110 | +static void loongson_pci_pin_quirk(struct pci_dev *pdev) |
| 111 | +{ |
| 112 | + pdev->pin = 1 + (PCI_FUNC(pdev->devfn) & 3); |
| 113 | +} |
| 114 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 115 | + DEV_LS7A_DC1, loongson_pci_pin_quirk); |
| 116 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 117 | + DEV_LS7A_DC2, loongson_pci_pin_quirk); |
| 118 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 119 | + DEV_LS7A_GMAC, loongson_pci_pin_quirk); |
| 120 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 121 | + DEV_LS7A_AHCI, loongson_pci_pin_quirk); |
| 122 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 123 | + DEV_LS7A_EHCI, loongson_pci_pin_quirk); |
| 124 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 125 | + DEV_LS7A_GNET, loongson_pci_pin_quirk); |
| 126 | +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LOONGSON, |
| 127 | + DEV_LS7A_HDMI, loongson_pci_pin_quirk); |
| 128 | + |
103 | 129 | static struct loongson_pci *pci_bus_to_loongson_pci(struct pci_bus *bus)
|
104 | 130 | {
|
105 | 131 | struct pci_config_window *cfg;
|
|
0 commit comments