Embeded linux之Uboot参数与内核

Posted 扑克face

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Embeded linux之Uboot参数与内核相关的知识,希望对你有一定的参考价值。

一.内核查参方式:

  1.1 mtd方式

    文件形式,待补

  1.2 ioremap

    驱动+应用,待补

  1.3 mtd_debug

    软件移植,待补

  1.4 fw_printenv

    1.4.1 工具生成方法:

      uboot_source_tree # make ARCH=arm CROSS_COMPILE=arm-linux-gcc env

      uboot_source_tree/tools/env下得到fw_printenv与fw_env.config

    1.4.2 将工具与配置文件放到板子文件系统上

    1.4.3 修改fw_env.config

        Device offset,Env size和Flash sector size分别对应于uboot源码目录中include/configs/xxxx.h相关文件中的

CONFIG_ENV_OFFSET,CONFIG_ENV_SIZE和CONFIG_ENV_SECT_SIZE

    1.4.4 错误解决办法:

      错误A:/include/linux/types.h:154:36: error: conflicting types for ‘uintmax_t’ typedef u_int32_t uintmax_t;

         arm-linux/target/usr/include/stdint.h:140:32: note: previous declaration of ‘uintmax_t’ was here

typedef unsigned long long int uintmax_t;

      解决A:两个文件的uintmax_t类型冲突了,将uboot中的类型按照编译器文件中的类型改过来

      错误B:include/linux/types.h:155:36: error: conflicting types for ‘intmax_t’ typedef int32_t intmax_t;

          arm-linux/target/usr/include/stdint.h:138:24: note: previous declaration of ‘intmax_t’ was here

typedef long long int intmax_t;

      解决B:方法同上

 

以上是关于Embeded linux之Uboot参数与内核的主要内容,如果未能解决你的问题,请参考以下文章

Embeded linux之内核编译错误警告汇总

Embeded Linux 之 Switch——88E6321/88E6320

Embeded linux之probe

Embeded linux之移植iptables

Embeded linux之移植iptables

uboot环境变量(设置bootargs向linux内核传递正确的参数)