Commit 1c065a68 authored by David S. Miller's avatar David S. Miller

On sparc64 Schizo PCI controllers, there is no inofixup

to apply during IRQ building.
parent 86f409df
...@@ -383,7 +383,7 @@ static unsigned int __init schizo_irq_build(struct pci_pbm_info *pbm, ...@@ -383,7 +383,7 @@ static unsigned int __init schizo_irq_build(struct pci_pbm_info *pbm,
struct ino_bucket *bucket; struct ino_bucket *bucket;
unsigned long imap, iclr, pbm_off; unsigned long imap, iclr, pbm_off;
unsigned long imap_off, iclr_off; unsigned long imap_off, iclr_off;
int pil, inofixup = 0; int pil;
if (pbm == &p->pbm_A) if (pbm == &p->pbm_A)
pbm_off = SCHIZO_PBM_A_REGS_OFF; pbm_off = SCHIZO_PBM_A_REGS_OFF;
...@@ -406,10 +406,13 @@ static unsigned int __init schizo_irq_build(struct pci_pbm_info *pbm, ...@@ -406,10 +406,13 @@ static unsigned int __init schizo_irq_build(struct pci_pbm_info *pbm,
iclr = p->controller_regs + pbm_off + iclr_off; iclr = p->controller_regs + pbm_off + iclr_off;
iclr += 4; iclr += 4;
if (ino < 0x18) /* On Schizo, no inofixup occurs. This is because each
inofixup = ino & 0x03; * INO has it's own IMAP register. On Psycho and Sabre
* there is only one IMAP register for each PCI slot even
bucket = __bucket(build_irq(pil, inofixup, iclr, imap)); * though four different INOs can be generated by each
* PCI slot.
*/
bucket = __bucket(build_irq(pil, 0, iclr, imap));
bucket->flags |= IBF_PCI; bucket->flags |= IBF_PCI;
return __irq(bucket); return __irq(bucket);
......
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