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:在 tci6638k2k/Linux 中仅运行一个 A15内核

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/564779/linux-only-one-a15-core-runing-in-tci6638k2k-linux

主题中讨论的其他器件:TCI6638K2K

工具/软件:Linux

我使用的是 tci6638K2K。 由于需要项目,我必须将 Linux 移植到0x6000 0000处运行。 Linux 有运行、但它只有 一个 ARM 内核运行。

启动内核消息显示:

为0xc05136a0-0xc05136f8设置静态标识映射

CPU1:无法联机

CPU2:无法联机

CPU3:无法联机

产生了1个 CPU

SMP:总共激活1个处理器(409.60 BogoMips);

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

    您好!

    这是哪个 TI SDK?  

    检查文件系统:
    CAT /proc/cpuinfo

    如果存在多个 cortex、请尝试:
    CD /sys/devices/system/cpu/cpuX
    root@am57xx-EVM:/sys/devices/system/cpu/cpuX echo 1 > online

    还要检查 arch/arm/configs 中的 defconfig 文件中是否正确设置了以下内容:
    CONFIG_FASH_SMP=y
    CONFIG_SMP=y
    CONFIG_SMP_ON_UP=y
    CONFIG_ARM_CPU_topology=y
    CONFIG_NR_CPU=8
    CONFIG_HOTPLUG_CPU=y

    如果出现以下情况、请检查:
    /*安装程序已配置要激活的最大 CPU 数量*/
    unsigned int setup_max_CPU= NR_CPU;
    export_symbol (setup_max_CPU);
    内核/SMP.C.中设置 您也可以尝试在此处对 setup_max_CPU 进行硬编码。

    此致、
    Yordan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    "cat /proc/cpuinfo 只显示一个 CPU。
    和.config:
    CONFIG_FASH_SMP=y
    CONFIG_SMP=y
    CONFIG_SMP_ON_UP=y
    CONFIG_ARM_CPU_topology=y
    CONFIG_NR_CPU=4
    CONFIG_HOTPLUG_CPU=y

    这正是您的优势:
    unsigned int setup_max_CPU= NR_CPU;
    export_symbol (setup_max_CPU);

    Linux 在 EVM 中默认以0x8000 0000运行时显示4个 CPU,在以0x6000 0000运行时显示1个 CPU。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    在0x60000000处运行意味着什么? 您是否在该地址加载内核? 您在内核中确切修改了哪些内容?

    不建议这样做... 请参阅您的 u-boot (include/configs/k2hk_evm.h (在您的情况下可能是 k2k_evm.h))。 SDRAM 映射为:
    #define CONFIG_SYS_SDRAM_BASE 0x80000000

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

    我的内核在0x6000 0000处运行、不同于 EVM 板在0x8000 0000处运行。  我的内核可以进入 rootfs、但只有 ARM 内核正在运行。

    我真想这样做:

    #define CONFIG_SYS_SDRAM_BASE 0x8000000。

    0x6000 0000地址为 DDR3B、  不支持 IO 一致性。 我不知道它是否不支持 SMP。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    还可以!
    我发现了这个。 地址更改时出错了!
    非常感谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    感谢您分享您的发现。

    此致、
    Yordan
x 出现错误。请重试或与管理员联系。