entry-macro.S 838 字节
Newer Older
1
/*
2
 * include/asm-arm/arch-orion5x/entry-macro.S
3 4 5
 *
 * Low-level IRQ helper macros for Orion platforms
 *
6 7
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
8 9 10
 * warranty of any kind, whether express or implied.
 */

11
#include <asm/arch/orion5x.h>
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

	.macro  disable_fiq
	.endm

	.macro  arch_ret_to_user, tmp1, tmp2
	.endm

	.macro  get_irqnr_preamble, base, tmp
	ldr	\base, =MAIN_IRQ_CAUSE
	.endm

	.macro  get_irqnr_and_base, irqnr, irqstat, base, tmp
	ldr	\irqstat, [\base, #0]		@ main cause
	ldr	\tmp, [\base, #(MAIN_IRQ_MASK - MAIN_IRQ_CAUSE)] @ main mask
	mov	\irqnr, #0			@ default irqnr
	@ find cause bits that are unmasked
	ands	\irqstat, \irqstat, \tmp	@ clear Z flag if any
	clzne	\irqnr,	\irqstat		@ calc irqnr
	rsbne	\irqnr, \irqnr, #31
	.endm