blob: 9cff9e7a2b2661f76b5df82a8568c72055b8f921 [file] [log] [blame]
Eric Miao49cbe782009-01-20 14:15:18 +08001/*
2 * linux/arch/arm/mach-mmp/include/mach/entry-macro.S
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9#include <mach/regs-icu.h>
10
Eric Miao49cbe782009-01-20 14:15:18 +080011 .macro get_irqnr_preamble, base, tmp
Haojian Zhuang2f7e8fa2009-12-04 09:41:28 -050012 mrc p15, 0, \tmp, c0, c0, 0 @ CPUID
13 and \tmp, \tmp, #0xff00
14 cmp \tmp, #0x5800
15 ldr \base, =ICU_VIRT_BASE
16 addne \base, \base, #0x10c @ PJ1 AP INT SEL register
17 addeq \base, \base, #0x104 @ PJ4 IRQ SEL register
Eric Miao49cbe782009-01-20 14:15:18 +080018 .endm
19
20 .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
21 ldr \tmp, [\base, #0]
22 and \irqnr, \tmp, #0x3f
23 tst \tmp, #(1 << 6)
24 .endm