Path: blob/master/arch/arm/mach-gemini/include/mach/entry-macro.S
10820 views
/*1* Low-level IRQ helper macros for Gemini platform.2*3* Copyright (C) 2001-2006 Storlink, Corp.4* Copyright (C) 2008-2009 Paulius Zaleckas <[email protected]>5*6* This file is licensed under the terms of the GNU General Public7* License version 2. This program is licensed "as is" without any8* warranty of any kind, whether express or implied.9*/10#include <mach/hardware.h>1112#define IRQ_STATUS 0x141314.macro disable_fiq15.endm1617.macro get_irqnr_preamble, base, tmp18.endm1920.macro arch_ret_to_user, tmp1, tmp221.endm2223.macro get_irqnr_and_base, irqnr, irqstat, base, tmp24ldr \irqstat, =IO_ADDRESS(GEMINI_INTERRUPT_BASE + IRQ_STATUS)25ldr \irqnr, [\irqstat]26cmp \irqnr, #027beq 2313f28mov \tmp, \irqnr29mov \irqnr, #0302312:31tst \tmp, #132bne 2313f33add \irqnr, \irqnr, #134mov \tmp, \tmp, lsr #135cmp \irqnr, #3136bcc 2312b372313:38.endm394041