簡體   English   中英

Linux引導Angel引導

[英]Linux Booting Angel booting

我正在閱讀有關linux / arch / arm / boot / compressed / head.S的信息

我想到了angel boot 這是我第一次關於這個詞

#ifndef CONFIG_CPU_V7M
        /*
         * Booting from Angel - need to enter SVC mode and disable
         * FIQs/IRQs (numeric definitions from angel arm.h source).
         * We only do this if we were in user mode on entry.
         */
        mrs r2, cpsr        @ get current mode
        tst r2, #3          @ not user?
        bne not_angel
        mov r0, #0x17       @ angel_SWIreason_EnterSVC
 ARM(       swi 0x123456    )   @ angel_SWI_ARM
 THUMB(     svc 0xab        )   @ angel_SWI_THUMB
not_angel:
        safe_svcmode_maskall r0
        msr spsr_cxsf, r9       @ Save the CPU boot mode in
                        @ SPSR
#endif

所以我用谷歌搜索並閱讀了linux/Documentation/arm/Booting中的linux/Documentation/arm/Booting

在任何網站上都沒有關於天使引導的明確定義,而linux文檔只像下面這樣提到了天使

  For CPUs which do not include the ARM virtualization extensions, the
  CPU must be in SVC mode.  (A special exception exists for Angel)

所以我想知道關於天使靴的明確定義

謝謝您的回答

指ARM信息中心的內容,“ Angel是調試監視器,它允許快速開發和調試在基於ARM的硬件上運行的應用程序。” http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0066d/Babdcdih.html

看起來,當您的主板安裝了Angel時,您可以使用gdb之類的調試器通過Angel調試軟件。

它提供了一個稱為“半主機”的功能-板主機輸入/輸出橋接。 它是在SWI上下文中完成的。 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0058d/CIHDICHH.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM