This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 在驱动程序 Linux 中使用 GPIO 6.

Guru**** 2483335 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1439648/using-gpio-in-driver-linux-6

器件型号:PROCESSOR-SDK-AM62X

工具与软件:

您好!

我要尝试使用内核为6.416的 AM6X-SK 开发板上的 GPIO。 具体而言、我想使用 GPIO0_42、通过以下方式在驱动器中控制:

状态= GPIO_request (42、"SPI_HANDSHAGE_PIN");

但是、我遇到了一个错误-517

我已将以下内容添加到我的设备树(k3-am625-sk.dts):

      mygpio0_pins_default:mygpio0-default-pins{
              PINCTL-SINGLE、PINS =<
                      AM62X_IOPAD (0x00ac、PIN_INPUT、7)/*(L21) CPMC0_CSn1.GPIO0_42 */
                      AM62X_IOPAD (0x009c、PIN_INPUT、7)/*(V25) GPMC0_WAIT1.GPIO0_38 */
                      AM62X_IOPAD (0x00a0、PIN_INPUT、7)/*(K25) GPMC0_WPN.GPIO0_39 */
              >;
       };

};

MAIN_GPIO0{
       状态="正常";
       pinctrl-names ="默认值";
       pinctrl-0 =<&mygpio0_pins_default>;

};

任何人都可以指出我的配置可能有什么问题、或者为什么我会遇到此错误?

提前感谢!

转换器

qetzgrafe.

您好!

我要尝试使用内核为6.416的 AM6X-SK 开发板上的 GPIO。 具体而言、我想使用 GPIO0_42、通过以下方式在驱动器中控制:

greTranslato
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们无法在 E2E 论坛上提供有关 Linux Kernel 6.4的支持、因为 TI 不会测试或验证 Linux Kernel 6.4、因为其未与我们的 Linux SDK 打包。

    从您提供的设备树中、两个节点似乎都不存在问题。 错误517代码在此列出: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/include/linux/errno.h?h=ti-linux-6.6.y

    此致、

    Anshu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    也许您可以检查  sys/kernel/debug/Gpio 接口以验证确切的 GPIO num。

    例如、

    在我的系统中、 GPIO-567是 GPIO0_31。

    root@am62axx-EVM:~# cat /sys/kernel/debug/gpio
    gpiochip0:GPIO 512-535、父级:platform/4201000.gpio、4201000.gpio:

    gpiochip1:GPIO 536-627、父级:platform/6000.gpio、6000.gpio:
    GPIO-567 (|vddshv_sDIO)输出低

    gpiochip2:GPIO 628-679、父级:platform/601000.gpio、601000.gpio:
    GPIO-677 (|am62a-SK:绿色:心脏)输出低电平

    DTS 还可以配置此 GPIO、并将其置于驱动程序中。

    vddshv_sDIO_PINS_DEFAULT:vddshv-SDIO-DEFAULT-PINS{
    PINCTL-SINGLE、PINS =<
    AM62AX_IOPAD (0x07c、PIN_OUTPUT、7)/*(M19) GPMC0_CLK.GPIO0_31 */
    >;
    };

    vddshv_sDIO:稳压器-5{
    ...
    pinctrl-0 =<&vddshv_sidio_pins_default>;
    ...
    GPIO =<&MAIN_GPIO0 31 GPIO_ACTIVE_HIGH>;
    ...
    };