如何在设备树中设置GPIO引脚输出值

时间:2019-02-22 08:00:02

标签: linux gpio device-tree imx6

我使用的是基于iMX6的主板,我想在启动时使用设备树将树状输出的GPIO值设置为1或0。 有可能吗,我该怎么办?

我想知道是否必须依靠gpio-leds功能,或者是否可以在DT中定义新节点。

我在互联网上发现了一些话题,说我可以按照以下步骤进行操作,但是不起作用。

test {
    compatible = "gpio-leds";
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_gpio_leds>;

    myout {
        label = "myoutlabel";
        gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
        default-state = "off";
    };
};

pinctrl_gpio_leds: gpioledsgrp {
    fsl,pins = <
        MX6QDL_PAD_GPIO_8__GPIO1_IO08  0x80000000   // My output
    >;
};

任何提示将不胜感激。 TIA

1 个答案:

答案 0 :(得分:0)

您可以启用/禁用连接到该引脚的内部上拉/下拉电阻(以及其他电气特性),从而强制该引脚为逻辑1/0。您应该在处理器参考手册中寻找该焊盘的“焊盘控制寄存器”(IOMUXC_SW_PAD_CTL_PAD_GPIO_8),然后根据需要在上述寄存器中通过将正确的位设置为1或0来查看希望启用/禁用的特性。但是,我不确定这是否正是您想要的。

也许这可以帮助您了解操作:http://cache.freescale.com/files/32bit/doc/app_note/AN5078.pdf