1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * 4 * Copyright (C) 2004-2007, 2012 Freescale Semiconductor, Inc. 5 * TsiChung Liew (Tsi-Chung.Liew@freescale.com) 6 */ 7 8/* CPU specific interrupt routine */ 9#include <irq_func.h> 10#include <asm/immap.h> 11#include <asm/io.h> 12 13int interrupt_init(void) 14{ 15 int0_t *intp = (int0_t *) (CFG_SYS_INTR_BASE); 16 17 /* Make sure all interrupts are disabled */ 18 setbits_be32(&intp->imrh0, 0xffffffff); 19 setbits_be32(&intp->imrl0, 0xffffffff); 20 21 enable_interrupts(); 22 return 0; 23} 24 25#if CONFIG_IS_ENABLED(MCFTMR) 26void dtimer_intr_setup(void) 27{ 28 int0_t *intp = (int0_t *) (CFG_SYS_INTR_BASE); 29 30 out_8(&intp->icr0[CFG_SYS_TMRINTR_NO], CFG_SYS_TMRINTR_PRI); 31 clrbits_be32(&intp->imrh0, CFG_SYS_TMRINTR_MASK); 32} 33#endif 34