28.1.概述
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
本章介绍了在 FreeBSD 中使用 USB 设备模式和 USB OTG(USB On The Go)。这包括虚拟串行控制台、虚拟网络接口和虚拟 USB 驱动器。
在支持 USB 设备模式或 USB OTG 的硬件上运行时,FreeBSD USB 栈可以处于 设备模式。设备模式使计算机能够作为不同类型的 USB 设备类进行展示,包括串行端口、网络适配器和大容量存储设备,或者它们的组合。像笔记本电脑或台式计算机这样的 USB 主机能够像访问物理 USB 设备一样访问这些虚拟设备。设备模式有时也被称为“USB 小工具模式”(USB gadget mode)。
硬件可以通过两种基本方式提供设备模式功能:一种是有一个单独的“客户端端口”,仅支持设备模式;另一种是使用 USB OTG 端口,支持设备模式和主机模式。对于 USB OTG 端口,USB 栈会根据连接到端口的设备自动切换主机模式和设备模式。将像 U 盘这样的 USB 设备连接到端口时,FreeBSD 会切换到主机模式;将像计算机这样的 USB 主机连接到端口时,FreeBSD 会切换到设备模式。单用途的“客户端端口”始终工作在设备模式。
FreeBSD 向 USB 主机展示的内容取决于 hw.usb.template
sysctl。一些模板提供单个设备,比如串行终端;其他模板提供多个设备,它们可以同时使用。例如,模板 10 提供了一个大容量存储设备、一个串行控制台和一个网络接口。有关可用值的列表,请参阅 。
需要注意的是,在某些情况下,根据硬件和主机操作系统的不同,要使主机注意到配置的变化,必须物理断开并重新连接,或以系统特定的方式强制重新扫描 USB 总线。当 FreeBSD 在主机上运行时,可以使用 中的 reset
命令。这也必须在加载 usb_template.ko 后执行,特别是在 USB 主机已经连接到 USB OTG 插口时。
阅读本章后,你将了解:
如何在 FreeBSD 上设置 USB 设备模式功能。
如何配置 FreeBSD 上的虚拟串行端口。
如何从各种操作系统连接到虚拟串行端口。
如何配置 FreeBSD 提供虚拟 USB 网络接口。
如何配置 FreeBSD 提供虚拟 USB 存储设备。