查看: 1602|回复: 3

[已解决] tftp 加载内核

[复制链接]
  • TA的每日心情
    开心
    2019-1-11 16:21
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    4

    帖子

    0

    新手上路

    Rank: 1

    积分
    33
    最后登录
    2019-1-23
    发表于 2018-12-28 15:42:35 | 显示全部楼层 |阅读模式
    本人小白,最近学习linux的时候,希望通过tftp的方式加载zImage 和dtb。u-boot的环境变量如下:
    =>printenv
    baudrate=115200
    boot_fdt=try
    bootargs=root=/dev/mmcblk3p2 console=ttymxc3,115200 rw rootwait video=mxcfb0:dev=lcd,CLAA-WVGA,if=RGB24
    bootcmd=mmc dev 2;if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi
    bootcmd_mfg=run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};
    bootdelay=5
    bootscript=echo Running bootscript from mmc ...; source
    console=ttymxc3
    emmcdev=2
    epdc_waveform=epdc_splash.bin
    ethact=FEC
    ethaddr=00:11:22:33:44:55
    ethprime=FEC
    fdt_addr=0x20000000
    fdt_file=imx6q-sabresd.dtb
    fdt_high=0xffffffff
    image=zImage
    initrd_addr=0x12C00000
    initrd_high=0xffffffff
    ip_dyn=yes
    ipaddr=192.168.0.10
    loadaddr=0x10000000
    loadbootscript=fatload mmc ${mmcdev}{mmcpart} ${loadaddr} ${script};
    loadfdt=fatload mmc ${mmcdev}{mmcpart} ${fdt_addr} ${fdt_file}
    loadimage=fatload mmc ${mmcdev}{mmcpart} ${loadaddr} ${image}
    mfgtool_args=setenv bootargs console=ttymxc3,115200 rdinit=/linuxrc g_mass_storage.stall=0 g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber="" enable_wait_mode=off
    mmcargs=setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot}
    mmcautodetect=yes
    mmcboot=echo Booting from mmc ...; run mmcargs; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi;
    mmcdev=2
    mmcpart=1
    mmcroot=/dev/mmcblk3p2 rootwait rw
    netargs=setenv bootargs console=${console},${baudrate} ${smp} root=/dev/nfs ip=dhcp nfsroot=${serverip}{nfsroot},v3,tcp
    netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi;
    script=boot.scr
    serverip=192.168.0.8
    update_emmc_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if ${get_cmd} ${update_sd_firmware_filename}; then if mmc dev ${emmcdev} 1; then setexpr fw_sz ${filesize} / 0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; fi; fi
    update_sd_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if mmc dev ${mmcdev}; then if ${get_cmd} ${update_sd_firmware_filename}; then setexpr fw_sz ${filesize} / 0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; fi; fi
    Environment size: 2776/8188 bytes
    使用mfg tool工具烧写的时候,此时将执行bootz 0x120000 - 0x180000.如果我在uboot下执行,如下操作:
    tftp 0x12000000 zImage
    tftp 0x18000000 imx6q-sabresd.dtb
    bootz 0x120000 - 0x180000,则启动到Start Kernel.... 卡住了,如果执行如下操作:
    tftp 0x10000000 zImage
    tftp 0x20000000 imx6q-sabresd.dtb
    bootz 0x10000000 - 0x20000000,则kernel能够启动。
    请问:
    1.0x10000000  0x20000000这两个地址代表的是什么,是如何确定的?
    2.为什么0x12000000 和 0x18000000这两个地址加载kernel的时候会卡住?

    最佳答案

    請看i.MX_Linux_User's_Guide.pdf的Table 36.
    第一天签到
    回复

    使用道具 举报

    该用户从未签到

    656

    主题

    6312

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    20028
    最后登录
    2024-4-26
    发表于 2019-1-2 10:45:06 | 显示全部楼层
    請看i.MX_Linux_User's_Guide.pdf的Table 36.

    i.MX_Linux_User's_Guide.pdf

    632.06 KB, 下载次数: 7, 下载积分: 威望 1

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    72

    帖子

    0

    注册会员

    Rank: 2

    积分
    78
    最后登录
    2023-1-28
    发表于 2022-1-21 22:49:23 | 显示全部楼层

    谢谢楼主分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    72

    帖子

    0

    注册会员

    Rank: 2

    积分
    78
    最后登录
    2023-1-28
    发表于 2022-1-21 22:58:58 | 显示全部楼层
    本帖最后由 kwcha333 于 2022-2-11 15:25 编辑

    谢谢楼主分享






    如有家電问题或其他维修与保养需要,真的可试试这家店子喔,服务质素很好,格价亦很实惠,师传很到家专业,
    欲了解更多关于水電 維修 價目 表可前往https://www.motherboardexpress.com/爆水喉漏水維修水電水泵工程.html了解更多







    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-26 23:30 , Processed in 0.135637 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表