DS-5教程-ARM DS-5配合DSTREAM仿真器调试Linux和Android内核 - 威廉希尔官方网站 - 电子威廉希尔官方网站 论坛 - 最好最受欢迎电子论坛!

DS-5教程-ARM DS-5配合DSTREAM仿真器调试Linux和Android内核

i2c ( 楼主 ) 2014-10-13 11:19:37  只看该作者 倒序浏览
`` 本帖最后由 i2c 于 2014-10-13 11:38 编辑

1、重新编译内核 MYD-SAMA5D34开发板的Linux/Android系统默认没有开启内核调试信息,所以需要按照以下步骤进行开启。


(1)找到MYD-SAMA5D34开发板的光盘,将“05-Android_SourceLinux-at91”下的Linux内核包“linux-at91.tar.bz2”复制到Linux主机。
        注意:Linux内核包所在的目录可能不一样,以实际光盘为准。


(2)在linux主机下切换“linux-at91.tar.bz2”所在目录,输入如下命令解压内核包:
# tar xvjf linux-at91.tar.bz2         


(3)进入解压后目录,命令如下:
# cd linux-at91         


(4)配置环境变量,命令如下:
# export ARCH=arm         


(5)编译开发板的配置文件:
# make sama5d3_android_defconfig         


(6)调用图形菜单对内核进行配置,命令如下:
# make menuconfig         


(7)选择“kernel hacking”>“Kernel debugging”选项,其符号为“DEBUG_KERNEL”。该选项默认是开启的。


(8)选择“kernel hacking”>“compile the kernel with debug info”选项,符号为“DEBUG_INFO”。


(9)配置完成以后,按两次键,提示退出时选择< Yes >保存并退出。


(10)配置交叉编译工具,命令如下:
# export CROSS_COMPILE=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf-         

注意:交叉编译工具的搭建请参考MYD-SAMA5D3X开发板的用户手册,目录与上面的可能会有差异,根据具体情况设置。



(11)编译内核,命令如下:
# make         


(12)创建linux镜像文件,命令如下:
# make uImage         


(13)创建完成后,会生成两个我们调试内核会用到的文件。
-- /arch/arm/boot/uImage
        U-boot专用的映像文件,它在zImage之前加上一个长度为0x40的tag。我们下一步需要将它下载到目标板上。
-- /vmlinux
编译出来未压缩的,最原始的内核文件。下面DS-5调试选项中需要调用该文件。



(14)将上面生成的uImage镜像文件拷贝出来,放在自动下载目录下,再按用户手册自动下载进行下载。

2、导入Linux/android源码         
下面要在DS-5里面新建一个名为“MYD-SAMA5D3X_kernel”的工程,导入内核源码。


(15)打开DS-5,选择“File”>“Project...”。

(16)选择“general”>“Project”。



(17)在project name中输入工程名称,这里名为“MYD-SAMA5D3X_kernel”,然后点击“finish”完成工程创建。



(18)打开MYD-SAMA5D3X开发板光盘,将“05-Android_SourceLinux-at91 linux-at91.tar.bz2”压缩包linux-at91文件夹里面的所有内容解压到DS-5的“MYD-SAMA5D3X_kernel”工程中,然后右键工程名称,选择“Refresh”刷新。DS-5中就会显示添加文件。
  
(19)将新编译生成的内核镜像“vmlinux”也复制到“MYD-SAMA5D3X_kernel”工程目录中, 并刷新。

3、调试配置         
(20)将DSTREAM的ARM JTAG 20连接到MYD-SAMA5D34开发板的JTAG(J23)调试接口,并连接好DSTREAM和开发板的电源

(21)选择DS-5菜单栏“run”> “debug configuration…”,配置调试选项进行。



(22)在配置调试中,
        名称“name”输入“MYD-SAMA5D3X_kernel”作为连接名称。
        目标“target”下选择“Atmel”>“SAMA5D3x”>“Linux Kernel and/or Device Device Debug”。
        连接“connections”点击“browse…”选择搜索到的DSTREAM仿真器。

(23)Files选线默认留空。Debugger选项配置如下。
        运行控制“run control”选择“connect only”。
        点选“execute debugger commands”,并在输入框中输入:
interrupt         
add-symbol-file "MYD-SAMA5D3X_kernel mlinux"         

            

(24)下拉“debugger”选项卡,点击“paths”下面的“workspace…”按钮,选择“MYD-SAMA5D3X_kernel”工程作为DS-5源码搜索路径。

(25)打开开发板电源(或者复位),让开发板u-boot引导kernel,然后点击DS-5中的的“debug”按钮开始调试。


(26)这样DS-5就开始连接开发板了,相关视图如下,显示当前所有的调试名称,并且可以进行调试控制.


上图中,各控制按钮的作用为:

连接目标板

断开连接

  删除连接

从main函数或者entry point调试

继续全速运行

停止运行

   单步调试

选择按C程序单步调试,或者按汇编程序调试

(27)命令栏,可以在“commands”后面敲入命令,让开发板执行,比如敲入“step”就会进行单步调试。鼠标位于输入框内,按“Alt + /”可获得命令提示。



(28)汇编程序栏,显示程序对应的汇编程序、地址和操作数等。




(29)寄存器栏,显示内核里面的所有寄存器,在调试的时候可以对寄存器进行修改。



本文来自米尔科技,原文地址:http://www.myir-tech.com/resource/500.asp,转载请注明出处。


``

0个回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2025-2-23 17:09 , Processed in 0.755257 second(s), Total 49, Slave 35 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表