• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/include/asm-arm/arch-shark/
1/*
2 * include/asm-arm/arch-shark/entry-macro.S
3 *
4 * Low-level IRQ helper macros for Shark platform
5 *
6 * This file is licensed under  the terms of the GNU General Public
7 * License version 2. This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10		.macro	disable_fiq
11		.endm
12
13		.macro  get_irqnr_preamble, base, tmp
14		.endm
15
16		.macro  arch_ret_to_user, tmp1, tmp2
17		.endm
18
19		.macro	get_irqnr_and_base, irqnr, irqstat, base, tmp
20		mov	r4, #0xe0000000
21
22		mov	\irqstat, #0x0C
23		strb	\irqstat, [r4, #0x20]		@outb(0x0C, 0x20) /* Poll command */
24		ldrb	\irqnr, [r4, #0x20]		@irq = inb(0x20) & 7
25		and	\irqstat, \irqnr, #0x80
26		teq	\irqstat, #0
27		beq	43f
28		and	\irqnr, \irqnr, #7
29		teq	\irqnr, #2
30		bne	44f
3143:		mov	\irqstat, #0x0C
32		strb	\irqstat, [r4, #0xa0]		@outb(0x0C, 0xA0) /* Poll command */
33		ldrb	\irqnr, [r4, #0xa0]		@irq = (inb(0xA0) & 7) + 8
34		and	\irqstat, \irqnr, #0x80
35		teq	\irqstat, #0
36		beq	44f
37		and	\irqnr, \irqnr, #7
38		add	\irqnr, \irqnr, #8
3944:		teq	\irqstat, #0
40		.endm
41