你好! 我正在基于 Linux 4.19y 和 am4378芯片开发 USB 主机模式。
我检查了 DRVVBUS 和 VBUS 引脚。
我发现有时还会有变化。
我将 USB 器件树设置为 AM437X-epos-evm.dts
/*pinset*/ USB2_phy1_default:USB2_phy1_default{
pinctrl-single、pins =<
AM4372_IOPAD (0xac0、PIN_INPUT 下拉| MUX_MODE0)
>;
};
USB2_phy1_SLEEP:USB2_phy1_SLEEP{
pinctrl-single、pins =<
AM4372_IOPAD (0xac0、DS0_PULL_UP_DOWN_EN | PIN_INPUT 下拉| MUX_MODE7)
>;
};
USB2_phy2_default:USB2_phy2_default{
pinctrl-single、pins =<
AM4372_IOPAD (0xac4、PIN_INPUT 下拉| MUX_MODE0)
>;
};
USB2_phy2_sleep:USB2_phy2_sleep{
pinctrl-single、pins =<
AM4372_IOPAD (0xac4、DS0_PULL_UP_DOWN_EN | PIN_INPUT 下拉| MUX_MODE7)
>;
};
/*设备设置*/
&USB2_phy1 {
状态="正常";
pinctrl-names ="default"、"sleep";
pinctrl-0 =<&USB2_phy1_default>;
pinctrl-1 =<&USB2_phy1_sleep>;
}
;&USB1{
DR_MODE ="OTG";
状态="确定";
}
;&USB2_phy2{
状态="正常";
pinctrl-names ="default"、"sleep";
pinctrl-0 =<&USB2_phy2_default>;
pinctrl-1 =<&USB2_phy2_sleep>;
}
;&USB2{
DR_MODE ="主机";
状态="确定";
};
usb0、&&USB1_VBUS 为5V。没关系。
但我检查 USB0_DRVVBUS 和 USB1_DRVVBUS 的电压是否为0V。
当我将他们的 dr_mode 都设置为"host"时、 我检查 USB0_DRVVBUS 的电压是否为3.3V、 USB1_VBUS 的电压是否为0V。
我将 USB1_DRRVBUS 引脚配置为 OUTPUT_PULLUP、OUTPUT_PULLUP、INPUT_PULLUP、 USB1_VBUS 的电压始终为0V。
根据 doc、我将引脚设置为 mode7 output_pullup、 并且 USB1_VBUS 的电压始终为1.68V。 因此、我认为引脚的配置正常、至少地址是可以的/
这让我感到困惑。 我想这就是为什么我的 USB 插入时没有响应的原因。
平路机、
Zikai

