mass storage

Android usb mass storage 配置 尽管Android4.4以上无法使用"大容量存储模式"(mass_storage),但内核中仍然包含对mass_storage驱动. root@land:/ # ls |grep usb init.qcom.usb.rc init.qcom.usb.sh init.usb.configfs.rc init.usb.rc Android通过根目录下的`init.usb.rc`对usb gadg... 阅读详情

     最近在查找数据拷贝的过程中断线的原因,原因还没怎么找到,但是想写一点东西来记录最近的工作情况也顺便梳理下思路,给接下来的工作做个好的tag。

     在android的USB驱动相关的部分中,目前接触最多的是android.c文件,因为这个文件和f_mass_storage.c以及f_adb.c共同构成了g_android.ko。

     讲到这里不得不提的两个英文简称是FSG和LUNs。FSG:File-backed Storage Gadget。LUNs:Logic UNits。FSG提供了对USB Mass Storage的支持。他能够作为主机支持最多8个SCSI磁盘设备,成为LUNs。

      我们这里从android.c文件开始讲述,在android.c文件中我们首先要找的是module——init这个宏,这个宏定义指定了模块的入口为init函数。主要划分为四个部分:1class创建,2functions的支持3,支持的指针函数4,probe函数。下面我们将分步骤进行详细的分析:


linux gadget u盘(Mass storage) 1. kernel config Device Drivers ---> [*] USB support ---> <*> USB Gadget Support <*> USB Gadget functions configurable through configfs [*] Mass storage CONFIG_USB_CONFIGFS_MASS_STORA... 阅读详情

相关推荐

STM32 USB MASS STORAGE 开发指南与资源包

STM32微控制器广泛应用于各种嵌入式系统中,而将STM32开发板用作USB MASS STORAGE设备是一种常见需求,能够为设备提供即插即用的存储解决方案。本章节将简要介绍USB MASS STORAGE(USB MS)在STM32上的应用基础。USB MS设备允许嵌入式系统以USB大容量存储设备的形式与PC或其他支持USB的设备进行交互,这意味着它们能够读写数据,就像操作一个普通的USB闪存驱动器一样。

weixin_30978239的博客 1102

OTG改为usb host接u盘鼠标外设使用

在board.dts中通过修改usb节点的usb_port_type属性来选择devcie模式,host模式,otg模式。手动切换到 Device 模式,如下图显示,device_chose finished!(2)usb_detect_type:usb0口otg检测模式。(3)usb_wakeup_suspend:standby模式。注:(1)usb_port_type:usb0口默认的模式。置1:usb standby模式,支持远程唤醒。置0:super standby模式;置1:host模式;

TQembedsky的博客 2035

利用CubeMX复现正点原子TFTLCD驱动例程

①准备delay.c、delay.h、sys.c和sys.h四个文件。FMC的工作原理暂时先欠着,先记录一下CRUD的过程。这里我们使用的是BANK1 的第一个分区。点击 Configuration->FMC。②把fmc自动生成的代码注释掉一部分。配置参数如下图 17.5.1。③这个printf语句要屏蔽掉。选项卡之下配置相关参数。④整体代码,按需裁剪。

qq_59757948的博客 1613

全志 H6 Orange Pi Lite 2 Android 7.0 OTG配置

问题原因 因为之前没有电源线,一直使用OTG口进行供电,找到了条PSP的电源线,发现可以使用,也算是闲置物品再利用吧。测试时发现OTG功能用不了,接下来继续解决。 查看原理图,确认管脚 查看原理图可以确认,OTG部分使用的是USB0模块,并且有IDDET,检测端口,这个端口是用来区分OTG所扮演的角色,是HOST还是Device。电平触发。IDDET管脚连接到芯片的PC6口。 ...

sweetmilkcake的博客 1万+

E2000 RGMII0通讯异常问题总结

飞腾E2000 RGMII接YT8521,RGMII0路不通问题。

乌拉大喵喵 1630

基于GEC6818开发板的C/C++贪吃蛇小游戏

f.开始游戏(进入游戏,并没有马上开游戏,需要点击播放才能开始)2.相关宏,全局变量(可以根据自己需要进行修改)k.显示文字前的相关初始化。k.自定义font.h文件。1.需要的主要头文件。l.在开发板上显示字1。m.在开发板上显示字2。a.显示固定大小图片。h.线程1:获得坐标。

2301_77273301的博客 2132

Android 储存MassStorage模块

Android framework 657

