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.

[参考译文] TDA4VEN-Q1:DDR 内存更小

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1416076/tda4ven-q1-reduced-memory-for-ddr

器件型号:TDA4VEN-Q1

工具与软件:

您好、 专家、

电路板: J722SXH01

SDK: 10_00_00_08

我只想在 EVM 板上使用 RAM 的2 GiB、默认为8GiB 。 我进行了以下更改:

---a/ti-processor-sdk-linux-adas-j722s-evm-10_00_00_08/board-support/ti-u-boot-2024.04+git/arch/arm/dts/k3-j722s-evm.dts
++ b/ti-processor-sdk-linux-adas-j722s-evm-10_00_00_08/board-support/ti-u-boot-2024.04+git/arch/arm/dts/k3-j722s-evm.dts
@@-33、8 @@ 33、8 μ A

内存@8000000{
/* 8G RAM */
- reg =<0x00000000 0x80000000 0x00000000 0x80000000>
-<0x00000008 0x80000000 0x00000001 0x8000000000>;
+ reg =<0x00000000 0x80000000 0x00000000 0x80000000>;
+//<0x00000008 0x80000000 0x00000001 0x80000000>;
device_type ="存储器";
引导全部;
};

---a-processor-sdk-linux-adas-j722s-evm-10_00_00_08/board-support/ti-linux-kernel-6.6.6.6.32+git-ti/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
++ b/ti-processor-sdk-linux-adas-j722s-evm-10_00_00_08/board-support/ti-linux-kernel-6.6.6.6.32+git-ti/arch/arm64/boot/dts/ti/k3-j722s-evm.dts
@@-31、8 + 31、8 @@所选{

内存@8000000{
/* 8G RAM */
- reg =<0x00000000 0x80000000 0x00000000 0x80000000>
-<0x00000008 0x80000000 0x00000001 0x8000000000>;
+ reg =<0x00000000 0x80000000 0x00000000 0x80000000>;
+//<0x00000008 0x80000000 0x00000001 0x80000000>;
device_type ="存储器";
引导全部;
};

uBoot 已识别出2 GiB 但它卡在内核中、请告诉我是否需要更改任何其他内容?

e2e.ti.com/.../evm_5F00_kernel_5F00_hang.loge2e.ti.com/.../evm_5F00_start_5F00_ok.log

此致、

Bing

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

    您好!

    常见问题: https://e2e.ti.com/f/791/t/1224003

    默认为16GB。 常见问题解答展示了如何将其减小到4GB。 因此、可以按照类似的步骤将大小减小至2GB。

    谢谢!
    基尔西

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

    您好、Keerthy

    我要使用的 SDK 版本为10_00_00_08、EVM.c 中没有 dram_init_banksize 函数

    此致、

    Bing

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

    尊敬的 Bing:

    我所使用的 SDK 版本为10_00_00_08、evm 中没有 dram_init_banksize 函数。

    跳过该更改、那么就不再需要它了。

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    diff --git a/arch/arm/dts/k3-j721s2-ddr.dtsi b/arch/arm/dts/k3-j721s2-ddr.dtsi
    index 6a244fb7ac..7dabc2999b 100644
    --- a/arch/arm/dts/k3-j721s2-ddr.dtsi
    +++ b/arch/arm/dts/k3-j721s2-ddr.dtsi
    @@ -2230,6 +2230,7 @@
    };
    memorycontroller1: memorycontroller@29b0000 {
    + status = "disabled";
    compatible = "ti,j721s2-ddrss";
    reg = <0x0 0x029b0000 0x0 0x4000>,
    <0x0 0x0114000 0x0 0x100>;
    diff --git a/arch/arm/dts/k3-j721s2-som-p0.dtsi b/arch/arm/dts/k3-j721s2-som-p0.dtsi
    index f3080e948e..9e91110d90 100644
    --- a/arch/arm/dts/k3-j721s2-som-p0.dtsi
    +++ b/arch/arm/dts/k3-j721s2-som-p0.dtsi
    @@ -13,9 +13,9 @@
    / {
    memory@80000000 {
    device_type = "memory";
    - /* 16 GB RAM */
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    以上情况就足够了。 如果有需要、请告诉我。

    -基尔西

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

    您好、Keerthy

    [quote userid="555908" url="~/support/processors-group/processors/f/processors-forum/1416076/tda4ven-q1-reduced-memory-for-ddr 板:J722SXH01  

    我正在使用 j722sx、并检查了所有关联的设备树、没有内存控制器节点。

    此致、

    Bing

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

    尊敬的 Bing:

    我懂了。 您是否可以单独进行 U-Boot 更改并尝试使用默认内核 dtb 进行引导?

    -基尔西

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

    您好、Keerthy

    我单独更改了 uboot、它仍然执行相同的操作。

    此致、

    Bing

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

    好的。 我将重现该问题并与您联系。

    感谢您试用这些建议。

    -基尔西

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

    您好、Keerthy

    欢迎您,请随时关注我们,如果您有任何新的发展,谢谢!

    此致、

    Bing

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

    您好 Bing、

    我重复了这个问题。 即使使用4GB DDR、我也观察到了这个问题。 我的第一个怀疑是一些保留的存储器仍在访问
    在缩小的区域之外。 我会继续向您发布消息。

    -基尔西

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

    尊敬的 Bing:

    请使用下面的补丁:

    e2e.ti.com/.../0001_2D00_arm_2D00_mach_2D00_k3_2D00_j722s_2D00_am62p_2D00_Fixup_2D00_TF_2D00_A_2D00_OP_2D00_TEE_2D00_reserved_2D00_m.patch

    在 U-Boot 中应用上述补丁。

    同时修复 MMU:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    diff --git a/arch/arm/mach-k3/arm64-mmu.c b/arch/arm/mach-k3/arm64-mmu.c
    index 07edbde6..69ab06e9 100644
    --- a/arch/arm/mach-k3/arm64-mmu.c
    +++ b/arch/arm/mach-k3/arm64-mmu.c
    @@ -295,12 +295,14 @@ struct mm_region soc_mem_map[NR_MMU_REGIONS] = {
    .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
    PTE_BLOCK_INNER_SHARE
    }, {
    +#if 0
    .virt = 0x880000000UL,
    .phys = 0x880000000UL,
    .size = 0x80000000UL,
    .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
    PTE_BLOCK_INNER_SHARE
    }, {
    +#endif
    .virt = 0x500000000UL,
    .phys = 0x500000000UL,
    .size = 0x380000000UL,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    在引导分区 uEnv.txt 中:

    #dorprocboot=1
    #name_overlages=ti/k3-j722s-vision-apps.dtbo

    注释掉以上内容,因为默认 vision_apps 需要更大的 DDR 空间。

    这样、我就能解决您遇到的问题、但远程内核出现错误、导致在 Linux 命令提示符之前重置。

    -基尔西

    -基尔西

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

    您好、Keerthy

    是的、按照您的说明、我现在能够访问 Linux shell、但远程内核加载失败、如下所示:

    [ 11.123907] of:graph: no port node found in /bus@f0000/Dss@30220000/oldi-txs/oldi@1/ports.
    [ 11.126338] remoteproc remoteproc4:启动784000.r5f
    [ 11.140526] remoteproc remoteproc4:启动 FW 映像 j722s-main-r5f0_0-fw、大小1084320
    [ 11.149562] of:graph:no port node found in /bus@f0000/Dss@30220000/oldi-txs/oldi@1/ports.
    [ 11.152275] remoteproc remoteproc4:错误的 phdr da 0xa3ffec00 mem 0x1400
    [11.166166] remoteproc remoteproc4:无法加载程序段:-22.

    是否是因为设备树缺少 DSS@30220000节点? 如何解决这个问题、因为稍后我们的项目资源分配不会在内核上分配 DSS。

    此致、

    Bing

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

    尊敬的 Bing:

    当前也禁用了 vision_apps。 我的第一个问题是该工程的最终用例是什么?
    我认为您需要 vision_apps 功能正确吗?

    -基尔西

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

    您好、Keerthy

    我需要 vision_apps、但 DSS 资源将在 main-r5f0_0中使用。

    此致、

    Bing

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

    尊敬的 Bing:

    好的。 我将让我们的 vision_apps 专家评论如何更改适合于2GB 的存储器映射。
    需要1-2天时间进行分析和恢复。 分析之后、我们将在此处提供反馈。

    -基尔西

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

    您好!

    您是否也将 vision_apps 存储器映射减少到2GB?

    请参阅以下文档对相同内容进行修改。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j722s/10_00_00_05/exports/docs/psdk_rtos/docs/user_guide/developer_notes_memory_map.html

    此致、

    Nikhil Dasan