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/DM388:如何在内核4.4的器件树中禁用 PLL 时钟

Guru**** 2562120 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/594647/linux-dm388-how-to-disable-the-pll-clock-in-the-device-tree-of-kernel-4-4

器件型号:DM388

工具/软件:Linux

尊敬的先生:

根据 TRM、我知道 DM388在顶层具有12个片上 PLL。

我想禁用无用的 PLL 以实现节能。 例如 SATA、PCIe、以太网 MAC。

我通过"ti,set-bit-to disable;"更改文件"ti81xx-clock.TDSi"

例如、我希望禁用 PLL_video0 (它是 ARM M3吗?) 以检查电流。

   /* video0 DPLL 的时钟输入选择*/
   video0_DPLL_CLKIN_CK:video0_DPLL_CLKIN_CK{
      #clock-cells =<0>;
      兼容="ti、mux-clock";
      时钟=<&devosc_ck>;
      REG =<0x02C0>;/* OSC_SRC 寄存器*/
      /*ti, bit-shift =<16>;*/
      TI、设置位至禁用;
   };

执行该操作后、我无法获得正确的操作、电流不会改变。

您能否举个例子说明如何实现这一目的?

谢谢。

S.K.

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

    设置为禁用的位应用于栅极时钟、而不是多路复用时钟。 您可以尝试相同的 ti、栅极时钟并检查电源。 请参阅 Documentation/devicetree/bindings/Chock/ti
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Dwarakesh、

    您知道如何为 I2C-0引脚多路复用器设置0x418和0x41c 的值吗?

    因为器件树中的这些值与数据表不匹配。

    i2c0_pins:pinmux_i2c0_pins{

    pinctrl-single、引脚=<

    0x418 (上拉| MUX_MODE0)

    0x41c (上拉| MUX_MODE0)

    >;

    };

    谢谢。

    S.K.

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

    您好、黄

    很抱歉,如果您想混淆,请忽略我之前的回复。

    MUX_MODE0指的是1<<0 (请参阅/arch/arm/boot/dts/include/dt-bindings/pinctrl/ti81xx.h),因此根据数据表,它是正确的。

    谢谢、此致、

    Vishwanath Patil

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

    [引用 user="S.K. 黄"]

    您知道如何为 I2C-0引脚多路复用器设置0x418和0x41c 的值吗?

    因为器件树中的这些值与数据表不匹配。

    i2c0_pins:pinmux_i2c0_pins{

    pinctrl-single、引脚=<

    0x418 (上拉| MUX_MODE0)

    0x41c (上拉| MUX_MODE0)

    [/报价]

    在 DM38x 数据表中、我们有用于 PINCNTL263的0x48140C18地址(i2c0_SCL 引脚)。

    在 IPNC_RDK-3.9.0/Linux-kernel/arch/arm/boot/dts/dm38x-csk.dts 中、i2c0_scL 引脚有0x418、但在 kernel/arch/arm/boot/dts/ti81xx.dtsi 文件中、我们有:

    ti81xx_pincntl:pinmux@800{
                   兼容="pinctrl-single";
                   reg =<0x800 0x438>;
                   #address-cells =<1>;
                   #size-cells =<0>;
                   pinctrl-single、寄存器宽度=<32>;
                   pinctrl-single、function-mask =<0x300ff>;
                };

    因此、完整地址为0x48140000 + 0x800 + 0x418 = 0x48140C18。

    总之、有关 i2c0 pinmux 的器件树代码正确、无需更改。


    此致、
    帕维尔