Path: blob/master/arch/arm/mach-lpc32xx/include/mach/entry-macro.S
10820 views
/*1* arch/arm/mach-lpc32xx/include/mach/entry-macro.S2*3* Author: Kevin Wells <[email protected]>4*5* Copyright (C) 2010 NXP Semiconductors6*7* This program is free software; you can redistribute it and/or modify8* it under the terms of the GNU General Public License as published by9* the Free Software Foundation; either version 2 of the License, or10* (at your option) any later version.11*12* This program is distributed in the hope that it will be useful,13* but WITHOUT ANY WARRANTY; without even the implied warranty of14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the15* GNU General Public License for more details.16*/1718#include <mach/hardware.h>19#include <mach/platform.h>2021#define LPC32XX_INTC_MASKED_STATUS_OFS 0x82223.macro disable_fiq24.endm2526.macro get_irqnr_preamble, base, tmp27ldr \base, =IO_ADDRESS(LPC32XX_MIC_BASE)28.endm2930.macro arch_ret_to_user, tmp1, tmp231.endm3233/*34* Return IRQ number in irqnr. Also return processor Z flag status in CPSR35* as set if an interrupt is pending.36*/37.macro get_irqnr_and_base, irqnr, irqstat, base, tmp38ldr \irqstat, [\base, #LPC32XX_INTC_MASKED_STATUS_OFS]39clz \irqnr, \irqstat40rsb \irqnr, \irqnr, #3141teq \irqstat, #042.endm4344.macro irq_prio_table45.endm46474849