uboot下识别FAT32格式的U盘报错:## Valid DOS partition found ##

news2024/10/5 16:29:14

1、出错的现象

(1)U盘被格式成FAT32文件系统,在Windows和Linux系统中都可以正常识别并挂载,在uboot下可以正常识别但是不能挂载;
(2)在uboot下使用usb命令可以探测到U盘,但是用fatls、fatinfo等命令去挂载U盘时会失败,识别不了U盘上的FAT32文件系统;

2、报错打印

# usb device
Install USB Device...
# 
# usb start
starting USB...
USB0:   Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.10
scanning bus 0 for devices... 2 USB Device(s) found
USB1:   Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.10
scanning bus 1 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
# 
# usb tree
USB device tree:
  1  Hub (5 Gb/s, 0mA)
  |  U-Boot XHCI Host Controller 
  |
  +-2  Mass Storage (480 Mb/s, 100mA)
       Kingston DataTraveler 2.0 60A44CB2B14C1380F7B105A1 # 插入的U盘
     
  3  Hub (5 Gb/s, 0mA)
     U-Boot XHCI Host Controller 
   
# 
# fatinfo usb 0
##  Valid DOS partition found ##

** Unable to use usb 0:1 for fatinfo **
# 
# fatls usb 0
[fs_set_blk_dev] ifname=usb, dev_part_str=0, fstype=1
##  Valid DOS partition found ##
** Unrecognized filesystem type **

(1)从uboot的启动打印可以看出,识别到了U盘,但是识别不到U盘的分区表;
(2)结论:U盘识别是没有问题的,出错的是查找U盘的分区表,也就是识别不了FAT32文件系统;

3、报错的原因

(1)磁盘分区格式分为MBR和GPT,具体两种分区格式的区别这里不做介绍;
(2)虽然我们将U盘格式化成FAT文件系统格式,但是并没有去修改U盘的分区格式是MBR还是GPT;
(3)上面的报错原因:U盘是GPT格式分区,但是uboot没有使能GPT分区表的支持,只支持MBR分区格式;

4、解决办法

4.1、uboot使能GPT分区表的支持

(1)打开CONFIG_EFI_PARTITION,如果通过menuconfig的方式,在menuconfig–>Partition Types–>Enable EFI GPT partition table。
(2)打开该选项后,默认会新增CONFIG_EFI_PARTITION_ENTRIES_NUMBERS和CONFIG_EFI_PARTITION_ENTRIES_OFF配置项,保持默认值即可。

4.2、修改U盘的分区格式为MBR

在linux系统中,使用parted命令重新格式化U盘,将U盘改成MBR分区格式,具体步骤自行百度;

推荐

给大家推荐一个学校嵌入式知识的网站,博主在大学时候学习嵌入式知识、找工作的时候都在用这个网站,网站里有C语言、Linux等等的笔试题、面试常问问题等等知识,无论是学习基础知识、面试刷题、交流工作经验都是不错的选择。大家一起进步,欢迎留言交流。
链接:学习神器跳转
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/165017.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring MVC+Spring+Mybatis实现支付宝支付功能

本教程详细介绍了如何使用ssm框架实现支付宝支付功能。本文章分为两大部分,分别是「支付宝测试环境代码测试」和「将支付宝支付整合到ssm框架」,详细的代码和图文解释,自己实践的时候一定仔细阅读相关文档,话不多说我们开始。 本…

永磁同步电机(PMSM)磁场定向控制(FOC)转速环PI调节器参数整定

文章目录前言一、调节器的工程设计方法二、转速环PI调节器的参数整定2.1.转速环的结构框图2.2.典型II型系统2.3.转速环PI参数整定计算公式三、转速环PI调节器设计实例3.1.永磁同步电机磁场定向的转速外环电流内环双闭环控制3.2.转速环PI参数计算3.3.仿真分析总结前言 本章节采…

【2022年度总结2023新年Flag】--2022:高考失利,我奋力奔跑的大一上;2023,朝着成为更优秀的自己迈进ing

🌱博主简介:是瑶瑶子啦,一名大一计科生,目前在努力学习C进阶,JavaSE。热爱写博客~正在努力成为一个厉害的开发程序媛! ✈往期博文回顾:【C语言篇】请把这篇文章推给现在还对指针一知半解的童鞋超生动图解,详…

linux w5500 驱动及使用

1、驱动 驱动来源: a. 内核:linux内核w5500驱动,包含两个源文件w5100.c和w5100-spi.c /kernel/drivers/net/ethernet/wiznet/w5100.c kernel/drivers/net/ethernet/wiznet/w5100-spi.c kernel/drivers/net/ethernet/wiznet/w5100.h 可通过make menuconfi…

Django 入门学习

记录Django入门学习过程 1 基本环境 安装virtualenv pip3.9 install virtualenv 使用命令行创建 创建一个项目 virtualenv dj 进入虚拟环境 cd dj/bin source ./activate 进入成功后bash前面显示括号 安装 Django pip install django3.0.6 安装成功后之星django-…

创建者模式

