pic.c (abc244dd855a8013db8c850c21811c12a22b608a) pic.c (35499c0195e46f479cf6ac16ad8d3f394b5fcc10)
1/*
2 * Support for the interrupt controllers found on Power Macintosh,
3 * currently Apple's "Grand Central" interrupt controller in all
4 * it's incarnations. OpenPIC support used on newer machines is
5 * in a separate file
6 *
7 * Copyright (C) 1997 Paul Mackerras (paulus@samba.org)
8 *

--- 416 unchanged lines hidden (view full) ---

425 irqctrler = np;
426 np = np->next;
427 }
428 if (irqctrler != NULL && irqctrler->n_addrs > 0) {
429 unsigned char senses[128];
430
431 printk(KERN_INFO "PowerMac using OpenPIC irq controller at 0x%08x\n",
432 (unsigned int)irqctrler->addrs[0].address);
1/*
2 * Support for the interrupt controllers found on Power Macintosh,
3 * currently Apple's "Grand Central" interrupt controller in all
4 * it's incarnations. OpenPIC support used on newer machines is
5 * in a separate file
6 *
7 * Copyright (C) 1997 Paul Mackerras (paulus@samba.org)
8 *

--- 416 unchanged lines hidden (view full) ---

425 irqctrler = np;
426 np = np->next;
427 }
428 if (irqctrler != NULL && irqctrler->n_addrs > 0) {
429 unsigned char senses[128];
430
431 printk(KERN_INFO "PowerMac using OpenPIC irq controller at 0x%08x\n",
432 (unsigned int)irqctrler->addrs[0].address);
433 ppc_md.get_irq = mpic_get_irq;
434 pmac_call_feature(PMAC_FTR_ENABLE_MPIC, irqctrler, 0, 0);
435
436 prom_get_irq_senses(senses, 0, 128);
437 mpic1 = mpic_alloc(irqctrler->addrs[0].address,
438 MPIC_PRIMARY | MPIC_WANTS_RESET,
439 0, 0, 128, 252, senses, 128, " OpenPIC ");
440 BUG_ON(mpic1 == NULL);
441 mpic_init(mpic1);

--- 36 unchanged lines hidden (view full) ---

478 }
479 irqctrler = NULL;
480
481#ifdef CONFIG_PPC32
482 /* Get the level/edge settings, assume if it's not
483 * a Grand Central nor an OHare, then it's an Heathrow
484 * (or Paddington).
485 */
433 pmac_call_feature(PMAC_FTR_ENABLE_MPIC, irqctrler, 0, 0);
434
435 prom_get_irq_senses(senses, 0, 128);
436 mpic1 = mpic_alloc(irqctrler->addrs[0].address,
437 MPIC_PRIMARY | MPIC_WANTS_RESET,
438 0, 0, 128, 252, senses, 128, " OpenPIC ");
439 BUG_ON(mpic1 == NULL);
440 mpic_init(mpic1);

--- 36 unchanged lines hidden (view full) ---

477 }
478 irqctrler = NULL;
479
480#ifdef CONFIG_PPC32
481 /* Get the level/edge settings, assume if it's not
482 * a Grand Central nor an OHare, then it's an Heathrow
483 * (or Paddington).
484 */
485 ppc_md.get_irq = pmac_get_irq;
486 if (find_devices("gc"))
487 level_mask[0] = GC_LEVEL_MASK;
488 else if (find_devices("ohare")) {
489 level_mask[0] = OHARE_LEVEL_MASK;
490 /* We might have a second cascaded ohare */
491 level_mask[1] = OHARE_LEVEL_MASK;
492 } else {
493 level_mask[0] = HEATHROW_LEVEL_MASK;

--- 189 unchanged lines hidden ---
486 if (find_devices("gc"))
487 level_mask[0] = GC_LEVEL_MASK;
488 else if (find_devices("ohare")) {
489 level_mask[0] = OHARE_LEVEL_MASK;
490 /* We might have a second cascaded ohare */
491 level_mask[1] = OHARE_LEVEL_MASK;
492 } else {
493 level_mask[0] = HEATHROW_LEVEL_MASK;

--- 189 unchanged lines hidden ---