uboot中CMD的实现
CMD配置位于config_cmd_default.h configs/at91/sam9g10ek.h
头文件位于include/command.h
41 struct cmd_tbl_s {
42 char *name; /* Command Name */
43 int maxargs; /* maximum number of arguments */
44 int repeatable; /* autorepeat allowed? */
45 /* Implementation function */
46 int (*cmd)(struct cmd_tbl_s *, int, int, char *[]);
47 char *usage; /* Usage message (short) */
48 #ifdef CFG_LONGHELP
49 char *help; /* Help message (long) */
50 #endif
51 #ifdef CONFIG_AUTO_COMPLETE
52 /* do auto completion on the arguments */
53 int (*complete)(int argc, char *argv[], char last_char, int maxv, ch ar *cmdv[]);
54 #endif
55 };
56
57 typedef struct cmd_tbl_s cmd_tbl_t;
71 /*
72 * Monitor Command
73 *
74 * All commands use a common argument format:
75 *
76 * void function (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
77 */
78
79 typedef void command_t (cmd_tbl_t *, int, int, char *[]);
89 #define Struct_Section __attribute__ ((unused,section (".u_boot_cmd")))
91 #ifdef CFG_LONGHELP
92
93 #define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) \
94 cmd_tbl_t __u_boot_cmd_##name Struct_Section = {#name, maxargs, rep, cmd, usage, help}
95
96 #else /* no long help info */
97
98 #define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) \
99 cmd_tbl_t __u_boot_cmd_##name Struct_Section = {#name, maxargs, rep, cmd, usage}
100
101 #endif /* CFG_LONGHELP */
以最简单的命令ersion为例介绍:
位于lib_arm/board.c
75 const char version_string[] =
76 U_BOOT_VERSION" (" __DATE__ " - " __TIME__ ")"CONFIG_IDENT_STRING;
common/command.c
31 int
32 do_version (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
33 {
34 extern char version_string[];
35 printf ("\n%s\n", version_string);
36 return 0;
37 }
38
39 U_BOOT_CMD(
40 version, 1, 1, do_version,
41 "version - print monitor version\n",
42 NULL
43 );
44
uboot中CMD的实现的更多相关文章
- uboot中的命令体系
一.uboot的命令体系介绍以及实例分析: U-Boot 的命令实现大多在 common 目录下.在该目录下命令的代码文件都是以“ cmd_”开头的,如下图所示: 其中每一个文件都是一个命令实现的代码 ...
- uboot中的快捷菜单的制作说明 【转】
转自:http://blog.chinaunix.net/uid-22030783-id-366971.html 在uboot中加入快捷操作菜单的方法非常简单,在论坛发布的uboot201003V ...
- 七、在U-boot中让LCD显示图片
1. 增加Nandflash读取代码 因为要显示图片,而图片明显是放在Nandflash中比较合适,因此需要有能够操作Nandflash的函数.在U-boot中已经有能操作Nandflash的函数了, ...
- u-boot中添加自定义命令
1.u-boot命令机制u-boot中,每个命令都使用一个struct cmd_tbl_s结构体定义,该定义在include/command.h中实现:struct cmd_tbl_s{ char * ...
- uboot中的快捷菜单的制作说明
转:http://blog.chinaunix.net/uid-22030783-id-366971.html 在uboot中加入快捷操作菜单的方法非常简单,在论坛发布的uboot201003V1.1 ...
- 在u-boot中添加命令
转:http://www.embedu.org/Column/Column464.htm 作者:曾宏安,华清远见嵌入式学院讲师. u-boot是嵌入式系统中广泛使用的一种bootloader.它不仅支 ...
- 在U-Boot中添加自定义命令以实现自动下载程序【转】
本文转载自:https://gaomf.cn/2016/06/26/%E5%9C%A8U-Boot%E4%B8%AD%E6%B7%BB%E5%8A%A0%E8%87%AA%E5%AE%9A%E4%B9 ...
- uboot中添加FIQ中断及相关问题
本文主要说明了在uboot中添加FIQ中断时遇到的问题以及对应的解决办法. 首先交代一下项目的软硬件环境.硬件方面,使用s3c2440作为主控芯片,外接串口.网卡等设备.软件方面,主控芯片上电后运行u ...
- DSP中CMD文件
DSP中CMD文件 (2012-12-26 20:54:17) 转载▼ 标签: 杂谈 分类: DSP FPGA DSP的存储器的地址范围,CMD是主要是根据那个来编的.CMD 它是用来分配rom和ra ...
随机推荐
- (原+转)ubuntu16中安装opencv2.4.11(2.4.13)
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5638117.html 参考网址: http://www.cnblogs.com/jeakon/arch ...
- Android开发学习之反编译APK文件
反编译的目的在于学习一些优秀的Android应用程序代码. 在进行反编译之前,需要准备好下面的软件工具(这些文件都放在同一文件下): 这些工具的下载地址:http://down.51cto.com/d ...
- c# 网站生成静态页面
在一些需要经常更新页面数据的网站中,一般访问量不是很大的都直接发布的是带后台代码,每次访问都是有数据库交互的.但是一旦访问量增加了,那么这些服务器开销变成本就要考虑进来了,像一些文章,后台编辑后,文章 ...
- NSUserDefault 的使用
1.NSUserDefault的使用: 作用:NSUserDefaults类提供了一个与默认系统进行交互的编程接口.NSUserDefaults对象是用来保存,恢复应用程序相关的偏好设置,配置数据等等 ...
- 【Linux】文件种类与扩展名
任何装置在Linux底下都是文件.不仅如此,连数据沟通的接口也有专属的文件在负责-所以,你会了解到,Linux的文件种类真的很多- Linux文件种类 我们在刚刚提到使用『ls -l』观察到第一栏那十 ...
- Workflow_上传和下载Workflow编译方式(汇总)
2014-12-27 Created By BaoXinjian
- 哇塞!HTML5 实现的雨滴效果 CSS发抖
http://dreamsky.github.io/main/blog/rainy-day/ Rainy Day – 哇塞! HTML5 实现的雨滴效果 http://www.webhek.com/m ...
- 编码规范:Eclipse Checkstyle配置
http://chenzhou123520.iteye.com/blog/1627618 http://www.cnblogs.com/lanxuezaipiao/p/3202169.html
- 【转】SQL SERVER 获取存储过程返回值
1.OUPUT参数返回值 CREATE PROCEDURE [dbo].[nb_order_insert]( @o_buyerid int , @o_id bigint OUTPUT ) AS BEG ...
- C#用ado.net访问EXCEL的常见问题及解决方法
C#用ado.net访问EXCEL的常见问题及解决方法,除了像sql server,access常见的数据库,其实Excel文件也可以做为数据库访问. ado.net访问excel的实例: OleDb ...