1.单例模式 单例模式能够保证一个类只有一个实例,并且提供一个可以访问该实例的全局节点 实现步骤 类中添加一个私有静态成员变量用于保存单例实例声明一个公有静态构建方法用于获取单例实例在静态方法中实现"延迟初始化"。 该方法会在首次被调用时创建一…

【云原生kubernetes】k8s中pod使用详解

一、前言 在之前k8s组件一篇中,我们谈到了pod这个组件,了解到pod是k8s中资源管理的最小单位,可以说Pod是整个k8s对外提供服务的最基础的个体,有必要对Pod做深入的学习和探究。 二、再看k8s架构图 为了加深对k8s中pod的理解&#x…

ARM PWM 定时器与实战

一、什么是定时器(timer) 1、定时器是 SoC 中常见外设 (1) 定时器与计数器。计数器是用来计数的(每隔一个固定时间会计一个数);因为计数器的计数时间周期是固定的,因此到了一定时间只要用计数值计数时间周…

contex-m基于IAR工程从boot阶段引导app

目录 1.修改工程 2.修改代码 Boot代码 App代码 3.修改FM33LG04x.icf 4.修改IAR工程icf配置路径 5.修改FM33LG04X.icf链接文件 6.编译工程 7.查看map文件 8.调试程序 1.修改工程 本次调试的demo为《UART0 DMA发送_串口中断示例》,以下修改都是基于该工程&…

初始C语言 - 函数

C语言中函数的分类: 1.库函数:C语言自带的函数,包含大量频繁使用的功能 2.自定义函数:有些库函数没有的,需要程序员自己设计一、库函数通过MSDN、cplusplus.com、cppreference.com这些网站,查看学习函数的作用和用法在使用库函数时…

portswigger靶场中目录遍历

portswigger靶场中目录遍历1.Bp靶场介绍1.1.访问靶场1.2.注意事项2.目录变量漏洞2.1.文件路径遍历2.1.1.开启靶场2.1.2.点击详情2.1.3.抓包2.1.4.修改参数2.1.5.过关2.2.用绝对路径旁路阻止遍历序列2.2.1.开启靶场2.2.2.修改参数2.2.3.过关2.3.非递归地剥离遍历序列2.3.1.开启靶…

Windows下让Qt5 QCamera响应UVC摄像头硬件按钮拍图

QCamera相机类提供了一些基本的功能,包括拍照和录制功能(Windows不支持录制视频),但也有很多接口是没有封装的,比如有些UVC摄像头有物理按键,可以进行拍图等操作,但是QCamera没法响应硬件按钮的…

通信原理与MATLAB(十五):码间干扰和无码间干扰条件

目录1.码间干扰2.无码间干扰条件2.1 时域条件2.2 频域条件3.满足无码间干扰条件的滤波器3.1 理想低通滤波器3.2 余弦滚降滤波器4.不同滚降系数的余弦滚降滤波器时频域图4.1 代码4.2 结果图5.理想低通滤波器和升余弦滚降滤波器(α1)对比1.码间干扰 如下图所示,码间干…

Vue 基础之侦听器

Vue 基础之侦听器描述侦听器侦听器的创建侦听器的应用选项immediate 选项deep 选项未使用 deep 选项使用 deep 选项侦听目标对象中的单个属性描述 项目描述IDEVScode操作系统Windows 10 专业版Vue.js2.6.12 侦听器 侦听器允许开发者对数据进行监视,并指定数据发生…

数据分析-深度学习 Pytorch Day4

一:概述当你想训练好一个神经网络时,你需要做好三件事情:一个合适的网络结构,一个合适的训练算法,一个合适的训练技巧:合适的网络结构:包括网络结构和激活函数,你可以选择更深的卷积…

打工人必学的法律知识(四)——《中华人民共和国劳动法》

中华人民共和国劳动法http://www.npc.gov.cn/npc/c30834/201901/ffad2d4ae4da4585a041abf66e74753c.shtml 目录 第一章 总  则 第二章 促进就业 第三章 劳动合同和集体合同 第四章 工作时间和休息休假 第五章 工  资 第六章 劳动安全卫生 第七章 女职工和未…

大数据技术之Hadoop(HDFS)——超详细

第1章 HDFS概述 1.1 HDFS产出背景及定义 1)HDFS产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文…

误删照片音视频文件不要担心 几种方法解救慌乱的你 别再病急乱投医啦 [附软件]

误删照片音视频文件不要担心 几种方法解救慌乱的你 方法1:从手机相册中恢复手机删除的照片 这里以vivo手机为例,其他手机也是差不多的 相册->右上角三个点->设置->云空间 进入云存储空间 点击云盘->我的备份->就能看到你自动上传的照片 相册-&…

【Linux】共享内存

目录 一、共享内存 1.1 申请共享内存块 1.2 释放共享内存块 1.3 挂接共享内存 二、共享内存的使用 2.1 Server端与Client端 2.2 挂接与运行 三、共享内存总结 3.1 共享内存的特点 3.2 共享内存实现访问控制 一、共享内存 共享内存是最快的IPC形式。一旦这样的内存映…

xxl-job原理(版本2.3.1)

一、xxl-job架构图 1、调度中心 ​ 负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块。 2、执行器 负责接收调度请求并执行任…