1.Linux內核2.6.12版本及以上,提供了對tpm芯片的支持,首先編譯內核
#make menuconfig
在內核配置文件中選中如下參數即可將TPM驅動編入內核。
Device Driver->
Character Device->
[*] TPM Hardware Support->
[*] TPM Interface Specification 1.2 Interface
然後會在內核/arch/arm/boot下生成內核文件zImage2 生成uImage文件
使用u-boot生成工具mkimage生成uImage文件。
uboot源代碼的/tools目錄下有mkimage工具(mkimage.c),這個工具可以用來製作不壓縮或者壓縮的多種可啓動映象文件。
mkimage在製作映象文件的時候,是在原來的可執行映象文件的前面加上一個0x40字節的頭,記錄參數所指定的信息,這樣uboot才能識別這個映象是針對哪個CPU體系結構的,哪個OS的,哪種類型,加載內存中的哪個位置, 入口點在內存的那個位置以及映象名是什麼。
如果沒有需要先安裝一下:ubuntu下root@ubuntu:~/u-boot/tools# apt-get install uboot-mkimage
安裝成功後執行:
此時會在內核源代碼根目錄下生成uImage內核文件
3 燒寫內核 拷貝生成的 uImage文件到TFTP下載目錄/tftpboot
root@ubuntu:~/kernel# cp uImage /tftpboot/
然後計入u-boot控制檯設置主機和ARM板子上的IP
然後用命令tftp 0x30008000 uImage固化到NANDFLASH。擦除NANDFLASH空間0x80000 0x200000 然後寫入到這個地址。使用bootm引導內核。。。。完成