找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 304|回复: 10

[N1盒子] 盒子已刷armbian到emmc能启动 只要随便插个u盘就启动不起来

[复制链接]
本帖最后由 wuguo13842 于 2024-4-26 16:07 编辑

盒子已刷armbian到emmc能启动 只要随便插个u盘就启动不起来ttl信息如下 就不停循环 好像一直在扫usb设别 引导失败就 重新开始一直循环

已解决 更换uboot解决
TTl错误信息如下
插u盘出错这里这样然后重启了
ERROR: reserving fdt memory region failed (addr=0 size=1000000 flags=4)
ERROR: reserving fdt memory region failed (addr=10000000 size=200000 flags=4)
ERROR: reserving fdt memory region failed (addr=5000000 size=300000 flags=4)
ERROR: reserving fdt memory region failed (addr=5300000 size=2000000 flags=4)
ERROR: Failed to allocate 0xcb70 bytes below 0x40000000.
device tree - allocation error
FDT creation failed!
resetting ...
INFO:    PSCI Affinity Map:
INFO:      AffInst: Level 0, MPID 0x0, State ON
INFO:      AffInst: Level 0, MPID 0x1, State OFF
INFO:      AffInst: Level 0, MPID 0x2, State OFF
INFO:      AffInst: Level 0, MPID 0x3, State OFF

不查u盘正常启动这样
Working FDT set to 3bf15000

Starting kernel ...

[BL31]: tee size: 0
get_dvfs_info 0007









我的恩山、我的无线 The best wifi forum is right here.
 楼主| | 显示全部楼层

正常启动

本帖最后由 wuguo13842 于 2024-4-25 11:46 编辑

1:      Armbian
Retrieving file: /uInitrd
Retrieving file: /zImage
append: root=UUID=320697dd-dff2-4200-983b-aece1573b2bc rootflags=data=writeback rw rootfstype=ext4 console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 max_loop=128 loglevel=1 voutmode=hdmi disablehpd=false overscan=100 sdrmode=auto
Retrieving file: /dtb/amlogic/meson-gxl-s905x-p212.dtb
Moving Image from 0x8080000 to 0x8200000, end=a330000
## Loading init Ramdisk from Legacy Image at 13000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    16885388 Bytes = 16.1 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 08008000
   Booting using the fdt blob at 0x8008000
Working FDT set to 8008000
   Loading Ramdisk to 3bf22000, end 3cf3c68c ... OK
   Loading Device Tree to 000000003bf15000, end 000000003bf21b6f ... OK
Working FDT set to 3bf15000

Starting kernel ...

[BL31]: tee size: 0
get_dvfs_info 0007
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jim_liu111 发表于 2024-4-24 21:21
TTL方式进入uboot,修改一下相关配置:
1.先用printenv看下bootcmd参数
2.再用setenv重新设定bootcmd,改为 ...

boot.cmd文件

echo "Start AMLOGIC mainline U-boot"
if printenv bootfromsd; then exit; fi;
setenv loadaddr "0x44000000"
setenv devtype "mmc"
setenv l_mmc "2 1 0"
for devnum in ${l_mmc} ; do
        if test -e ${devtype} ${devnum} uEnv.txt; then
                load ${devtype} ${devnum} ${loadaddr} uEnv.txt
                env import -t ${loadaddr} ${filesize}
                setenv bootargs ${APPEND}
                if printenv mac; then
                        setenv bootargs ${bootargs} mac=${mac}
                elif printenv eth_mac; then
                        setenv bootargs ${bootargs} mac=${eth_mac}
                elif printenv ethaddr; then
                        setenv bootargs ${bootargs} mac=${ethaddr}
                fi
                if load ${devtype} ${devnum} ${kernel_addr_r} ${LINUX}; then
                        if load ${devtype} ${devnum} ${ramdisk_addr_r} ${INITRD}; then
                                if load ${devtype} ${devnum} ${fdt_addr_r} ${FDT}; then
                                        fdt addr ${fdt_addr_r}
                                        booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
                                fi
                        fi
                fi
        fi
done

