如何使用Debian 8.2图像闪烁BeagleBone Black eMMC?

问题描述 投票:7回答:4

This site,对...说

要将这些图像转换为eMMC闪存图像,请编辑microSD卡上Linux分区上的/boot/uEnv.txt文件,并使用'cmdline = init = / opt / scripts / tools / eMMC /删除行上的'#' init-eMMC-flasher-v3.sh”。启用此功能将导致启动microSD卡以刷新eMMC。

uEnv.txt文件中不存在此类行。我也没有在启动分区的任何地方看到init-eMMC-flasher-v3.sh文件,尽管它可能位于隐藏分区上(至少隐藏在Windows中)。

我试过拿着S2(这似乎是一个较旧的(可能?)闪烁方法)没有成功。

debian beagleboneblack
4个回答
4
投票

说明中提到的行是uEnv.txt的最后一行。我刚刚下载了一个新的bone-debian-8.2-tester-2gb-armhf-2015-11-12-2gb.img.xz副本,/boot/uEnv.txt在我取消注释eMMC flasher命令后看起来像这样:

#Docs: http://elinux.org/Beagleboard:U-boot_partitioning_layout_2.0

uname_r=4.1.12-ti-r29
#uuid=
#dtb=

##BeagleBone Black/Green dtb's for v4.1.x (BeagleBone White just works..)

##BeagleBone Black: HDMI (Audio/Video) disabled:
#dtb=am335x-boneblack-emmc-overlay.dtb

##BeagleBone Black: eMMC disabled:
#dtb=am335x-boneblack-hdmi-overlay.dtb

##BeagleBone Black: HDMI Audio/eMMC disabled:
#dtb=am335x-boneblack-nhdmi-overlay.dtb

##BeagleBone Black: HDMI (Audio/Video)/eMMC disabled:
#dtb=am335x-boneblack-overlay.dtb

##BeagleBone Black: wl1835
#dtb=am335x-boneblack-wl1835mod.dtb

##BeagleBone Black: replicape
#dtb=am335x-boneblack-replicape.dtb

##BeagleBone Green: eMMC disabled
#dtb=am335x-bonegreen-overlay.dtb

cmdline=coherent_pool=1M quiet cape_universal=enable

#In the event of edid real failures, uncomment this next line:
#cmdline=coherent_pool=1M quiet cape_universal=enable video=HDMI-A-1:1024x768@60e

##Example v3.8.x
#cape_disable=capemgr.disable_partno=
#cape_enable=capemgr.enable_partno=

##Example v4.1.x
#cape_disable=bone_capemgr.disable_partno=
#cape_enable=bone_capemgr.enable_partno=

##Disable HDMI/eMMC (v3.8.x)
#cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN,BB-BONE-EMMC-2G

##Disable HDMI (v3.8.x)
#cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN

##Disable eMMC (v3.8.x)
#cape_disable=capemgr.disable_partno=BB-BONE-EMMC-2G

##Audio Cape (needs HDMI Audio disabled) (v3.8.x)
#cape_disable=capemgr.disable_partno=BB-BONELT-HDMI
#cape_enable=capemgr.enable_partno=BB-BONE-AUDI-02


##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync
cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh

最后一行是您正在寻找的那一行。如果由于某种原因它不存在,只需添加它并保存文件。然后,当从SD启动时,LED将显示“来回”模式,指示eMMC正在闪烁。


4
投票

解决方案结果非常简单,但完全没有解释。

只需启动Debian 8.2,使用debian / temppwd登录

导航到/ opt / scripts / tools / eMMC /

cd /opt/scripts/tools/eMMC/

并手动运行该文件...

sudo ./init-eMMC-flasher-v3.sh

等待该过程完成,关闭设备电源,取出SD卡,然后重新打开设备电源。它现在将启动eMMC。


1
投票

boot / uEnv.txt和/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh都在microSD卡的Linux分区上,这就是你无法从Windows上看到它们的原因。

如果您将该卡插入Linux机器,除了FAT32 BEAGLEBONE分区外,您还会看到Linux格式的rootfs卷。实际上,您可以将其插入已经启动的BeagleBone中,它应该出现在/ media / rootfs下。

在您自己的回答中,您发现了另一种方法,即通过启动SD卡来获取其Linux分区。这可行,但可能风险更大,因为您在完全多任务Linux中运行闪存,而不是让它作为init进程单独运行。


0
投票

对于Beagle Bone无线Linux beaglebone 4.4.30-ti-r64它说

##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync
#cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh

我找不到dosfstools,但我似乎不需要它。我使用Linux beaglebone 4.4.54-ti-r93创建了一个uSD文件。 (我也不得不用sudo dd if=/dev/zero of=/dev/mmcblk1 bs=1M count=1敲打uBoot,因为它有问题。)

在uSD上启动然后运行/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh并升级了uBoot和linux。

© www.soinside.com 2019 - 2024. All rights reserved.