entry-macro.s

来自「LINUX 2.6.17.4的源码」· S 代码 · 共 54 行

S
54
字号
/* * linux/include/asm-arm/arch-ep93xx/entry-macro.S * IRQ demultiplexing for EP93xx * * Copyright (C) 2006 Lennert Buytenhek <buytenh@wantstofly.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or (at * your option) any later version. */#include <asm/arch/ep93xx-regs.h>		.macro	disable_fiq		.endm		.macro	get_irqnr_and_base, irqnr, irqstat, base, tmp		ldr	\base, =(EP93XX_AHB_VIRT_BASE)		orr	\base, \base, #0x000b0000		mov	\irqnr, #0		ldr	\irqstat, [\base]		@ lower 32 interrupts		cmp	\irqstat, #0		bne	1001f		eor	\base, \base, #0x00070000		ldr	\irqstat, [\base]		@ upper 32 interrupts		cmp	\irqstat, #0		beq	1002f		mov	\irqnr, #0x201001:		movs	\tmp, \irqstat, lsl #16		movne	\irqstat, \tmp		addeq	\irqnr, \irqnr, #16		movs	\tmp, \irqstat, lsl #8		movne	\irqstat, \tmp		addeq	\irqnr, \irqnr, #8		movs	\tmp, \irqstat, lsl #4		movne	\irqstat, \tmp		addeq	\irqnr, \irqnr, #4		movs	\tmp, \irqstat, lsl #2		movne	\irqstat, \tmp		addeq	\irqnr, \irqnr, #2		movs	\tmp, \irqstat, lsl #1		addeq	\irqnr, \irqnr, #1		orrs	\base, \base, #11002:		.endm

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?