Linux Master/Baremetal Remote 配置下的裸机调试
为了实现在ZC702开发板上的两颗Cortex-A9处理器上实现Linux Master/Baremetal Remote 配置,并对Remote端的裸机程序进行调试,需要注意的几点如下:
一、建立petalinux工程后,执行petalinux-config,选择Kernel Bootargs--->
取消“generate boot args automatically ”,然后选择user set kernel bootargs,回车后输入:
console=ttyPS0,115200 earlyprintk maxcpus=1 mem=384M
保存并退出。
二、执行petalinux-config -c kernel,选择Kernel Features --->,然后取消Symmetric Multi-processing(若不取消,那么在Cpu0启动的时候,CPU1会随之启动。)
三、建立SDK工程,为CPU1建立BSP,设置BSP OS为standalone,cpu为ps7_cortexa9_1,并且BSP setting中设置extra_complier_flags的值为
-g -DUSE_AMP=1 -DUSEAMP=1
四、建立CPU1的程序, 同样OS选为standalone,cpu为ps7_cortexa9_1,建立完成后修改<app_cpu1>/src/lscript.ld,将ps7_ddr_0_S_AXI_BASEADDR的基址和大小分别设置为0x18000000,0x80000000,这是为了避免裸机程序和Linux在运行时发生内存冲突,所以应该设置相应完全独立的两块内存空间来分别执行Linux和裸机程序。在第二步中没有设置Linux 内核基址(默认为0x0),则mem=384M意为(0x0~0x1800 0000)。
五、接下来使用SDK进行裸机程序调试。首先利用petalinux编译生成的zynq_fsbl.elf、download.bit、u-boot.elf文件制作成BOOT.bin,并随同image.ub镜像拷贝到SD中,使ZC702从SD卡启动系统。利用SDK,选择run--->debug configurations,然后按类似以下步骤进行设置。

这边应取消一下几项:

防止cpu0被重启或是重新初始化。
之后切换到application :

最后点击Debug就可以了。
参考文献:1.xapp1078 Simple AMP Running Linux and Bare-Metal System on Both Zynq SoC Processors
2.http://www.wiki.xilinx.com/XAPP1078+Latest+Information
Linux Master/Baremetal Remote 配置下的裸机调试的更多相关文章
- Linux系统centOS7在虚拟机下的安装及XShell软件的配置
前面的话 本文将详细介绍Linux系统centOS7在虚拟机下的安装 准备工作 [系统下载] 在安装centOS7之前,首先在官网下载合适的版本 然后,选择一个链接下载即可 [虚拟机配置] 接下来,需 ...
- Oracle数据库学习(一):虚拟机下Oracle Linux的安装与配置
这篇博文主要以图片的形式讲述Oracle Linux在虚拟机下的安装与配置 一.前期虚拟机安装ISO文件的配置 1.创建新的虚拟机 2.选择“自定义(高级)”选项,下一步,默认“虚拟机硬件兼容性”或选 ...
- 负载均衡配置下的不同服务器【Linux】文件同步问题
负载均衡配置下的不同服务器[Linux]文件同步问题2017年04月13日 22:04:28 守望dfdfdf 阅读数:2468 标签: linux负载均衡服务器 更多个人分类: 工作 问题编辑版权声 ...
- Linux 各类设置、配置、使用技巧参考,Linux使用集锦
========== 参考格式 (新增记录时,复制粘贴在下)============= [日期]: <标题> 参考链接ref1: 参考链接ref2: 正文: ========== 参考格式 ...
- Linux ->> UBuntu 14.04 LTE下安装Hadoop 1.2.1(集群分布式模式)
安装步骤: 1) JDK -- Hadoop是用Java写的,不安装Java虚拟机怎么运行Hadoop的程序: 2)创建专门用于运行和执行hadoop任务(比如map和reduce任务)的linux用 ...
- linux服务器应用NTP配置时间同步
linux服务器应用NTP配置时间同步 • 为什么建议使用ntpd而不是ntpdate? #####原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18 ...
- 一步步玩pcDuino3--mmc下的裸机流水灯
第一部分是玩pcduino3下的裸机.这个过程能够让我们更好的理解嵌入式系统,熟悉我们使用的这个平台. 首先介绍下开发环境: 虚拟机:VMware® Workstati ...
- Linux双网卡绑定配置
Linux双网卡绑定配置 环境介绍 Linux Redhat 6.5.4张网卡 需求 4张网卡两两绑定,4张网卡分别是eth ...
- linux中MySQL主从配置(Django实现主从读写分离)
一 linux中MySQL主从配置原理(主从分离,主从同步) mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到sl ...
随机推荐
- Codeforces Round #313 (Div. 2) D.Equivalent Strings (字符串)
感觉题意不太好懂 = =# 给两个字符串 问是否等价等价的定义(满足其中一个条件):1.两个字符串相等 2.字符串均分成两个子串,子串分别等价 因为超时加了ok函数剪枝,93ms过的. #includ ...
- 一步一步学android控件(之十六)—— CheckBox
根据使用场景不同,有时候使用系统默认的CheckBox样式就可以了,但是有时候就需要自定义CheckBox的样式.今天主要学习如何自定义CheckBox样式.在CheckBox状态改变时有时需要做一些 ...
- C socket demo
一.服务端-server.c #include <stdio.h> #include <sys/socket.h> #include <arpa/inet.h> # ...
- [React] React Fundamentals: Mixins
Mixins will allow you to apply behaviors to multiple React components. Components are the best way t ...
- redhat 5.0 python2.4升级到2.7
)安装devtoolset yum groupinstall "Development tools" )安装编译Python需要的包包 yum install zlib-devel ...
- c# 可以有多个Main()函数
可以有多个Main()函数,这样写:namespace ConsoleApp1{class Program{static void Main(string[] args){Console.WriteL ...
- LINUX 系统备份
系统备份是系统管理工作中十分重要的一个环切,本文详细介绍了各种Linux系统的备份方法,相信对大家的日常管理工作有所帮助. 备份是一项重要的工作,但是很多人没有去做.一旦由于使用不当造成数据丢失,备份 ...
- UVA 10564 - Paths through the Hourglass (dp)
本文出自 http://blog.csdn.net/shuangde800 题目传送门 题意: 给一个相上面的图.要求从第一层走到最下面一层,只能往左下或右下走,经过的数字之和为sum. 问有多少 ...
- Servlet中的请求包含
public class SrcIncludeServlet extends HttpServlet { public void doGet(HttpServletRequest request, H ...
- 安卓开发中使用Genymotion模拟器
在安卓开发中,运行和调试自己所写的安卓程序需要用到模拟器 在一般情况下 是直接在这创建一个模拟器,但是这种自带的模拟器运行效率不佳,而且启动时间漫长 所以,我们可以换一款安卓模拟器 Genymotio ...