【发布时间】:2021-03-25 17:29:12
【问题描述】:
我从我的 x86(docker 上的 ubuntu 容器)交叉编译了一个 RPI3 32 位内核,当我尝试禁用某些变量时(在我的情况下,例如 L2 缓存或分支预测)我找不到任何东西(通过搜索)。 RPI 本身 menuconfig 在“系统类型”中显示了这些设置,但该菜单甚至不存在。
我关注了the official RPI kernel build guide
sudo apt install crossbuild-essential-armhf
git clone --depth=1 https://github.com/raspberrypi/linux
export KERNEL=kernel7
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
make menuconfig
我期望找到的是:
CPU_ICACHE_DISABLE
CPU_DCACHE_DISABLE
禁用分支预测
更新:
对于更简单的 make 命令,我设置了一些环境变量
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
export MAKEFLAGS=j4
然后在运行make defconfig(默认配置基于'multi_v7_defconfig')时,生成的make menuconfig 比我预期的要多得多。
我还需要验证,现在正在构建。
【问题讨论】:
标签: linux raspberry-pi kernel raspberry-pi3