我正在裸机环境(32 位)中开发新的 Raspberry Pi 3 B+ 板。我有一个适用于较旧的 Pi 1 板的 USB 驱动程序。据我了解,Pi 1 和 Pi 3 B+ 具有相同的 USB 主机控制器(Synopsis DesignWare 2.0 USB 主机控制器;或简称 dwc),但适用于 Pi 1 的 USB 驱动程序不适用于我Pi 3 B+(或 Pi 3 B)。
经过一些调试消息后,我发现问题是当DWC枚举设备时,它会尝试读取设备描述符,我猜是板载USB集线器/以太网设备(LAN7515) ,但它会返回传输错误,因此无法枚举设备。
我的问题是为什么会发生这种情况?如果 Pi 1 和 Pi 3 具有相同的主机控制器,那么理论上它至少应该能够正确枚举设备。
如果有人能指出我为什么会发生这种情况的正确方向,将不胜感激。
先感谢您。