
On Fri, 12 Apr 2019, Robert P. J. Day wrote:
rather than go to the trouble of whipping up a wiki page, i can present this in a short post to the list. here's the list of what my script identified as "badref selects" -- those identifiers for which there is a Kconfig line of the form:
select X
where there is no corresponding:
config X
the entire list:
BOOTM_LINUX CONFIG_EHCI_HCD_INIT_AFTER_RESET CONFIG_MPC8xx_WATCHDOG CPU_ARM926EJS1 CRC32 GPIO MSCC_BITBANG_SPI_GPIO SPL_DISABLE_OF_CONTROL VEXPRESS_CLK
... snip ...
between a couple patches i sent in and the more extensive submissions from chris packham, most of this list has been resolved except for three of them. a couple are isolated but i'm not sure what to do with them:
$ git grep MSCC_BITBANG_SPI_GPIO arch/mips/mach-mscc/Kconfig: select MSCC_BITBANG_SPI_GPIO $
and:
$ git grep VEXPRESS_CLK drivers/video/Kconfig: select VEXPRESS_CLK $
but it's BOOTM_LINUX that i'm unsure of:
$ git grep BOOTM_LINUX common/bootm_os.c:#ifdef CONFIG_BOOTM_LINUX include/config_defaults.h:#define CONFIG_BOOTM_LINUX 1 include/configs/xilinx_versal_mini.h:#undef CONFIG_BOOTM_LINUX include/configs/xilinx_zynqmp_mini.h:#undef CONFIG_BOOTM_LINUX include/configs/zynq_cse.h:#undef CONFIG_BOOTM_LINUX lib/optee/Kconfig: select BOOTM_LINUX scripts/config_whitelist.txt:CONFIG_BOOTM_LINUX $
it's clear that CONFIG_BOOTM_LINUX is simply defined as a hard-coded macro in some header files, so what does it then mean if a Kconfig file selects it? i've never checked what the Kbuild infrastructure does in a case like that -- would it actually define CONFIG_BOOTM_LINUX, despite the fact that there is no associated BOOTM_LINUX Kbuild option? in any event, it's definitely messy.
anyway, those are the remnants of "select" directives referring to non-existent Kbuild options.
rday