u-boot界面添加命令[demo]
目标板:2440
如何在u-boot界面中增加命令
在/common/目录下建立文件,调用执行函数do_bootm就行,然后在修改Makefile,就OK了。
比如在u-boot界面添加命令test ,当输入test时,会显示test OK!!。
步骤一:添加命令
在/common/目录下新建cmd_test.c,
在U_BOOT_CMD中进行命令添加,当终断输入test时,就会自动在U_BOOT_CMD查找到test命令,并且转入相应的操作函数do_test。
U_BOOT_CMD( test, CFG_MAXARGS, , do_test, "test short - boot application image from memory\n", //短的帮助信息 "long help massege\n"//长的帮助信息 );
步骤二:添加执行函数
然后调用
int do_bootmt (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
将do_bootm修改为do_test,替换后的代码为:int do_test (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
在函数中实现命令的动作打印test OK!!。
int do_test (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { printf("test OK!!"); int index; ;index < argc;index++){ printf("argc[%d]:%s\n",index,argv[index]); } ; }
步骤三:修改Makefile
在/common/目录下的Makefile的第50行添加do_test.o。
整个demo 的代码如下:
#include <common.h> #include <watchdog.h> #include <command.h> #include <image.h> #include <malloc.h> #include <zlib.h> #include <bzlib.h> #include <environment.h> #include <asm/byteorder.h> int do_test (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { printf("test OK!!"); int index; ;index < argc;index++){ printf("argc[%d]:%s\n",index,argv[index]); } ; } U_BOOT_CMD( test, CFG_MAXARGS, , do_test, "test short - boot application image from memory\n", //短的帮助信息 "long help massege\n"//长的帮助信息 );
执行结果:
u-boot界面添加命令[demo]的更多相关文章
- 为MFC界面添加一个Log Window
前言 由于早期的图像处理程序基于VC6.0,MFC也是采用VC6.0开发的.在实际处理中,我不仅需要界面的显示,有很多时候,我需要算法处理的过程中的信息,比如每个阶段的耗时,处理的图像大小,以及如果需 ...
- Spring boot Jpa添加对象字段使用数据库默认值
Spring boot Jpa添加对象字段使用数据库默认值 jpa做持久层框架,项目中数据库字段有默认值和非空约束,这样在保存对象是必须保存一个完整的对象,但在开发中我们往往只是先保存部分特殊的字段其 ...
- Linux学习(一):从图形界面进入命令行及命令行进入图形界面
一.从图形界面进入命令行 最近脑洞大开,想接触一下linux.本人设备是win7,于是安了VMware(12.0.0)虚拟机,在安Linux(我用的CentOS 6.3 64)时不太会搞,跟据提示(英 ...
- Android Fragment学习笔记(二)----Fragment界面添加和管理
Fragment界面添加 了解过fragment的生命周期等简单知识,于是去看官方文档来了解更多相关内容,要添加fragment到我们的UI界面中,给出了两种常用的方法,第一个是在activity的布 ...
- Inno Setup技巧[界面]添加和自定义左下角标签
原文 http://blog.sina.com.cn/s/blog_5e3cc2f30100cc49.html 本文介绍添加和自定义“左下角标签”的方法. 界面预览: Setup技巧[界面]添加和自定 ...
- $Djangon admin界面 添加表 增删查改
from django.contrib import admin表变中文 class Meta: verbose_name_plural='评论表' null=True的字段:admin创建要求写可以 ...
- iOS 11开发教程(十三)iOS11应用编辑界面添加视图
iOS 11开发教程(十三)iOS11应用编辑界面添加视图 在iOS中添加视图的方式有两种:一种是使用编辑界面添加视图:另一种是使用代码添加视图.以下是这两个方式的详细介绍. 1.编辑界面添加视图 使 ...
- 给go程序添加命令行参数
操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 需要应用程序根据不同的配置文件访问不同的服务器,希望程序启动时可以指定配置文件. 解决方案 package main i ...
- 【转】Linux 图形界面与命令行模式切换
原文网址:http://blog.csdn.net/ldl22847/article/details/7600368 Tip:使用环境VMware Workstation OS:CentOS 6 ...
随机推荐
- CF878C Tournament set 图论
题面 题面 题解 如果2个人可以互相战胜,那么我们连一条无向边,于是最后会剩下t个联通块,其中每对联通块之间都有严格的大小关系(a.max < b.min),因此我们每插入一个点就相当于合并一段 ...
- 【bzoj2844】albus就是要第一个出场
Time Limit: 6 Sec Memory Limit: 128 MBSubmit: 2254 Solved: 934[Submit][Status][Discuss] Descriptio ...
- dfs序七个经典问题(转)
我这个人不怎么喜欢写轻重链剖分和LCT 还是喜欢dfs序.括号序列之类的 毕竟线段树好写多了 然后就有了这篇转载的文章 写在这边以后有时间看看 原文链接:https://www.cnblogs.com ...
- python基础----继承与派生、组合、接口与归一化设计、抽象类、子类中调用父类方法
一.什么是继承 继承是一种创建新的类的方式,在pyth ...
- opencv查找轮廓---cvFindContours && cvDrawCountours 用法及例子
http://blog.csdn.net/timidsmile/article/details/8519751 环境: vs2008 + opencv2.1 先看,这两个函数的用法(参考 opencv ...
- winform布局 FlowLayoutPanel的控件
http://www.cnblogs.com/moon-mountain/archive/2011/09/08/2171232.html 1.采用流布局:工具箱里边容器里有一个:FlowLayoutP ...
- Hdu5693 D Game
D Game Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- 洛谷P1991 无线通讯网
P1991 无线通讯网 170通过 539提交 题目提供者洛谷OnlineJudge 标签图论 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 怎么又炸了 为啥一直40!求解! UKE:inv ...
- python学习(十三)进程和线程
python多进程 from multiprocessing import Process import os def processFunc(name): print("child pro ...
- apk文件签名绕过
声明: 1.本文转载自:http://www.2cto.com/Article/201311/256406.html,为了留作日后参考上传博客 2.如有转载请复试上面连接,尊重原创 apk文件签名绕过 ...