emmc_autoscript.cmd文件
if fatload mmc 1 0x1000000 u-boot.emmc; then go 0x1000000; fi;
setenv dtb_addr 0x4000000
setenv env_addr 0x1040000
setenv kernel_addr 0x11000000
setenv initrd_addr 0x13000000
setenv boot_start booti ${kernel_addr} ${initrd_addr} ${dtb_addr}
setenv addmac 'if printenv mac; then setenv bootargs ${bootargs} mac=${mac}; elif printenv eth_mac; then setenv bootargs ${bootargs} mac=${eth_mac}; elif printenv ethaddr; then setenv bootargs ${bootargs} mac=${ethaddr}; fi'
if fatload mmc 1 ${env_addr} uEnv.txt && env import -t ${env_addr} ${filesize}; setenv bootargs ${APPEND}; then if fatload mmc 1 ${kernel_addr} ${LINUX}; then if fatload mmc 1 ${initrd_addr} ${INITRD}; then if fatload mmc 1 ${dtb_addr} ${FDT}; then run addmac; run boot_start; fi; fi; fi; fi;
if fatload mmc 1 0x1000000 u-boot.emmc; then go 0x1000000; fi;
setenv dtb_addr 0x4000000
setenv env_addr 0x1040000
setenv kernel_addr 0x11000000
setenv initrd_addr 0x13000000
setenv boot_start booti ${kernel_addr} ${initrd_addr} ${dtb_addr}
setenv addmac 'if printenv mac; then setenv bootargs ${bootargs} mac=${mac}; elif printenv eth_mac; then setenv bootargs ${bootargs} mac=${eth_mac}; elif printenv ethaddr; then setenv bootargs ${bootargs} mac=${ethaddr}; fi'
if fatload mmc 1 ${env_addr} uEnv.txt && env import -t ${env_addr} ${filesize}; setenv bootargs ${APPEND}; then if fatload mmc 1 ${kernel_addr} ${LINUX}; then if fatload mmc 1 ${initrd_addr} ${INITRD}; then if fatload mmc 1 ${dtb_addr} ${FDT}; then run addmac; run boot_start; fi; fi; fi; fi;
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

刷进emmc了,为什么还搞个u盘启动???
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
nameyq 发表于 2024-4-24 17:08
刷进emmc了,为什么还搞个u盘启动???

u盘存数据 是个空盘
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

TTL方式进入uboot,修改一下相关配置:
1.先用printenv看下bootcmd参数
2.再用setenv重新设定bootcmd,改为直接从emmc引导,应该有已经定义好的值,可以从上一步输出信息中查找
3.最后用saveenv保存重启即可
该方法只在玩客云盒子上用过,使用的命令是setenv bootcmd 'run start_emmc_autoscript'
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jim_liu111 发表于 2024-4-24 21:21
TTL方式进入uboot,修改一下相关配置:
1.先用printenv看下bootcmd参数
2.再用setenv重新设定bootcmd,改为 ...

有详细教程么 文章链接么
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jim_liu111 发表于 2024-4-24 21:21
TTL方式进入uboot,修改一下相关配置:
1.先用printenv看下bootcmd参数
2.再用setenv重新设定bootcmd,改为 ...

ab=0
aml_dt=gxl_p211_1g
baudrate=115200
boardid=7
bootargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 use_cma_first=1 androidboot.selinux=disabled logo=osd1,loaded,0x3d800000,1080p60hz vout=1080p60hz,enable hdmimode=1080p60hz cvbsmode=576cvbs hdmitx= cvbsdrv=1 androidboot.firstboot=1 jtag=apee quiet androidboot.hardware=amlogic androidboot.boardid=7 androidboot.serialno=00410416221233300001 mac=8C:6D:50:7C:48:32 androidboot.mac=8C:6D:50:7C:48:32 androidboot.hardware=amloic androidboot.boardid=7 androidboot.serialno=00410416221233300001 mac=8C:6D:50:7C:48:32 androidboot.mac=8C:6D:50:7C:48:32
bootcmd=run start_autoscript; run storeboot
bootdelay=1
bootfromnand=0
bootfromrecovery=0
bootup_offset=0x115c0f0
bootup_size=0x2a3036
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
cvbs_drv=1
cvbsmode=576cvbs
display_bpp=24
display_color_bg=0
display_color_fg=0xffff
display_color_index=24
display_height=1080
display_layer=osd1
display_width=1920
dtb_mem_addr=0x1000000
ethact=dwmac.c9410000
ethaddr=00:15:18:01:81:31
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi;
fb_addr=0x3d800000
fb_height=720
fb_width=1280
fdt_high=0x20000000
filesize=2c5
firstboot=1
gatewayip=10.18.9.1
hdmimode=1080p60hz
hostname=arm_gxbb
init_display=imgread pic logo bootup $loadaddr;bmp pixel $bootup_offset;osd open;osd clear;bmp display $bootup_offset;bmp scale
initargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 use_cma_first=1 androidboot.selinux=disabled
ipaddr=10.18.9.97
irremote_update=if irkey 0x29d64cb3 0x6996c43b 0x728ddd22 200000; then echo read irkey ok!; if itest ${irkey_value} == 0x29d64cb3; then run update;else if itest ${irkey_value} == 0x6996c43b; then run update;else if itest ${irkey_value} == 0x728ddd22; then run update;\
fi;fi;fi;fi;
jtag=apee
judge_factory_reset_protect=echo into judge_factory_reset_protect;if test ${wipe_data} = failed; then echo wipe_data=${wipe_data};if test ${reboot_mode} = cold_boot; then run factory_reset_poweroff_protect;fi;fi;if test ${wipe_cache} = failed; then echo wipe_cache=${wipe_cache};if test ${reboot_mode} = cold_boot; then run factory_reset_poweroff_protect;fi;fi;
loadaddr=1080000
mac=8C:6D:50:7C:48:32
netmask=255.255.255.0
outputmode=1080p60hz
preboot=run factory_reset_poweroff_protect;run init_display;run upgrade_check;run storeargs;run switch_bootmode;
reboot_mode=cold_boot
recovery_from_flash=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi
recovery_from_sdcard=if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_mem_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_from_udisk=if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
serverip=10.18.9.113
start_autoscript=if mmcinfo; then run start_mmc_autoscript; fi; if usb start; then run start_usb_autoscript; fi; run start_emmc_autoscript
start_emmc_autoscript=if fatload mmc 1 1020000 emmc_autoscript; then autoscr 1020000; fi;
start_mmc_autoscript=if fatload mmc 0 1020000 s905_autoscript; then autoscr 1020000; fi;
start_usb_autoscript=for usbdev in 0 1 2 3; do if fatload usb ${usbdev} 1020000 s905_autoscript; then autoscr 1020000; fi; done
stderr=serial
stdin=serial
stdout=serial
storeargs=setenv bootargs ${initargs} logo=${display_layer},loaded,${fb_addr},${outputmode} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} cvbsdrv=${cvbs_drv} androidboot.firstboot=${firstboot} jtag=${jtag} quiet; setenv bootargs ${bootargs} androidboot.hardware=amlogic androidboot.boardid=${boardid};run cmdline_keys;
storeboot=if imgread kernel boot ${loadaddr}; then bootm ${loadaddr}; fi;run update;
switch_bootmode=get_rebootmode;echo rebootmode=${reboot_mode};if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;fi;fi;
try_auto_burn=update 700 750;
uimode=720p
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else if itest ${upgrade_step} == 1; then defenv_reserv; setenv upgrade_step 2; saveenv; run init_display;fi;fi;
upgrade_step=2
usb_burning=update 1000
usid=00410416221233300001
wipe_cache=successful
wipe_data=successful
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jim_liu111 发表于 2024-4-24 21:21
TTL方式进入uboot,修改一下相关配置:
1.先用printenv看下bootcmd参数
2.再用setenv重新设定bootcmd,改为 ...

