BB-Black插入SD卡启动不正常的解决办法

给Jetson Nano更换eMMC闪存(扩容) 【声明】我还只是个Linux小白,写的东西并不一定对,仅提供一种参考思路,请各路大神莫喷,有啥想法可以相互交流。 【邮箱】188283942@qq.com 1 前言 1.1 遇到的问题 最近TX2缺货,于是试着用nano去跑一些轻量化的工程。但是nano的emmc只有16G,把ROS装上之后基本上就没法装CUDA了(之前试过,装到一半没空间了,导致开不了机,只能进tty去删东西)。 1.2 解决思路 于是考虑给nano扩容,有三种思路: 1. 插S... 阅读详情
bbb板子上自带2G eMMC, 但是对很多应用来说, 容量还是远远不够, 于是我想用sd卡扩展空间, 但是发现一插入sd卡, 板子就启动不了啦, 去google了一下原因, 原来bbb的原生系统所带的uboot启动的时候如果发现有sd卡, 则sd卡会变成mmc0, eMMC则变成mmc1, 导致启动失败, 于是搜了很多资料, 努力了一个晚上终于搞定这个问题....

首先你需要一张microSD卡, 一个读卡器, 我用的是笔记本自带的, 启动ubuntu(或者别的linux系统, windows不行), 把sd卡插进读卡器里, 输入

fdisk -l

查看一下当前sd卡设备的名称, 我的是mmcblk0, 于是

fdisk /dev/mmcblk0

进行分区, 使用命令 d 删除sd卡上目前存在的所有分区, 使用n 命令分别创建2个分区, 第一个小一点的, 大概几十m就可以了, 用作启动区, 第二个分区就是剩下的所有空间, 最后输入w命令写入分区表, 如果不熟悉fdisk命令的话可以去找百度看一下.

接下来使用mkfs命令分别格式化两个分区:
mkfs -t vfat -F 16 -n boot /dev/mmcblk0p1

mkfs -V -t ext4 -j -L data /dev/mmcblk0p2

两个分区命名为boot 跟 data, 第一个是fat16格式的, 第二个是ext4格式的, 接下来挂载第一个分区到根目录下, 并在上面创建一个文件uEnv.txt , 将下面几行内容写进去:
mmcdev=1
bootpart=1:2
mmcroot=/dev/mmcblk1p2 ro
optargs=quiet

保存后umount, 把sd卡拿出来, 插到BBB板子上, 最后上电, 启动成功!!

我刚开始的时候只是google到uEnv.txt以及它的内容, 没有注意使用fdisk以及mkfs制作启动sd卡, 插进BBB板子后启动失败, 看串口调试信息显示:
Bad partition specification mmc 1:2
于是查了半天终于发现是sd卡的分区不对, 用以上方法制作成功后, 串口观察启动过程:

U-Boot SPL 2013.04-dirty (Jun 19 2013 - 09:57:14)
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Peripheral mode controller at 47401000 using PIO, IRQ 0
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Host mode controller at 47401800 using PIO, IRQ 0
OMAP SD/MMC: 0
mmc_send_cmd : timeout: No status update
reading u-boot.img
reading u-boot.img


U-Boot 2013.04-dirty (Jun 19 2013 - 09:57:14)

I2C:   ready
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  No NAND device found!!!
0 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - readenv() failed, using default environment

musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Peripheral mode controller at 47401000 using PIO, IRQ 0
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Host mode controller at 47401800 using PIO, IRQ 0
Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw, usb_ether
Hit any key to stop autoboot:  1 0 
gpio: pin 53 (gpio 53) value is 1
mmc0 is current device
micro SD card found
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
SD/MMC found on device 0
reading uEnv.txt
62 bytes read in 2 ms (30.3 KiB/s)
Loaded environment from uEnv.txt
Importing environment from mmc ...
gpio: pin 55 (gpio 55) value is 1
mmc_send_cmd : timeout: No status update
4270840 bytes read in 746 ms (5.5 MiB/s)
gpio: pin 56 (gpio 56) value is 1
24129 bytes read in 51 ms (461.9 KiB/s)
Booting from mmc ...
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Angstrom/3.8.13/beaglebone
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4270776 Bytes = 4.1 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 80f80000
   Booting using the fdt blob at 0x80f80000
   XIP Kernel Image ... OK
