我试图理解我在这里做错了什么。我的印象是,这make savedefconfig
将是将一个配置减少到(等效)最低限度的方法。
所以这是我的步骤,直接从 Debian 包中获取配置文件:
$ dpkg -S /boot/config-4.14.0-3-powerpc
linux-image-4.14.0-3-powerpc: /boot/config-4.14.0-3-powerpc
$ apt-cache policy linux-image-4.14.0-3-powerpc
linux-image-4.14.0-3-powerpc:
Installed: 4.14.13-1
Candidate: 4.14.13-1
Version table:
*** 4.14.13-1 500
500 http://ftp.fr.debian.org/debian sid/main powerpc Packages
100 /var/lib/dpkg/status
将其复制到我的主机上:
$ scp macminig4:/boot/config-4.14.0-3-powerpc ./arch/powerpc/configs/my_defconfig
验证我想要使用的选项是否仍然存在:
$ grep CONFIG_SSB_B43_PCI_BRIDGE ./arch/powerpc/configs/my_defconfig
CONFIG_SSB_B43_PCI_BRIDGE=y
现在让我们更新它,因为它与 git v4.14 不完美同步:
$ git checkout v4.14
$ make ARCH=powerpc my_defconfig
$ diff -u .config ./arch/powerpc/configs/my_defconfig | diffstat
my_defconfig | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
所以发生了一些微小的变化,但没什么不好,至少我仍然可以看到我的选择:
$ grep CONFIG_SSB_B43_PCI_BRIDGE .config
CONFIG_SSB_B43_PCI_BRIDGE=y
现在让我们尝试一下 savedefconfig:
$ make ARCH=powerpc savedefconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/bin2c
HOSTCC scripts/kconfig/conf.o
SHIPPED scripts/kconfig/zconf.tab.c
SHIPPED scripts/kconfig/zconf.lex.c
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
scripts/kconfig/conf --savedefconfig=defconfig Kconfig
如果我现在检查我的选项现在永远丢失了:
$ grep CONFIG_SSB_B43_PCI_BRIDGE defconfig
-> nothing !
为什么有些选项消失了?有没有办法控制savedefconfig
保留某些选项?
答案1
事实证明,这只是一个糟糕的时机。 git/master(实际上是 4.15)受以下因素影响:
将旧笔记本电脑升级到4.15-rc9后,我发现eth0和wlan0接口消失了。事实证明,b43 和 b44 驱动程序需要 SSB_PCIHOST_POSSIBLE,它依赖于 PCI_DRIVERS_LEGACY,这是一个仅存在于 Mips 上的配置选项。