/*
* The VIA pirq rules are nibble-based, like ALI,
* but without the ugly irq number munging.
+ * However, PIRQD is in the upper instead of lower nibble.
*/
static int pirq_via_get(struct pci_dev *router, struct pci_dev *dev, int pirq)
{
- return read_config_nybble(router, 0x55, pirq);
+ return read_config_nybble(router, 0x55, pirq == 4 ? 5 : pirq);
}
static int pirq_via_set(struct pci_dev *router, struct pci_dev *dev, int pirq, int irq)
{
- write_config_nybble(router, 0x55, pirq, irq);
+ write_config_nybble(router, 0x55, pirq == 4 ? 5 : pirq, irq);
return 1;
}
Alan Cox wrote:
I am also curious where the IRQ routing changes went because I don't see any obvious changs to quirks.c. I'm looking in the wrong place?
PCI router code. It was how we interpreted the table rather than a quirk in them.
-- video4linux-list mailing list Unsubscribe mailto:[EMAIL PROTECTED] https://www.redhat.com/mailman/listinfo/video4linux-list
-- video4linux-list mailing list Unsubscribe mailto:[EMAIL PROTECTED] https://www.redhat.com/mailman/listinfo/video4linux-list