OK
   Using Device Tree in place at 80f80000, end 80f88e40

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.194032] omap2_mbox_probe: platform not supported
[    0.204621] tps65217-bl tps65217-bl: no platform data provided
[    0.281250] bone-capemgr bone_capemgr.8: slot #0: No cape found
[    0.318357] bone-capemgr bone_capemgr.8: slot #1: No cape found
[    0.355465] bone-capemgr bone_capemgr.8: slot #2: No cape found
[    0.392574] bone-capemgr bone_capemgr.8: slot #3: No cape found
[    0.412614] bone-capemgr bone_capemgr.8: slot #6: BB-BONELT-HDMIN conflict P8.45 (#5:BB-BONELT-HDMI)
[    0.422237] bone-capemgr bone_capemgr.8: slot #6: Failed verification
[    0.429015] bone-capemgr bone_capemgr.8: loader: failed to load slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[    0.451672] omap_hsmmc mmc.4: of_parse_phandle_with_args of 'reset' failed
[    0.516043] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested by 44e10800.pinmux; cannot claim for gpio-leds.7
[    0.527764] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.7) status -22
[    0.535082] pinctrl-single 44e10800.pinmux: could not request pin 21 on device pinctrl-single
[    6.375621] libphy: PHY 4a101000.mdio:01 not found
[    6.380726] net eth0: phy 4a101000.mdio:01 not found on slave 1
systemd-fsck[85]: Angstrom: clean, 50623/112672 files, 325594/449820 blocks


.---O---.                                           
|       |                  .-.           o o        
|   |   |-----.-----.-----.| |   .----..-----.-----.
|       |     | __  |  ---'| '--.|  .-'|     |     |
|   |   |  |  |     |---  ||  --'|  |  |  '  | | | |
'---'---'--'--'--.  |-----''----''--'  '-----'-'-'-'
                -'  |
                '---'

The Angstrom Distribution beaglebone ttyO0

Angstrom v2012.12 - Kernel 3.8.13

beaglebone login: 

红字就是读sd卡配置环境文件uEnv.txt的过程, 因为插入sd卡后设备号有变动, 因此实际上这个方法是把root重新定义了回去, 使得系统能正确找到zImage的位置.
BeagleBone Black系统镜像升级避坑指南:从SD卡启动到eMMC刷写的完整流程 本文详细介绍了BeagleBone Black系统镜像升级的全流程,从SD卡启动到eMMC刷写的完整步骤,特别针对镜像选择、烧录技巧、启动配置等常见问题提供解决方案。帮助开发者避免常见陷阱,顺利完成系统更新,提升开发效率。 阅读详情

相关推荐

Beaglebone Black开发环境搭建(uboot、kernel、文件系统、Xenomai)

在Beaglebone Black上手动编译uboot、Linux内核,安装文件系统,记录了如何在Beaglebone Black上安装官方打好Xenomai 3 -patch的内核与测试。

aazjt的博客 7450

Redis的数据结构

五种数据类型: 字符串(String) 字符串列表(list) 有序字符串集合(sorted set) 哈希(hash) 字符串集合(set) Key定义的注意点: 不要过长, 不要过短, 统一的命名规范 存储String 二进制安全的,存入和获取的数据相同 Value最多可以容纳的数据长度是512M 存储String常用命令 赋值 取值 ...

weixin_30402085的博客 212

BeagleBone Black新手避坑指南:从USB连接到SSH登录,保姆级图文教程

本文提供BeagleBone Black开发板的详细使用指南,涵盖USB连接、SSH登录、系统更新等关键步骤。通过实战经验和避坑技巧,帮助新手快速解决常见问题,如驱动安装、IP冲突、镜像刷写等,并分享效能优化的七个实用技巧,提升开发效率。

weixin_42549037的博客 323

Latex插入图片出现图片名.bb

Latex插入图片的时候出现图片名.bb等字符 插入的图片路径中不要包含空格 Latex插入图片并且放置在当前位置 \begin{figure}[htb] \centering \includegraphics[width=\linewidth]{figures/poal.png} \caption{process of active learning} \label{fig} \end...

baidu_34326272的博客 8006

uniapp运行钉钉小程序

因项目原因,公司需要在钉钉里面开发小程序。之前用uniapp开发过app,H5,小程序。还真没尝试过钉钉小程序,今天就简单的记录下uniapp运行钉钉小程序中的过程。

YL 2919

