歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> jLink V8調試Exynos 4412 u-boot的幾點補充

jLink V8調試Exynos 4412 u-boot的幾點補充

日期:2017/3/1 9:17:38   编辑:Linux編程
/** ****************************************************************************** * @author Maoxiao Hu * @version V1.0.0 * @date Dec-2014 ****************************************************************************** * < COPYRIGHT 2014 ISE of SHANDONG UNIVERSITY > ******************************************************************************* **/ 上接博客《使用Eclipse與jLink V8調試Exynos 4412 u-boot》,以下簡稱《博客1》。 提前聲明:經過本人親自測試與修改,用JLink是完全可以實現uboot調試的。 在《博客1》中初步實現了調試環境的搭建,但是經過實驗,出現的問題很多: 1、沒有考慮eMMC中代碼/數據完全被破壞,無法啟動的情況。 2、如果只使用三星提供的BL1燒寫到TF卡上啟動,JLink無法探測到CPU。 3、eclipse自動匹配匯編/源碼錯誤,造成無法識讀。 據分析原因或解決方法如下: 1、eMMC中數據/源碼被完全破壞,需要從TF/SD卡啟動,制作方法參考我的另一篇博客《[小知識]如何在Mac下使用TF/SD 卡制作Exynos 4412 u-boot啟動盤》。http://www.linuxidc.com/Linux/2015-02/113494.htm 2、CPU無法被探測的原因可能是電源管理芯片未給4412的CoreSight所在的IP核供電,JTAG口Vref引腳無參考電壓輸出,JLink探測不到這個參考電壓無法確定CPU的高低電平范圍。 3、board文件夾下只保留samsung子文件夾,cpu文件夾下只保留arm_cortexa9子文件夾,刪除其它架構文件夾即可。

一、制作可以連接Jlink調試器的最小啟動盤

為了解決上面第二個問題,我們需要在制作TF卡啟動盤的時候,除了燒寫BL1,還需要燒寫另外一段使能電源管理芯片(PMC)的BL2,但是這個BL2只是使能PMC,無其它任何代碼。 修改start.s開頭部分如下: 然後編譯uboot,燒寫BL1和CodeSign4SecureBoot文件夾下生成的checksum_bl2_14k.bin。注意此時一個可以連接JLink調試的TF卡就制作完成了,在以後整個u-boot調試階段這個啟動盤都不需要再動!

二、暫時修改代碼基地址

修改board/samsung/smdkc210/config.mk

TEXT_BASE = 0x02023400

同時取消lowlevel_init.S中的check_mem定義

原因參看《Exynos4412_iROM_Secure_Booting_Guide_Ver.1.00.00.pdf》圖3-1。

三、去掉MMU使能函數

mmu_on

四、eclipse裡替換以下gdb初始化命令

target remote localhost:2331
monitor sleep 10
monitor halt
monitor sleep 500
load
break _start

補充:如果eclipse中的源碼經過調整顯示仍然錯誤,不用管它,直接看eclipse下方的匯編區,匯編區的源碼顯示是一定正確的。

做完以上幾點後,uboot的調試就可以完美進行了,剩下的問題基本都是代碼問題。

仍然存在的問題:

當調試到uboot中時鐘初始化代碼時,JLink會失去連接,估計是時鐘的調整直接影響了CoreSight模塊,JLink被迫與CPU斷開。 所以,時鐘初始化在uboot調試階段,需要直接放到gdb初始化命令中做,待其它部分都調試完成,再轉移uboot代碼當中。 以上腳本會在以後博客中放出(以完成請參看《JLink V8初始化Exynos4412腳本》)。 附: 1、三星BL1.bin下載 密碼:7jpr 2、制作好的checksum_bl2_14k.bin下載 密碼:av3y 到Linux公社1號FTP服務器下載

------------------------------------------分割線------------------------------------------

FTP地址:ftp://ftp1.linuxidc.com

用戶名:ftp1.linuxidc.com

密碼:www.linuxidc.com

在 2016年LinuxIDC.com\3月\jLink V8調試Exynos 4412 u-boot的幾點補充\

下載方法見 http://www.linuxidc.com/Linux/2013-10/91140.htm

------------------------------------------分割線------------------------------------------

Copyright © Linux教程網 All Rights Reserved