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/XTCIEVMK2LX:用于 Linux-RT 3.02.00.05的 Processor SDK 中的 Keystone-k2hK-EVM.dts 和 DTB 文件之间存在差异

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/580915/linux-xtcievmk2lx-discrepancy-between-keystone-k2hk-evm-dts-and-the-dtb-file-in-processor-sdk-for-linux-rt-3-02-00-05

器件型号:XTCIEVMK2LX

工具/软件:Linux

当 Linux 在 EVM 板上启动时、会打印有关 CMA 和 DMA 存储器池的以下行:

[0.000000]保留内存:创建了0x000000081f800000的 CMA 内存池,大小为8 MIB
[0.000000]保留存储器:初始化节点 DSP_common_CMA_pool、兼容 id shared-dma-pool
[0.000000]保留存储器:已创建 DMA 存储器池、地址为0x0000000820000000、大小为32 mib
[0.000000]保留存储器:已初始化节点 DSP_RESERVE_mpm_area、兼容 id shared-dma-pool

转储/proc/device-tree/reserved-memory/dsp_reserved_mpm_area/reg 与内核启动日志中的32 MIB 大小一致

root@k2hk EVM:~# od -X /proc/device-tree/reserved-memory/dsp_reserved_mpm_area/reg
0000000 08000000 00000020 00000000 00000002
0000020

但这与内核树中的 DTS 文件不匹配(ti-processor-sdk-linux-rt-k2hk EVM-03.02.00.05/board-support/linux-rt-4.4.4.32.+gitAUTOINC+e26c84b0ac-ge26c84b0ac/arch/arm/boot/dts/keystone-k2evm-dts)、其内容如下:

DSP_common_mpm_area:DSP_reserved_mpm_area{
兼容="共享 dma-pool ";
REG =<0x00000008 0x20000000 0x00000000 0x20000000>
无地图;
状态="正常";
};

根据此定义、DSP_reerved_mpm_area 不应该是512MBytes?

此外、当我重新编译自己的内核时、我发现生成的 DTB 文件也显示为32 MB:

SWILLIAMS-LOCAL@SWILLIAMS-ThinkPad-T530:~/ti-processor-sdk-linux-rt-k2hk evm-03.02.00.05/board-support/linux-rt-4.4.4.3.32+gitAUTOINC+e26c84b0ac-ge26c84b0ac/tb/arm/boot/dts/boot_dts-p-git-dts -dtdtdT -gp_grep dtdtdts | dtdtdtdtdtdts -gt -dtdts -git_git_git_g
DSP_RESERVE_mpm_area{
兼容="共享 dma-pool ";
REG =<0x8 0x20000000 0x0 0x2000000>
无地图;
状态="正常";
};

请注意、当源文件显示为0x2000000 (再增加一个零)时、大小已截断为0x02000000

这里发生什么事了?

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

    我已将此内容转发给软件专家。 他们的反馈应发布在此处。

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

    您好、Steve、

    它在中被覆盖 evm-cmem.dtsi。

    &DSP_common_mpm_area{

           REG =<0x00000008 0x20000000 0x00000000 0x02000000>

    };

    我看到您的主题是 K2L、但您的内核提示是 k2hk。 您将需要使用特定 的 ProctSDK 来实现 K2L。 在 k2hk Linux ProctSDK 软件包中看不到 K2L-EVM-cmem.dtsi 文件。


    雷克斯

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

    我将承认、对于产品选择的内容存在困惑。 我的 EVM 出现在一个框中、显示器件型号为"TCIEVMK2X"、但这不是下拉菜单中的选择。 该板安装了 TCI6638K2K SoC。

    我使用的是 ti-processor-sdk-linux-rt-k2hk EVM-03.02.00.05和 board-support/prebuilt-images 目录中的常用内核。

    好的、所以顶层"keystone-k2hk .dts"包括(接近底部)"k2hk EVM-cmem.dtsi"和先前所做的 OVERRRIDES 设置。 我似乎需要一个 DTS 结构的复习课程。

    感谢您的澄清。
    Steve