文章目录
- 前言
- 1. 准备材料
- 2. pmon源码下载
- 3. 交叉编译工具链配置
- 4. 配置交叉编译环境
- 结尾
前言
本文为龙芯2k1000芯片(MIPS架构)pmon的调试记录,通过本博文将顺利编译出可以烧录到主板的pmon文件,烧录后主板将运行pmon,并从调试串口打印日志输出。
1. 准备材料
- Ubuntu18.04环境(真机或虚拟机)
- ls2k主板一块,需要保证主板功能完好且上电时序符合ls2k处理器手册上电时序
- 龙芯2K1000LA处理器数据手册.pdf
- ejtag烧录器一个(可选)
- pmon源码
- pmon交叉工具链
2. pmon源码下载
地址:http://ftp.loongnix.cn/embedd/ls2k/pmon-loongson3.tar.gz,点击下载到ubuntu系统下并解压;
~/Desktop$ tar zxvf pmon-loongson3.tar.gz
~Desktop$ ls pmon-loongson3
conf include sys zloader.2clm zloader.2enc zloader.2fdev.sm502 zloader.2g5ddr2_1a zloader.3a780e zloader.3aserver zloader.3c780e zloader.ls232.sm502
Copyright lib Targets zloader.2ecard zloader.2f7inch zloader.2fdev.via.jingxing zloader.2g690e zloader.3a82h zloader.3asis zloader.3cserver
doc Makefile tools zloader.2eCPCI zloader.2fdev zloader.2feva zloader.2gq2h zloader.3a8780e zloader.3b780e zloader.cpci
examples Makefile.inc x86emu zloader.2edev zloader.2fdev.cs5536 zloader.2g1a zloader.2gq780e zloader.3adawning zloader.3bserver zloader.fcr
fb pmon zloader zloader.2emcpu zloader.2fdev.firewall zloader.2g5536 zloader.3a2h zloader.3amcp68 zloader.3c2h zloader.linuxpc
3. 交叉编译工具链配置
地址:http://ftp.loongnix.cn/embedd/ls3a/toolchain/gcc-4.4-gnu.tar.gz,点击下载到ubuntu系统下并解压到根目录;
~/Downloads$ tar zxvf gcc-4.4-64-gnu.tar.gz -C / #解压源码到根目录
~/Downloads$ ls /opt/gcc-4.4-64-gnu/
bin include info lib libexec man mips64el-linux share sysroot3..
4. 配置交叉编译环境
可以在pmon-loongson3目录下新建一个cmd.sh脚本,把配置交叉编译环境及编译指令放在里面
cmd.sh内容如下:
#!/bin/bash
cd zloader.ls2k
make cfg tgt=rom CROSS_COMPILE=/opt/gcc-4.4-64-gnu/bin/mips64el-linux- DEBUG=-g
make all tgt=rom CROSS_COMPILE=/opt/gcc-4.4-64-gnu/bin/mips64el-linux- DEBUG=-g
make dtb tgt=rom CROSS_COMPILE=/opt/gcc-4.4-64-gnu/bin/mips64el-linux- DEBUG=-g
cp gzrom-dtb.bin ../
执行cmd.sh将在pmon-loongson3目录下产生一个gzrom-dtb.bin文件,执行方式如下:
~/Desktop/pmon-loongson3$ sudo chmod +x cmd.sh
~/Desktop/pmon-loongson3$ ./cmd.sh
~/Desktop/pmon-loongson3$ ls
cmd.sh gzrom.bin pmon zloader.2clm zloader.2f1a zloader.2fdev.via.jingxing zloader.2g690e zloader.3a780e zloader.3a92w zloader.3aserver zloader.3cserver
conf gzrom-dtb.bin sys zloader.2ecard zloader.2f7inch zloader.2feva zloader.2gq2h zloader.3a82h zloader.3a94w zloader.3asis zloader.cpci
Copyright include Targets zloader.2eCPCI zloader.2fdev zloader.2g1a zloader.2gq780e zloader.3a82w zloader.3a9780e zloader.3b780e zloader.fcr
doc lib tools zloader.2edev zloader.2fdev.cs5536 zloader.2g5536 zloader.3a2h zloader.3a84w zloader.3adawning zloader.3bserver zloader.linuxpc
examples Makefile x86emu zloader.2emcpu zloader.2fdev.firewall zloader.2g5ddr2_1a zloader.3a3000_7a zloader.3a8780e zloader.3afirewall zloader.3c2h zloader.ls232.sm502
fb Makefile.inc zloader zloader.2enc zloader.2fdev.sm502 zloader.2g5ddr3_1a zloader.3a4000_7a zloader.3a92h zloader.3amcp68 zloader.3c780e zloader.ls2k
如果默认的配置信息符合你主板的配置信息,可以直接将gzrom-dtb.bin文件通过ejtag或烧录器烧录到龙芯2k1000主板上,开机将能看到CPU调试串口的log产生,下一篇将介绍如何修改pmon中的配置文件。
结尾
本博文并非调试教程,只是记录调试ls2k pmon的调试过程,如有错误,还请私信批评指正。