目标板: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]的更多相关文章

  1. 为MFC界面添加一个Log Window

    前言 由于早期的图像处理程序基于VC6.0,MFC也是采用VC6.0开发的.在实际处理中,我不仅需要界面的显示,有很多时候,我需要算法处理的过程中的信息,比如每个阶段的耗时,处理的图像大小,以及如果需 ...

  2. Spring boot Jpa添加对象字段使用数据库默认值

    Spring boot Jpa添加对象字段使用数据库默认值 jpa做持久层框架,项目中数据库字段有默认值和非空约束,这样在保存对象是必须保存一个完整的对象,但在开发中我们往往只是先保存部分特殊的字段其 ...

  3. Linux学习(一):从图形界面进入命令行及命令行进入图形界面

    一.从图形界面进入命令行 最近脑洞大开,想接触一下linux.本人设备是win7,于是安了VMware(12.0.0)虚拟机,在安Linux(我用的CentOS 6.3 64)时不太会搞,跟据提示(英 ...

  4. Android Fragment学习笔记(二)----Fragment界面添加和管理

    Fragment界面添加 了解过fragment的生命周期等简单知识,于是去看官方文档来了解更多相关内容,要添加fragment到我们的UI界面中,给出了两种常用的方法,第一个是在activity的布 ...

  5. Inno Setup技巧[界面]添加和自定义左下角标签

    原文 http://blog.sina.com.cn/s/blog_5e3cc2f30100cc49.html 本文介绍添加和自定义“左下角标签”的方法. 界面预览: Setup技巧[界面]添加和自定 ...

  6. $Djangon admin界面 添加表 增删查改

    from django.contrib import admin表变中文 class Meta: verbose_name_plural='评论表' null=True的字段:admin创建要求写可以 ...

  7. iOS 11开发教程(十三)iOS11应用编辑界面添加视图

    iOS 11开发教程(十三)iOS11应用编辑界面添加视图 在iOS中添加视图的方式有两种:一种是使用编辑界面添加视图:另一种是使用代码添加视图.以下是这两个方式的详细介绍. 1.编辑界面添加视图 使 ...

  8. 给go程序添加命令行参数

    操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 需要应用程序根据不同的配置文件访问不同的服务器,希望程序启动时可以指定配置文件. 解决方案 package main i ...

  9. 【转】Linux 图形界面与命令行模式切换

    原文网址:http://blog.csdn.net/ldl22847/article/details/7600368 Tip:使用环境VMware Workstation    OS:CentOS 6 ...

随机推荐

  1. [JSOI2007]字符加密 后缀数组

    题面:洛谷 题解: 我们考虑,如果可以将环上每个长度为len的串都提取出来,再做个排序,那这题我们就做出来了! 但是提取$n^2$,怎么办? 考虑破环成链,再扩充为原来的2倍. 然后直接做后缀排序,把 ...

  2. Ajax请求会话过期处理(JS)

    对于页面来说,处理session过期比较简单,一般只需在过滤器里面判断session用户是否存在,不存在则跳转页面到登陆页即可. 对于Ajax请求来说,这个办法则无效,只能获取到登录页的html代码. ...

  3. 【JavaScript】简介、<Script>标签及基本概念

    一.前言 时光荏苒,岁月匆匆.今年年初进入数据平台部门转型做Web平台.要想搞好前端肯定要学好JavaScript,于是准备抓上一俩本书从基础学起. 二.内容       简介 JavaScript是 ...

  4. 洛谷 P4027 [NOI2007]货币兑换 解题报告

    P4027 [NOI2007]货币兑换 题目描述 小 \(Y\) 最近在一家金券交易所工作.该金券交易所只发行交易两种金券:\(A\) 纪念券(以下简称 \(A\) 券)和 \(B\) 纪念券(以下简 ...

  5. 升级系统后maxvim不能用,重新下载编译个

    1. 获取macvim源代码git clone https://github.com/b4winckler/macvim.git 2 配置及编译 编译选项 ./configure --with-fea ...

  6. day2-python基础

  7. python之numpy矩阵库的使用(续)

    本文是对我原先写的python常用序列list.tuples及矩阵库numpy的使用中的numpy矩阵库的使用的补充.结合我个人现在对线性代数的复习进度来不断更博. Section 1:行列式的计算 ...

  8. 3 ways to download files with PowerShell

    Perhaps the greatest strength of PowerShell is it's foundation on the .NET framework. The .NET frame ...

  9. PlantUML类图

    PlantUML类图   雨客 2016-04-08 11:38:03 浏览796 评论0 摘要: 类之间的关系 PlantUML用下面的符号来表示类之间的关系: 泛化,Generalization: ...

  10. [LeetCode] 27. Remove Element ☆

    Given an array and a value, remove all instances of that value in place and return the new length. D ...