Linux vbus调节器设备树

Linux vbus调节器设备树,linux,device-tree,Linux,Device Tree,有人能解释一下设备树的设置吗?他们将在i.MX6处理器上做什么 谢谢 vbus1_regulator: regulator@1 { compatible = "regulator-fixed"; regulator-name = "vbus1_regulator"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <

有人能解释一下设备树的设置吗?他们将在i.MX6处理器上做什么

谢谢

vbus1_regulator: regulator@1 {
    compatible = "regulator-fixed";
    regulator-name = "vbus1_regulator";
    regulator-min-microvolt = <5000000>;
    regulator-max-microvolt = <5000000>;
    gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
    enable-active-high;
};


&usbotg {
    vbus-supply = <&vbus1_regulator>;
    dr_mode = "host";
    status = "okay";
};
vbus1\u调节器:regulator@1 {
compatible=“调节器固定”;
调节器名称=“vbus1\U调节器”;
调节器最小微伏=;
调节器最大微伏=;
gpio=;
启用主动高电平;
};
&usbotg{
vbus供应=;
dr_mode=“主机”;
status=“好”;
};

USB协议定义了两个角色-主机和客户端。使用USB OTG(移动中)设备可以同时具备主机和客户端功能。见:

为了让设备作为主机工作,它需要按照USB标准的要求为连接到它的客户端设备提供电源

也就是说,&usbotg节点是:

  • 使用_vbus1_调节器作为USB电源
  • 通过将dr_mode属性设置为host,强制USB OTG端口作为主机工作
  • 通过将状态设置为OK来启用节点
  • 有关更多详细信息,请参阅Linux内核设备树绑定文档:

    vbus1_调节器节点为:

  • 使用与regulator兼容的内核驱动程序修复了以下问题:
  • 将调节器的名称设置为vbus1\U调节器
  • 将最小和最大电压定义为相同值5000000微伏,与5伏相同。由于固定电压调节器的性质,两者是相同的-您有一个固定的输出电压值
  • 使用GPIO引脚(在别处声明)控制调节器(打开/关闭)
  • 定义GPIO水平必须高才能激活调节器。如果忽略此特性,则假定调节器在逻辑电平低时处于激活状态
  • 有关更多详细信息,请参阅Linux内核设备树绑定文档: