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.

[参考译文] AM623:器件树 GPIO/i2c 相关性

Guru**** 2419530 points
Other Parts Discussed in Thread: AM623

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1535446/am623-device-tree-gpio-i2c-dependency

器件型号:AM623

工具/软件:

您好:

我使用的是 AM623 板、并连接了外部显示板。 显示板具有 3 个可通过 i2c-1 总线访问的 SX1509 器件。 此设置的器件树与以下内容类似:

&main_i2c1{
   状态=“正常“;
   pinctrl-names =“default";“;
   pinctrl-0 =<&MAIN_i2c1_pins_default>;
   时钟频率=< 400000>;


   exp1:GPIO@3e{

      compatible =“Semtech、sx1509q“;

      REG =<0x3e>;
      GPIO 控制器;
      #GPIO-cells =<2>;

   };

   exp2:GPIO@71{

      compatible =“Semtech、sx1509q“;

      REG =<0x71>;
      GPIO 控制器;
      #GPIO-cells =<2>;

   };

   exp3:GPIO@70{

      compatible =“Semtech、sx1509q“;

      REG =<0x70>;
      GPIO 控制器;
      #GPIO-cells =<2>;

   };

}

现在、外部板通过 GPIO1_25 (E15) 由主板供电。 我遇到的问题是 Linux 在外接板通电之前在 i2c-1 上探测 3 个 sx1509 设备、因此探测失败。 我尝试按照另一个线程的示例、在 Linux 启动时立即设置 GPIO、使用 gpio-hog 属性、但这对我来说似乎没有作用。 以下是我在器件树中添加该 GPIO 的方法:

&MAIN_GPIO1{
   全部引导;

   display_pwr_en{
      GPIO-HOG;
      标签=“DISPLAY_PWR_EN";“;
      GPIOs =<25 0>;
      输出高电平;
   };
};

您看到这有什么问题吗?     是否有关于如何实现此目的的建议、以便 GPIO1_25 在 I2C 探测开始之前将电源切换到外部电路板?

这是我尝试从另一个线程转到的链接(向下滚动到“我希望在 Linux 启动时 GPIO 立即处于高电平/低电平“部分)。 如何在器件树中完成此操作?“)

【常见问题解答】PROCESSOR-SDK:使用 AM62 和 AM64 系列处理器开始在 Linux 中使用 GPIO — 处理器论坛-处理器 — TI E2E 支持论坛

谢谢

-艾曼