Add forgotten part of vlynq irq setup
SVN-Revision: 6606
This commit is contained in:
parent
9eb91471ce
commit
510db3b0a6
2 changed files with 5 additions and 1 deletions
|
@ -22,6 +22,7 @@
|
||||||
#include <linux/pci.h>
|
#include <linux/pci.h>
|
||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
|
#include <linux/irq.h>
|
||||||
#include <asm/ar7/vlynq.h>
|
#include <asm/ar7/vlynq.h>
|
||||||
|
|
||||||
#define VLYNQ_PCI_SLOTS 2
|
#define VLYNQ_PCI_SLOTS 2
|
||||||
|
@ -61,6 +62,7 @@ static struct vlynq_pci_config known_devices[] = {
|
||||||
{ .size = 0x0, .offset = 0x0 },
|
{ .size = 0x0, .offset = 0x0 },
|
||||||
},
|
},
|
||||||
.irq = 0, .chip = 0x9066104c,
|
.irq = 0, .chip = 0x9066104c,
|
||||||
|
.irq_type = IRQ_TYPE_EDGE_RISING,
|
||||||
.class = PCI_CLASS_NETWORK_OTHER,
|
.class = PCI_CLASS_NETWORK_OTHER,
|
||||||
.num_regs = 5,
|
.num_regs = 5,
|
||||||
.regs = {
|
.regs = {
|
||||||
|
@ -313,6 +315,8 @@ static int vlynq_pci_probe(struct vlynq_device *dev)
|
||||||
vlynq_set_local_mapping(dev, dev->mem_start, mapping);
|
vlynq_set_local_mapping(dev, dev->mem_start, mapping);
|
||||||
vlynq_set_remote_mapping(dev, 0, config->rx_mapping);
|
vlynq_set_remote_mapping(dev, 0, config->rx_mapping);
|
||||||
|
|
||||||
|
set_irq_type(vlynq_virq_to_irq(dev, config->irq), config->irq_type);
|
||||||
|
|
||||||
addr = (u32)ioremap_nocache(dev->mem_start, 0x10000);
|
addr = (u32)ioremap_nocache(dev->mem_start, 0x10000);
|
||||||
if (!addr) {
|
if (!addr) {
|
||||||
printk(KERN_ERR "%s: failed to remap io memory\n",
|
printk(KERN_ERR "%s: failed to remap io memory\n",
|
||||||
|
|
|
@ -117,7 +117,7 @@ static void vlynq_irq_unmask(unsigned int irq)
|
||||||
BUG_ON(!dev);
|
BUG_ON(!dev);
|
||||||
virq = irq - dev->irq_start;
|
virq = irq - dev->irq_start;
|
||||||
val = dev->remote->int_device[virq >> 2];
|
val = dev->remote->int_device[virq >> 2];
|
||||||
val |= VINT_ENABLE << VINT_OFFSET(virq);
|
val |= (VINT_ENABLE | virq) << VINT_OFFSET(virq);
|
||||||
dev->remote->int_device[virq >> 2] = val;
|
dev->remote->int_device[virq >> 2] = val;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue