目标板: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. 【刷题】BZOJ 1036 [ZJOI2008]树的统计Count

    Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将以下面的形式来要求你对这棵树完成 一些操作: I. CHANGE u t : 把结点u的权值改为t II. ...

  2. 各行业最受欢迎的编程语言,硬件最青睐C和C++

    近日,HackerRank发布了2018年开发技能报告,其中探讨了一些对理解开发人员环境至关重要的事情,本文将摘录编程语言排行部分 2018 开发者技能调查:不同行业中最热门的编程语言 尽管新语言经常 ...

  3. Mysql局域网访问授权

    如果允许用户myuser从ip为192.168.1.1的主机连接到mysql服务器,并使用password作为密码 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'1 ...

  4. [CodeVs1515]跳(lucas定理+费马小定理)

    嘿嘿嘿好久没写数学题了,偶尔看到一道写一写... 题目大意:一个(n+1)*(m+1)[0<=n, m<=10^12,n*m<=10^12]的矩阵,C(0,0)=1,C(x,y)=C ...

  5. Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) C 并查集

    C. String Reconstruction time limit per test 2 seconds memory limit per test 256 megabytes input sta ...

  6. 2016-2017 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2016) F dfs序+树状数组

    Performance ReviewEmployee performance reviews are a necessary evil in any company. In a performance ...

  7. 8.Android_UiAutomator 报告查看

    一.Android UiAutomator报告查看 1.错误类型 1)断言错误:就是断言这个用例的成功或者失败(AssrtionFailedError) 2)脚本错误:UiObjectNotFound ...

  8. 【转】解决virt-manager启动管理器出错:unsupported format character

    来源:http://blog.csdn.net/z_yttt/article/details/71192144 经验证OK.   今天打开virt-manager出错,报错信息如下: 启动管理器出错: ...

  9. u3d摄像机截图

    using System; using UnityEngine; using System.Collections; public class TestCamreaCapture1 : MonoBeh ...

  10. nginx 前后分离,地址重写,url匹配中遇到的问题

    我遇到的问题: 前端用vue的路由做页面路由,后台用spring mvc做数据接口,但是遇到路由地址和接口地址无法区分的问题,导致nginx无法正确准发比如: 1)http://127.0.0.1/i ...