【问题标题】:Control GPIO without Device Tree configure on iMX.6在 iMX.6 上控制没有设备树配置的 GPIO
【发布时间】:2016-11-11 04:51:07
【问题描述】:

在没有 DT(设备树)的旧 iMX.6 BSP 上,GPIO 由以下代码控制:

#define SABRESD_SHUTDOWN    IMX_GPIO_NR(4, 15)

gpio_request(SABRESD_SHUTDOWN, "shutdown");

gpio_direction_output(SABRESD_SHUTDOWN, 1);
gpio_set_value(SABRESD_SHUTDOWN, 0);

gpio_free(SABRESD_SHUTDOWN);

但是在新的 BSP 上,我不能再使用 IMX_GPIO_NR。相反,of_get_named_gpio 提供对 DT 中定义的 GPIO 的访问。但这有点复杂,因为我们的产品从不更改 GPIO 端口。

我的问题是,是否可以在没有 DT 定义的情况下控制 GPIO(仅使用旧方法)?

【问题讨论】:

    标签: linux-kernel linux-device-driver gpio


    【解决方案1】:

    首先,如果您使用较新的内核,我建议您移植您的代码以支持最新功能。否则 - 如果您不愿意适应它,为什么还要麻烦升级内核?

    第二,永远不要说永远。

    And finally:

    #define IMX_GPIO_NR(bank, nr)           (((bank) - 1) * 32 + (nr))
    

    【讨论】:

    • 是的,它可以!谢谢
    猜你喜欢
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 2015-07-19
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2015-10-25
    相关资源
    最近更新 更多