*参照元 [#l95f68b6]
#backlinks

*説明 [#l95f440d]
-パス: [[linux-2.6.33/arch/arm/kernel/entry-armv.S]]

-FIXME: これは何?
--説明


**引数 [#y59c7679]
-
--

**返り値 [#d67dacee]
-
--

**参考 [#w8ca25d6]


*実装 [#r0f5f2f6]
 /*
  * Interrupt handling.  Preserves r7, r8, r9
  */
 	.macro	irq_handler
 	get_irqnr_preamble r5, lr
-
--[[linux-2.6.33/get_irqnr_preamble()]]

 1:	get_irqnr_and_base r0, r6, r5, lr
-
--[[linux-2.6.33/get_irqnr_and_base()]]

 	movne	r1, sp
-Z フラグなしなら r1 に sp を入れる???

 	@
 	@ routine called with r0 = irq number, r1 = struct pt_regs *
 	@
 	adrne	lr, BSYM(1b)
 	bne	asm_do_IRQ
 
-
--[[linux-2.6.33/BSYM()]]
-
--[[linux-2.6.33/asm_do_IRQ()]]

 #ifdef CONFIG_SMP
-
--[[linux-2.6.33/CONFIG_SMP]]

 	/*
 	 * XXX
 	 *
 	 * this macro assumes that irqstat (r6) and base (r5) are
 	 * preserved from get_irqnr_and_base above
 	 */
 	test_for_ipi r0, r6, r5, lr
 	movne	r0, sp
 	adrne	lr, BSYM(1b)
 	bne	do_IPI
 
-
--[[linux-2.6.33/do_IPI()]]

 #ifdef CONFIG_LOCAL_TIMERS
-
--[[linux-2.6.33/CONFIG_LOCAL_TIMERS]]

 	test_for_ltirq r0, r6, r5, lr
 	movne	r0, sp
 	adrne	lr, BSYM(1b)
 	bne	do_local_timer
-
--[[linux-2.6.33/do_local_timer()]]

 #endif
 #endif
 
 	.endm


*コメント [#ud21c148]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS