Commit a5d6fa0d authored by nbd's avatar nbd

cns3xxx: fix shared PCI interrupt mapping

This patch originally failed to combine INTA/B/C/D onto a single ARM CPU
interrupt. Instead, it mapped INTA/B/C and excluded D. This patch
corrects the issue by mapping all four interrupts to the single ARM CPU
interrupt. The original intent of the patch still holds as the newer PCB
take advantage of isolated interrupts. This fix only applies to older
PCB's that do not route INTA/B/C/D to unique external ARM CPU
interrupts.
Signed-off-by: 's avatarPushpal Sidhu <psidhu@gateworks.com>

Backport of r42830

git-svn-id: svn://svn.openwrt.org/openwrt/branches/barrier_breaker@42846 3c298f89-4303-0410-b956-a3cf2f4a3e73
parent 782f6129
......@@ -30,7 +30,7 @@
#include <linux/gpio.h>
#include <linux/dma-mapping.h>
#include <linux/serial_core.h>
@@ -869,12 +870,45 @@ static int laguna_register_gpio(struct g
@@ -869,12 +870,42 @@ static int laguna_register_gpio(struct g
return ret;
}
......@@ -70,10 +70,7 @@
+ }
+ printk("laguna: using shared PCI interrupts: irq%d\n",
+ IRQ_CNS3XXX_PCIE0_DEVICE);
+ irqs[0] = IRQ_CNS3XXX_PCIE0_DEVICE;
+ irqs[1] = IRQ_CNS3XXX_PCIE0_DEVICE;
+ irqs[2] = IRQ_CNS3XXX_PCIE0_DEVICE;
+ return cns3xxx_pcie_init(irqs, NULL);
+ return cns3xxx_pcie_init(NULL, NULL);
}
subsys_initcall(laguna_pcie_init);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment