zoukankan      html  css  js  c++  java
  • uboot 添加hello命令 分类: arm-linux-Ubuntu HI3531 2013-12-24 09:22 502人阅读 评论(0) 收藏

    平台:MPC8315(POWERPC)


    1./common/ 目录下创建自己的文件,最好前缀为cmd_. 


     cmd_hello.c

    *********************************************************

    #include<command.h>

    #include<common.h>

    #ifdef CONFIG_CMD_HELLO

    int do_hello(cmd_tbl_t *cmdtp,int flag,int argc,char *argv)

    {

            printf("my test  ");

            return 0;

    }

    U_BOOT_CMD(

    hello,1,0,do_hello,"usage:test ","help:test "

    );

    #endif

    *********************************************************

    2.在当前目录下修改Makefile


     在目标变量最后面添加:


    #ifdef CONFIG_CMD_HELLO 

    COBJS-y += cmd_hello.o

    #endif


    3.在头文件mpc83xx.h中添加对CONFIG_CMD_HELLO的定义

    #define CONFIG_CMD_HELLO


    编译下载后,在uboot中运行hello

    4.U_BOOT_CMD


    它的定义在include/command.h中,

    /**********************************************************/

    #define Struct_Section  __attribute__((unused, section(".u_boot_cmd"), aligned(4)))


    #define U_BOOT_CMD_MKENT_COMPLETE(name,maxargs,rep,cmd,usage,help,comp) 

            {#name, maxargs, rep, cmd, usage, _CMD_HELP(help) _CMD_COMPLETE(comp)}


    #define U_BOOT_CMD_COMPLETE(name,maxargs,rep,cmd,usage,help,comp) 

            cmd_tbl_t __u_boot_cmd_##name Struct_Section = 

                U_BOOT_CMD_MKENT_COMPLETE(name,maxargs,rep,cmd,usage,help,comp)


    #define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) 

            U_BOOT_CMD_COMPLETE(name,maxargs,rep,cmd,usage,help,NULL)

    /*******************************************************/

    展开就是:#define U_BOOT_CMD(hello,1,0,do_hello,"usage:test ","help:test ") 

    cmd_tbl_t __u_boot_cmd_hello __attribute__((unused, section(".u_boot_cmd"), aligned(4)))

     = {hello, 1, 0, do_hello, "usage:test ","help:test " }


    这儿定义了属性,就是所有的命令都存储在.u_boot_cmd节中,可以在连接脚本找到这个节。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    UDP最大传输字节
    [bzoj3994] [SDOI2015]约数个数和
    [bzoj3529] [Sdoi2014]数表
    [bzoj3309] DZY Loves Math
    [bzoj2693] jzptab
    [bzoj4407] 于神之怒加强版
    [bzoj3688] 折线统计
    [bzoj2301] [HAOI2011]Problem b
    [bzoj2820] YY的GCD
    [bzoj4559] [JLoi2016]成绩比较
  • 原文地址:https://www.cnblogs.com/mao0504/p/4706688.html
Copyright © 2011-2022 走看看