diff options
| author | Stefan Roese <sr@denx.de> | 2007-08-15 14:51:27 +0200 | 
|---|---|---|
| committer | Stefan Roese <sr@denx.de> | 2007-08-15 14:51:27 +0200 | 
| commit | d61ea14885631e58a25feaa81ee82eb464c62d6a (patch) | |
| tree | 27927975039d0a15e6c6d4dfe8f765a76a12820a /cpu/mpc85xx/interrupts.c | |
| parent | 3ba4c2d68f6541db4677b4aea12071f56e6ff6e6 (diff) | |
| parent | 594e79838ce5078a90d0c27abb2b2d61d5f8e8a7 (diff) | |
| download | olio-uboot-2014.01-d61ea14885631e58a25feaa81ee82eb464c62d6a.tar.xz olio-uboot-2014.01-d61ea14885631e58a25feaa81ee82eb464c62d6a.zip | |
Merge with git://www.denx.de/git/u-boot.git
Diffstat (limited to 'cpu/mpc85xx/interrupts.c')
| -rw-r--r-- | cpu/mpc85xx/interrupts.c | 37 | 
1 files changed, 35 insertions, 2 deletions
| diff --git a/cpu/mpc85xx/interrupts.c b/cpu/mpc85xx/interrupts.c index 832781bab..bf737d622 100644 --- a/cpu/mpc85xx/interrupts.c +++ b/cpu/mpc85xx/interrupts.c @@ -89,6 +89,39 @@ int interrupt_init (void)  	mtspr(SPRN_TCR, TCR_PIE);  	set_dec (decrementer_count);  	set_msr (get_msr () | MSR_EE); + +#ifdef CONFIG_INTERRUPTS +	volatile ccsr_pic_t *pic = &immr->im_pic; + +	pic->iivpr1 = 0x810002;	/* 50220 enable ecm interrupts */ +	debug("iivpr1@%x = %x\n",&pic->iivpr1, pic->iivpr1); + +	pic->iivpr2 = 0x810002;	/* 50240 enable ddr interrupts */ +	debug("iivpr2@%x = %x\n",&pic->iivpr2, pic->iivpr2); + +	pic->iivpr3 = 0x810003;	/* 50260 enable lbc interrupts */ +	debug("iivpr3@%x = %x\n",&pic->iivpr3, pic->iivpr3); + +#ifdef CONFIG_PCI1 +	pic->iivpr8 = 0x810008;	/* enable pci1 interrupts */ +	debug("iivpr8@%x = %x\n",&pic->iivpr8, pic->iivpr8); +#endif +#if defined(CONFIG_PCI2) || defined(CONFIG_PCIE2) +	pic->iivpr9 = 0x810009;	/* enable pci1 interrupts */ +	debug("iivpr9@%x = %x\n",&pic->iivpr9, pic->iivpr9); +#endif +#ifdef CONFIG_PCIE1 +	pic->iivpr10 = 0x81000a;	/* enable pcie1 interrupts */ +	debug("iivpr10@%x = %x\n",&pic->iivpr10, pic->iivpr10); +#endif +#ifdef CONFIG_PCIE3 +	pic->iivpr11 = 0x81000b;	/* enable pcie3 interrupts */ +	debug("iivpr11@%x = %x\n",&pic->iivpr11, pic->iivpr11); +#endif + +	pic->ctpr=0;		/* 40080 clear current task priority register */ +#endif +  	return (0);  } @@ -144,7 +177,7 @@ void set_timer (ulong t)  	timestamp = t;  } -#if (CONFIG_COMMANDS & CFG_CMD_IRQ) +#if defined(CONFIG_CMD_IRQ)  /*******************************************************************************   * @@ -159,4 +192,4 @@ do_irqinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])  	return 0;  } -#endif  /* CONFIG_COMMANDS & CFG_CMD_IRQ */ +#endif |