2

我正在尝试自己构建自定义 ROM。我掌握了内核源代码、android 代码 (LineageOS)、设备树和供应商文件。我做了一个mka bacon -j8并且收到了这个错误:

In file included from /home/fury/android/lineage/kernel/xiaomi/platina/arch/arm64/kernel/perf_trace_counters.c:16:0:
/home/fury/android/lineage/kernel/xiaomi/platina/include/trace/events/sched.h:875:2: error: #error "Unsupported NR_CPUS for lb tracepoint."
 #error "Unsupported NR_CPUS for lb tracepoint."

我可以看到内核参数 NR_CPUS 在某处被设置为不受支持的值。这可以设置在哪里?

KConfig NR_CPUS 部分:

config NR_CPUS
        int "Maximum number of CPUs (2-4096)"
        range 2 4096
        # These have to remain sorted largest to smallest
        default "64"
4

1 回答 1

1

为了回答这个问题,内核参数是在配置文件中设置的

kernel/<vendor>/<device>/arch/arm64/configs/ 

文件夹。

在我的例子中,参数是在platina_user_defconfig上述文件夹中的文件中设置的,然后这个文件BoardConfig.mk名将在设备树中的文件中指定:

$ cat device/xiaomi/platina/BoardConfig.mk | grep TARGET_KERNEL_CONFIG
TARGET_KERNEL_CONFIG := platina_user_defconfig

我将错误的文件名指定为TARGET_KERNEL_CONFIG,因此出现错误。

于 2019-09-01T14:47:27.517 回答