打印

嵌入式Linux学习引导-Uboot移植之添加自定义命令

[复制链接]
241|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
丑帅丑帅的|  楼主 | 2018-9-29 18:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Uboot移植之添加自定义命令

我们使用uboot的时候,大多数都是直接编译再移植了,很少改动里面的具体内容,特别是其中包含的命令等。虽然里面包含了一些常用的提供给用户进行交互的命令,并且也比较实用了。但是,根据某些开发板的特殊操作和用户的特定需求,还是不得不在uboot中,添加一些供自己调试和开发的命令,这样会更方便快捷的开展工作。本文将用实例为大家介绍如何为uboot添加自定义命令。

在举例之前,先介绍一下有关uboot的命令定义。uboot中每个命令都是通过U_BOOT_CMD宏来定义的。这个宏定义了一个相关的结构体,文件是uboot/include/command.h,结构体为cmd_tbl_s。  struct cmd_tbl_s {

         char        *name;          /* 命令名 */

         int          maxargs;       /* 最大参数个数 */

         int          repeatable;    /* 是否自动重复 */

         int          (*cmd)(struct cmd_tbl_s *, int, int, char *[]);  /*  响应函数 */

         char              *usage;         /* 简短的帮助信息 */

  #ifdef    CONFIG_SYS_LONGHELP

         char              *help;           /*  较详细的帮助信息 */

  #endif

  #ifdef CONFIG_AUTO_COMPLETE

         /* 自动补全参数 */

         int          (*complete)(int argc, char *argv[], char last_char, int maxv, char *cmdv[]);

  #endif

  };

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

741

主题

742

帖子

0

粉丝