diff options
author | Michal Ostrowski <mostrows@watson.ibm.com> | 2006-12-28 05:14:43 +0100 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-01-24 11:13:57 +0100 |
commit | a2894cfb3a6d60980ba85181e31ccc079807e92b (patch) | |
tree | c840b415e5f31be2ca44c9308d4916632994fedb /arch/powerpc/kernel | |
parent | [POWERPC] Move ELF_ET_DYN_BASE up to 512MB point (diff) | |
download | linux-a2894cfb3a6d60980ba85181e31ccc079807e92b.tar.xz linux-a2894cfb3a6d60980ba85181e31ccc079807e92b.zip |
[POWERPC] Do not write virq back to PCI config space
- Drivers will not rely on the PCI config space value, as they've
already been conditioned to rely on the irq field in "struct pci_dev".
- The virq value may not be < 256 as it has been remapped.
- The PCI config space should reflect the hardware configuration, which
is not being changed. We are only creating a virtual irq mapping that
exists in the kernel only. One would never expect the PCI hardware to
generate the "virq" interrupt.
Signed-off-by: Michal Ostrowski <mostrows@watson.ibm.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/pci_32.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kernel/pci_64.c | 1 |
2 files changed, 0 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/pci_32.c b/arch/powerpc/kernel/pci_32.c index c54f3639c5ad..d8ef2e100505 100644 --- a/arch/powerpc/kernel/pci_32.c +++ b/arch/powerpc/kernel/pci_32.c @@ -1450,7 +1450,6 @@ int pci_read_irq_line(struct pci_dev *pci_dev) return -1; } pci_dev->irq = virq; - pci_write_config_byte(pci_dev, PCI_INTERRUPT_LINE, virq); return 0; } diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c index 73c59ec49120..b6d08738180b 100644 --- a/arch/powerpc/kernel/pci_64.c +++ b/arch/powerpc/kernel/pci_64.c @@ -1325,7 +1325,6 @@ int pci_read_irq_line(struct pci_dev *pci_dev) DBG(" -> mapped to linux irq %d\n", virq); pci_dev->irq = virq; - pci_write_config_byte(pci_dev, PCI_INTERRUPT_LINE, virq); return 0; } |