2014-06-27 210 views
3

我想了解內核引導。我目前正試圖將一個新內核移植到hTC Incredible S VIVO(s710e)設備,但我無法啓動它。所以,我查看了設備的原始內核,並查看了一些文檔,發現設備使用了ATAG。現在,我有幾個問題我找不到明確的答案:什麼是使用Linux內核的設備的ATAG?

  • 什麼是ATAG?
  • 它們用於什麼?
  • 內核如何使用ATAG啓動?
  • ATAGs在啓動內核中扮演着至關重要的角色嗎?
+0

[Custom ATAGS](http://stackoverflow.com/questions/17661550/how-to-add-customised-atag-variable-in-u-boot-and-linux-kernel),[爲什麼啓動加載器在嵌入式/ ARM設備?](http://stackoverflow.com/questions/15548004/why-do-we-need-a-bootloader-in-an-embedded-device),[ARM ATAGS vs設備樹](http ://stackoverflow.com/questions/21014920/arm-linux-atags-vs-device-tree) –

回答

5

ATAGS是ARM標籤。它們用於從啓動代碼到內核傳遞內存大小等信息。一些參考文獻(反過來導致其他參考文獻):booting standards,customized ATAG

該參考文獻arm/Booting解釋理論,但沒有太多告訴用戶該做什麼。

在我的目標上,我在我的U-Boot配置中使用以下內容:CONFIG_CMDLINE_TAG,CONFIG_SETUP_MEMORY_TAGS,這些在我的內核配置中:CONFIG_ATAGS = y,CONFIG_USE_OF未設置。不知道這對你是否足夠,但它給你線索搜索,祝你好運。

+0

非常感謝。我可以看看你的內核源代碼嗎? – rqmok

相關問題