HP MSA 2050磁盘阵列配置步骤

一、盘阵与服务器直接连接 1.1 单控制器配置:一台服务器/ 一个 HBA/ 单路径 1.2 双控制器配置:两台服务器/ 每台服务器一个 HBA/ 双路径 二、通过交换机(一般光纤交换机) 2.1 双控制器配置:两台服务器/ 两台交换机 三、配置MSA2050 3.1在完成硬件安装后,可以访问控制器模块的基于 Web 的管理界面 SMU (存储 管理实用程序),以便监视和管理此存储系统。 首先...

jw5493的博客 1万+

直接路径插入与间接路径插入

一、直接路径插入与间接路径插入的不同     这个问题相信很多人都已经知道了,为了方便初学者,我再来重审一遍。 create table 表1 as select 列1,列2,... select 表2 insert /*+append*/ into 表1 select 列1,列2,... select 表2     如上形式的插入,都叫做直接路径插入。当然,在SQL*Loader中也

huan_lxyd的专栏 2380

RK3588多路MIPI摄像头采集与WiFi低延迟传输实战指南

本文详细介绍了基于RK3588平台实现多路MIPI摄像头同步采集并通过WiFi进行低延迟传输的完整实战方案。文章深入剖析了从V4L2驱动配置、多线程采集、环形缓冲区设计到UDP网络传输优化的核心技术,旨在帮助开发者在工业检测、智能安防等场景下构建高并发、高实时性的视频流系统,实现端到端延迟控制在100毫秒以内的目标。

tensor9flow的博客 786

u-boot 启动 log 报*** Warning - bad CRC, using default environment 警告

使用mkenvimage 工具创建环境变量镜像文件,下面脚本提供参考:(建议使用脚本)开机读取环境变量报CRC,导致使用默认环境变量。将文件烧到环境变量对应分区,启动正常!这个报错一般都是环境变量分区没有数据。1. 该怎么让它有数据?

chanpanwen的博客 417

TI官方PSpice for TI安装避坑指南:从申请Key到解决器件搜索栏空白(附详细步骤)

本文详细介绍了PSpice for TI的安装与配置全流程,包括申请Key、解决器件搜索栏空白等常见问题。通过分步指南和实战避坑技巧,帮助工程师高效完成安装并优化性能,确保电路仿真工具的正常使用。

weixin_29299807的博客 1078

高云FPGA系列教程(8):ARM串口数据接收(中断和轮询方式)

GW1NSR-4C ARM部分共有2个串口外设,都挂载在APB1总线上,最高支持波特率921.6Kbit/s,无奇偶校验位,8位数据位,1位停止位,支持高速测试模式 HSTM(High Speed Test Mode),即每个时钟周期输出1位数据,可以在短时间内传输大量数据。官方手册上没有描述发送和接收缓存FIFO的深度,所以不确定是否支持缓存。

whik1194的博客 1684

BeagleBone Black系统镜像升级全攻略:从SD卡刷写到eMMC固化的完整流程与避坑指南

本文详细介绍了BeagleBone Black系统镜像升级的全过程,包括从SD卡刷写到eMMC固化的完整流程与避坑指南。涵盖了镜像选择、SD卡烧录、eMMC刷写、配置优化及常见问题排查,帮助开发者高效完成系统升级,确保嵌入式开发的顺利进行。

weixin_30730053的博客 425

人工智能---什么是Transformer?

Transformer是一种强大的神经网络架构,最初由Google的研究人员在论文《Attention is All You Need》中提出,用于自然语言处理任务,特别是在机器翻译方面取得了巨大成功。Transformer的核心思想是完全基于自注意力机制(self-attention mechanism)来实现序列到序列(sequence-to-sequence)的学习。它在自然语言处理(NLP)和其他序列到序列任务中表现出色,逐渐成为该领域的主流模型。近些年也逐渐在自动驾驶领域有所应用。

智能汽车人的博客 3955

Beaglebone Black的启动

Beaglebone Black的启动

大学霸__IT达人 1083

库存管理系统项目部署方案(基于jdk8)

不需要安装到服务器,运维本地安装就行,主要是用来编译前端代码的。构建完成后将dist文件夹复制到服务器内。

程序员诚哥 2574

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

BeagleBone Black 之官方Debian系统安装

