USB一般分为主机(Host)和从机(Slave),数据传输是建立在Host和Slave的正常连接基础上,比如电脑上的USB口是Host,U盘是Slave;还有一种协议OTG(On The Go),这是一种USB2.0引入的工作模式,可以进行主从协商,什么时候做Host或者Slave由一个ID决定,这个ID是硬件上的管脚来检测的,原理图:
本章内容是有关USB Host进行U盘的挂载。
1 配置选项说明
在目录~/share/patchs/udisk-config中,有一个配置文件,我们已经把U盘需要支持的选项加入进去,现在需要对比工程的区别,然后进行分析,可以通过beyond compare进行比较:
差异点1:
CONFIG_SCSI=y
支持SCSI协议(小型计算机接口协议),设备上如果有任何如下类型SCSI/SAS/SATA/USB/Fibre Channel/FireWire设备那么就需要该选项。
CONFIG_BLK_DEV_SD=y
使用SCSI/SAS/SATA/PATA/USB/Fibre Channel存储设备。
CONFIG_CHR_DEV_SG=y
通用 SCSI 设备(通常是SCSI光驱),Linux下显示在/dev/sg*设备。
CONFIG_CHR_DEV_SCH=y
SCSI介质转换设备(SCSI Medium Changer device)是一种控制多个SCSI介质的转换器。