zoukankan      html  css  js  c++  java
  • k73 uboot 和emmc启动移植

    参考:socfpga_arria5.h

    #define CONFIG_BOOTCOMMAND    "run mmcload; run mmcboot"

    #define CONFIG_EXTRA_ENV_SETTINGS
        "verify=n"
        "loadaddr= " __stringify(CONFIG_SYS_LOAD_ADDR) ""
        "ramboot=setenv bootargs " CONFIG_BOOTARGS ";"
             "bootm ${loadaddr} - ${fdt_addr}"
        "bootimage=zImage"
        "fdt_addr=100"
        "fdtimage=socfpga.dtb"
            "fsloadcmd=ext2load"
        "bootm ${loadaddr} - ${fdt_addr}"
        "mmcroot=/dev/mmcblk0p2"
        "mmcboot=setenv bootargs " CONFIG_BOOTARGS
            " root=${mmcroot} rw rootwait;"
            "bootz ${loadaddr} - ${fdt_addr}"
        "mmcload=mmc rescan;"
            "load mmc 0:1 ${loadaddr} ${bootimage};"
            "load mmc 0:1 ${fdt_addr} ${fdtimage}"
        "qspiroot=/dev/mtdblock0"
        "qspirootfstype=jffs2"
        "qspiboot=setenv bootargs " CONFIG_BOOTARGS
            " root=${qspiroot} rw rootfstype=${qspirootfstype};"
            "bootm ${loadaddr} - ${fdt_addr}"

    mmcload先扫描,分别家长zImage和dtb

    然后再设置bootargs,增加root部分参数为mmcroot,然后再用bootz启动

    这里补充一下bootz这个命令:

    bootz命令用来从内存启动zImage文件

    例如

    tftp 0x8000 zImage 将内核下载到0x8000位置

    tftp 0x100 test.dtb   将设备树下载到0x100位置

    bootz 0x8000 - 0x100 则可以启动系统 注意减号前后有空格

    比较复杂的引导可以看这篇:

    https://www.cnblogs.com/aaronLinux/p/6629376.html?utm_source=itdadao&utm_medium=referral

  • 相关阅读:
    Props VS State
    Component VS PureComponent
    Webpack loaders
    近期需要学习的技术
    jQuery源码解读三选择器
    jQuery源码解读二(apply和call)
    jQuery源码解读一
    Web语义化
    如何用python语言撸出图表系统
    抓取android系统日志_记录一次定位app闪退故障
  • 原文地址:https://www.cnblogs.com/cute/p/12502307.html
Copyright © 2011-2022 走看看