【数据库】银行/信贷业务测试工作中涉及的数据库表格

银行/信贷业务测试工作中涉及的数据库表格,金融信贷测试人必看!

孤之鹜的博客 1171

ZYNQ裸机实现 USB MASS STORAGE (usb+sd卡 实现U盘功能)

ZYNQ裸机实现 USB MASS STORAGE (usb+sd卡 实现U盘功能) 之所以写裸机,也就是没有操作系统的实现方法是因为linux系统下的实现方法网上已经有很多了,之前使用的STM32实现的USB MASS STORAGE的例子已经有很多,而且实现过程几乎不用写代码,使用官方工具便可实现,ZYNQ器件的例子网上却没有找到,自己实现后分享给大家,废话少说,开始吧!

weixin_51627076的博客 5882

【雕爷学编程】Arduino智慧农业之温湿度数据上传到云平台

它们可能有错误、不适用或者无法编译。在实施过程中,需要注意传感器的选择和校准、通信和网络稳定性、数据隐私和安全保护、电源管理以及数据分析和决策支持等方面的事项。数据分析和决策支持:上传到云平台的温湿度数据可以提供丰富的信息,但需要合适的数据分析和决策支持工具来帮助农业业主理解和利用这些数据。您可以根据自己的需求和喜好选择适合您的云平台和库,并根据您的具体硬件配置进行适当的修改和调整。将温湿度数据上传到云平台,农业业主可以实时监测粮库内的温湿度情况,及时采取通风、除湿等措施,确保粮食质量和长期储存的稳定性。

雕爷学编程 1275

Spring AI 实战:如何使用 MCP Server 搭建 MCP 天气查询服务

MCP(Model Context Protocol)是 Anthropic 提出的一种开放协议,它定义了AI 模型与外部世界交互的标准方式。通俗地说:大模型本身只拥有训练数据中的知识,它不知道今天的天气、无法查询你的数据库、不能调用你的内部 API。MCP 就是解决这个问题的"桥梁"——它让模型能够发现并使用外部工具(Tools),就像人用手去操作工具一样。角色职责对应依赖MCP Server暴露工具(Tool),供模型调用MCP Client连接 Server,让模型发现和使用工具本文我们先聚焦。

SmartSi 760

linux开发板g_mass_storage模拟U盘

#!/bin/bash LinuxFileName="/media/disk" #linux mount file name CapacityNum=1024 #capacity num 1024M ImageFile="/disk.img" Version="v0.0.1" if [ ! -f "$ImageFile" ]; then echo "file not exist!" dd if=/dev/zero of=$ImageFi...

qq_32058365的博客 1721

【OpenClaw从入门到精通】命令行操作指南——TUI模式高效管理OpenClaw(2026避坑版)

本文将详细介绍OpenClaw的命令行操作,重点介绍TUI(Text User Interface)模式的高效使用方法,以及在实际使用中需要避免的常见陷阱。通过本文的学习,你将掌握OpenClaw命令行的精髓,提升工作效率。

一键难忘的博客 1691

Mass Storage

1.1        Mass Storage 1.1.1       请求过程(setup端点) 1)主机发送标准请求 2)发出两个类请求:Bulk-Only Mass Storage Reset请求、GetMaxLUN请求。   Bulk-Only Mass Storage Reset没有数据阶段,只在状态阶段告诉主机设备的Reset过程完成与否。如果在状态阶段返回ACK,那么主机就

wangww2012的博客 1547

【微信小程序】微信小程序 manifest.json 配置 ES6 转 ES5 开关:3步让你的代码兼容性更强

ES6(ECMAScript 6)是 JavaScript 的最新标准,引入了许多新的语法和特性,如箭头函数、模板字符串、解构赋值等。然而,不是所有的环境都支持 ES6,特别是旧版本的浏览器和一些特定的运行环境。为了确保代码的兼容性,我们需要将 ES6 代码转换为 ES5 代码。通过本文的详细讲解,相信你已经学会了如何在文件中配置微信小程序的 ES6 转 ES5 开关。这个小小的配置步骤能够显著提高代码的兼容性和稳定性。如果你有任何问题或需要进一步的帮助,欢迎随时留言交流。

java专栏 1360

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

USB Mass Storage