第一步:下载官方 Debian镜像,,下载地址在:http://beagleboard.org/latest-p_w_picpaths第二步:解压缩xz文件里的img镜像,,无论你是用7-zip,还是winrar什么的都ok第三步:下载Image Writer 将镜像烧写到 你的SD卡中第四步:把烧写好镜像的SD卡插入BBB,按住SD卡槽旁边的按键(在卡槽另一面)(15s左右...

weixin_34051201的博客 399

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

BeagleBone Black入门总结

BeagleBone入门总结

记录自己工作生活中遇到的问题 861

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Beaglebone Black安装Android系统

一、下载 Getting Pre-built Images http://downloads.ti.com/sitara_android/esd/TI_Android_DevKit/TI_Android_JB_4_2_2_DevKit_4_1_1/index_FDS.html 网页中Pre-built Images(编译好的镜像)下载BeagleBone Black镜像TI_A

Zorry的专栏 1173

BeagleBone Black系列(一) 基本配置和上手注意事项

BeagleBone Black系列(一) 基本配置和上手注意事项 2008 年首次发布 BeagleBoard 后 , 已经经历了数次 BeagleBone (BB) 迭代 , 我开箱的是 BeagleBone Black , 这块板子是14年版的 ,阴差阳错的情况下, 在2021年我拥有了它 , ????, start ! 基本配置 大小和校园卡差不多 SD卡插槽在背部 5V1A的DC供电,最高支持100M的网口,mini USB 接口 一个faxconn(USB Host)接口 ,一个M

刘墨苏的技术博客 4218

beaglebone black教程2-使用TF卡烧写debian系统到eMMC内部

关于beagleone系统烧写的教程比较多,和树莓派相比beaglebone有一个优点,就是板子上面出厂自带操作系统,那是因为我们的beaglebone black上面有一个2g大小的eMMC(可以理解为电脑硬盘差不都的东西),我们的beaglebone的出厂默认的操作系统就存在这里,据说现在最新的板子好像有4G eMMC版本的了。 这样的话beaglebone支持两种操作系...

weixin_30613433的博客 627

BeagleBone Black Linux3.8内核驱动程序开发笔记——LED

最近这段时间在玩beaglebone-black,参照《LINUX设备驱动程序》想用来练习Linux下的驱动程序编写,于是把我最近这一个多月的学习做下笔记。我也是新手,本文仅贡交流之用,有写的不好的地方,还望各位高手指正,不吝赐教! 本文参照了: 《Linux下AM335X的GPIO控制》 《Linux下TI omap芯片 MUX 配置分析(以AM335X芯片为例)》 《BeagleB

wjs1033的专栏 2402

在ANTMINER(阉割版BeagleBone Black)运行Debain

开门见山,直入主题 咸鱼入手3块阉割ARM板,经过快递近6天运输到手,不过价格便宜 东西下面这样的(借了咸鱼的图): 发现这块板是阉割版的国外beagleboard.org型号为BeagleBone Black的开发板,官网有很多详细的资料,如下图 不愧是官网,资料不是一般的全,我们先看看哪些东西被阉割掉了吧。 (下图都是实际收到的板子) 我框出的部...

weixin_30295091的博客 1189

聊聊Beaglebone Black的cape和device tree overlay和dtc命令【转】

本文转载自:https://blog.csdn.net/wyt2013/article/details/16846171 本文是我早期写的,语言略混乱。请直接看我最新整理的,适用于初学者的文章《使用BBB的device tree和cape(重新整理版)》 我们知道beagleboard官网上有一些官方的硬件外设,比如lcd显示屏之类的,他们管这些外设叫做cape。其实这里是我理解狭隘...

917

BeagleBone Green(BBG)学习(第一坑:官方镜像烧录与系统环境搭建)

本文介绍了BeagleBone Green(BBG)开源硬件开发板的学习使用全流程。BBG是基于TI AM3358处理器的单板计算机,具有双PRU硬核实时单元,适合工业控制、机器人等应用。 主要内容包括: 硬件特点:1GHz Cortex-A8处理器、512MB内存、4GB eMMC,特有Grove传感器接口和PRU实时控制单元 开发环境搭建:系统烧录、串口调试、网络配置 应用场景:可与STM32、香橙派等设备联动,实现电机控制、传感器数据

共同成长,共同进步。 1032
上一篇: Beagle选型参数对照表
下一篇: 人如何“存活”于社会
bbsview
博客等级 码龄15年 9粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值