OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2322|回复: 1

Linux 内核自带 USB OTG 实验 接键盘没有反应

[复制链接]

4

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2020-11-11
在线时间
27 小时
发表于 2022-7-22 20:09:59 | 显示全部楼层 |阅读模式
5金钱
我的STM32MP1 开发板底板是V1.4版本,所以只看 50.6.1 小节 STUSB1600 设备树编写。

上一节Linux 内核自带 HOST 实验 USB鼠标键盘都能用。

然后做Linux 内核自带 USB OTG 实验,跟着操作步骤直接复制的设备树,完成后在OTG接口上插键盘没有反应。

Snipaste_2022-07-22_19-56-34.png

在使用命令 make dtbs 编译时有个报错,如下
stm32mp157d-atk.dts:171.3-16: Warning (reg_format): /stusb1600@28:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
然后我改成 reg = <0x28 0>; 就不报错了。


下面是本实验中添加的设备树节点,大佬们看看我添加的位置对吗?
stm32mp157d-atk.dts

  1. / {
  2.         vdd_usb: regulator-vdd-usb {
  3.                 compatible = "regulator-fixed";
  4.                 regulator-name = "vdd_usb";
  5.                 regulator-min-microvolt = <3300000>;
  6.                 regulator-max-microvolt = <3300000>;
  7.                 regulator-always-on;
  8.                 regulator-boot-on;
  9.         };
  10.         vin: regulator-vin {
  11.                 compatible = "regulator-fixed";
  12.                 regulator-name = "vin";
  13.                 regulator-min-microvolt = <5000000>;
  14.                 regulator-max-microvolt = <5000000>;
  15.                 regulator-always-on;
  16.                 regulator-boot-on;
  17.         };

  18.         stusb1600@28 {
  19.                 compatible = "st,stusb1600";
  20.                 reg = <0x28 0>;
  21.                 interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
  22.                 interrupt-parent = <&gpiog>;
  23.                 pinctrl-names = "default";
  24.                 pinctrl-0 = <&stusb1600_pins_b>;
  25.                 status = "okay";
  26.                 vdd-supply = <&vin>;

  27.                 connector {
  28.                         compatible = "usb-c-connector";
  29.                         label = "USB-C";
  30.                         power-role = "dual";
  31.                         power-opmode = "default";

  32.                         port {
  33.                                 con_usbotg_hs_ep: endpoint {
  34.                                         remote-endpoint = <&usbotg_hs_ep>;
  35.                                 };
  36.                         };
  37.                 };
  38.         };
  39. };
  40. &usbphyc_port1 {
  41.         phy-supply = <&vdd_usb>;
  42.         st,phy-tuning = <&usb_phy_tuning>;
  43. };
  44. &usbotg_hs {
  45.         phys = <&usbphyc_port1 0>;
  46.         phy-names = "usb2-phy";
  47.         usb-role-switch;
  48.         status = "okay";

  49.         port {
  50.                 usbotg_hs_ep: endpoint {
  51.                         remote-endpoint = <&con_usbotg_hs_ep>;
  52.                 };
  53.         };
  54. };
  55. &i2c1 {
  56.         pinctrl-names = "default", "sleep";
  57.         pinctrl-0 = <&i2c1_pins_b>;
  58.         pinctrl-1 = <&i2c1_pins_sleep_b>;
  59.         status = "okay";
  60. };
复制代码



stm32mp15-pinctrl.dtsi

  1. &pinctrl {
  2.         stusb1600_pins_b: stusb1600-0 {
  3.                 pins {
  4.                         pinmux = <STM32_PINMUX('G', 2, ANALOG)>;
  5.                         bias-pull-up;
  6.                 };
  7.         };
  8. };
复制代码




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

558

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
164897
金钱
164897
注册时间
2010-12-1
在线时间
2100 小时
发表于 2022-7-23 23:22:23 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-11 05:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表