如标题所示,我们开始分析USB Mass Storage的架构. 那么driver的起点是哪里? LinuxSource/drivers/usb/storage/usb.c module_init(usb_stor_init); 这是一切的起点,好了现在要开始逐行分析usb_stor_init()这个函数了. static int __init usb_stor_init(v

2235

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Linux usb mass-storage 阅读

usb core:实现核心的功能,为别的设备驱动程序提供服务,比如申请内存,比如实现一些所有设备都会需要的公共的函数,初始化整个usb系统,初始化root_hubusb host 控制器:控制所有的usb设备的通信,CPU不是直接和usb设备通信,而是和控制器通信,CPU要对设备做什么动作,它会告诉控制器,HC再去负责处理。

wangyongh的博客 1739

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

使用configfs配置usb mass storage设备

前面使用configfs配置了一个usb虚拟网卡设备. (cdc ecm) 这里使用configfs配置一个 mass storage设备 1. 准备文件系统, 可以使用实际的本地磁盘分区, 如/dev/mmcblk0p1, 也可以使用自己制作的loop回环块设备。 前提是有做过格式化, 且文件系统主机端能识别。 比如fat格式。 回环块设备制...

River的专栏 4854

android usb mass storage 通讯,[RK3288][Android6.0] USB Mass Storage流程小结

Platform: ROCKCHIPOS: Android 6.0Kernel: 3.10.92USB Mass Storage遵循Bulk-Only协议,参见:http://www.usb.org/developers/docs/devclass_docs/usbmassbulk_10.pdf传输过程大概如下:1. 插上设备之后USB Host读取描述符信息,判断是Bulk-Only的Mass ...

weixin_30653101的博客 801

WinCE系统USB Mass Storage实现

在谈WinCE的USB Mass Storage实现之前,首先要具备以下条件:1. 开发板支持USBClient设备。2. 开发板上至少有一种存储设备可以被用来映射为U盘。 现在的处理器一般都带有USB Client或者是USB OTG控制器,并且BSP中都有相应的驱动。对于存储设备来说,Nandflash或者SD卡都可以作为存储设备。所以都不是什么问题。 驱动一般wince系

huyan1983的专栏 2309

如何实现Linux下的U盘(USB Mass Storage)驱动

摘要 本文主要介绍了USB Mass Storage的相关的各种协议之间的关系,以及如何在Linux的USB驱动框架下实现U盘驱动 本文提供多种格式供: 在线阅读 HTML HTMLs PDF CHM TXT RTF 下载(7zip压缩包) HTML HTMLs PDF CHM TXT

Lassewang的成长历程 5237

【亲测免费】 USB Mass Storage Device_驱动下载仓库

USB Mass Storage Device_驱动下载仓库 【下载地址】USBMassStorageDevice_驱动下载仓库 本开源项目专注于提供USB Mass Storage Device驱动程序资源,帮助用户轻松安装或更新USB存储设备的驱动,确保设备与电脑系统的兼容性和稳定性。驱动文件适用于多种操作系统,包括...

gitblog_06750的博客 3212

usb mass storage之旅

前面总结了usb hid keyboard,现在总结usb mass storage,在枚举阶段没什么好总结的,hid和mass storage差不多,都是同样的枚举过程,但是在他们的配置描述符、接口描述符、端点描述符,也许还有之类描述符是不同的,需要按照usb mass storage的协议来配置,下面是列出usb的相关描述符。   /****************************

射频匠人 1213

USB Mass Storage大容量存储的基本知识

转自: http://www.crifan.com/files/doc/docbook/usb_disk_driver/release/htmls/ch02_msc_basic.html 第 2 章 USB Mass Storage大容量存储的基本知识 目录 2.1. USB Mass Storage相关的协议 2.1.1. USB Mass Storage相关

chrovery的专栏 4967

USB mass storage驱动分析

1. USB驱动代码在/drivers/usb/gadget下,有文件:android.c,其他驱动文件f_adb.c,f_mass_storage.c;其中android.c 依赖于f_adb.c 和 f_mass_storage.c(这两个文件之间无依赖关系)。 2. usb_mass_storage重新mount一个分区;     a. adb shell 进入/sys/devices/

tanxs001的专栏 3118

USB Mass Storage协议

简介 USB Mass storage Device协议即海量存储设备协议适用于硬盘,U盘等大容量存储设备。协议使用的接口端点有BulkIn、BulkOut和Interrupt端点。该设备类又包含6个独立的子类以及3种传输协议。 bInterfaceSubClass 命令集 描述 01h RBC 通常,FlashDevice使用RBC,事实上所有大容量

melvda的专栏 6427
上一篇: ADB 学习之路
下一篇: USB学习之路
野-百-合
博客等级 码龄17年 308粉丝 118原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值