APPEND=root=UUID=ab32dcc4-5835-401f-bbcb-5d5482de215e rootflags=data=writeback rw rootfstype=ext4 console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 max_loop=128 cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

wuguo13842 发表于 2024-4-24 22:32
ab=0
aml_dt=gxl_p211_1g
baudrate=115200

bootcmd=run start_autoscript; run storeboot
start_autoscript=if mmcinfo; then run start_mmc_autoscript; fi; if usb start; then run start_usb_autoscript; fi; run start_emmc_autoscript
start_emmc_autoscript=if fatload mmc 1 1020000 emmc_autoscript; then autoscr 1020000; fi;
start_mmc_autoscript=if fatload mmc 0 1020000 s905_autoscript; then autoscr 1020000; fi;
start_usb_autoscript=for usbdev in 0 1 2 3; do if fatload usb ${usbdev} 1020000 s905_autoscript; then autoscr 1020000; fi; done

信息太多,看这几个就行,当前bootcmd关联的是start_autoscript,引导顺序是mmc -> usb -> emmc,usb引导优先级大于emmc,所以只要把boocmd改成start_emmc_autoscript应该就可以了。

执行下面的命令:
setenv bootcmd 'run start_emmc_autoscript'
saveenv
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jim_liu111 发表于 2024-4-25 06:55
bootcmd=run start_autoscript; run storeboot
start_autoscript=if mmcinfo; then run start_mmc_autosc ...

还是不行   应该有其他问题
我对比了正常启动和非正常启动

插u盘出错这里这样然后重启了
ERROR: reserving fdt memory region failed (addr=0 size=1000000 flags=4)
ERROR: reserving fdt memory region failed (addr=10000000 size=200000 flags=4)
ERROR: reserving fdt memory region failed (addr=5000000 size=300000 flags=4)
ERROR: reserving fdt memory region failed (addr=5300000 size=2000000 flags=4)
ERROR: Failed to allocate 0xcb70 bytes below 0x40000000.
device tree - allocation error
FDT creation failed!
resetting ...
INFO:    PSCI Affinity Map:
INFO:      AffInst: Level 0, MPID 0x0, State ON
INFO:      AffInst: Level 0, MPID 0x1, State OFF
INFO:      AffInst: Level 0, MPID 0x2, State OFF
INFO:      AffInst: Level 0, MPID 0x3, State OFF

不查u盘正常启动这样
Working FDT set to 3bf15000

Starting kernel ...

[BL31]: tee size: 0
get_dvfs_info 0007
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-5 16:17

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

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