Path: blob/master/arch/arm/mach-msm/include/mach/entry-macro-vic.S
17613 views
/*1* Copyright (C) 2007 Google, Inc.2* Author: Brian Swetland <[email protected]>3*4* This software is licensed under the terms of the GNU General Public5* License version 2, as published by the Free Software Foundation, and6* may be copied, distributed, and modified under those terms.7*8* This program is distributed in the hope that it will be useful,9* but WITHOUT ANY WARRANTY; without even the implied warranty of10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the11* GNU General Public License for more details.12*13*/1415#include <mach/msm_iomap.h>1617.macro disable_fiq18.endm1920.macro get_irqnr_preamble, base, tmp21@ enable imprecise aborts22cpsie a23mov \base, #MSM_VIC_BASE24.endm2526.macro arch_ret_to_user, tmp1, tmp227.endm2829.macro get_irqnr_and_base, irqnr, irqstat, base, tmp30@ 0xD0 has irq# or old irq# if the irq has been handled31@ 0xD4 has irq# or -1 if none pending *but* if you just32@ read 0xD4 you never get the first irq for some reason33ldr \irqnr, [\base, #0xD0]34ldr \irqnr, [\base, #0xD4]35cmp \irqnr, #0xffffffff36.endm373839