Re: Kconfig dangling references (BZ 216748)

Arnd Bergmann
2025-12-08T08:56:02Z

On Mon, Dec 8, 2025, at 03:04, Randy Dunlap wrote:
> from https://bugzilla.kernel.org/show_bug.cgi?id=216748
>
> The bugzilla entry includes a Perl script and a shell script.
> This is the edited result of running them (I removed some entries that
> were noise).
>
> I'll try to Cc: all of the relevant mailing lists or individuals.
>
>
> ARCH_HAS_HOLES_MEMORYMODEL ---
> arch/arm/mach-omap1/Kconfig:7: select ARCH_HAS_HOLES_MEMORYMODEL

My mistake, this was a botched rebase.

> ARM_ERRATA_794072 ---
> arch/arm/mach-npcm/Kconfig:33: select ARM_ERRATA_794072

This apparently never made it upstream because it was unreliable
https://lists.infradead.org/pipermail/linux-arm-kernel/2014-April/244343.html

> MACH_JZ4755 ---
> drivers/clk/ingenic/Kconfig:20: default MACH_JZ4755
> drivers/pinctrl/pinctrl-ingenic.c:158: IS_ENABLED(CONFIG_MACH_JZ4755)
> << ID_JZ4755 |
> drivers/pinctrl/pinctrl-ingenic.c:4616: .data =
> IF_ENABLED(CONFIG_MACH_JZ4755, &jz4755_chip_info)
>
> MACH_JZ4760 ---
> drivers/clk/ingenic/Kconfig:40: default MACH_JZ4760
> drivers/pinctrl/pinctrl-ingenic.c:159: IS_ENABLED(CONFIG_MACH_JZ4760)
> << ID_JZ4760 |
> drivers/pinctrl/pinctrl-ingenic.c:4620: .data =
> IF_ENABLED(CONFIG_MACH_JZ4760, &jz4760_chip_info)
> drivers/pinctrl/pinctrl-ingenic.c:4624: .data =
> IF_ENABLED(CONFIG_MACH_JZ4760, &jz4760_chip_info)
>
> MACH_STM32MP25 ---
> drivers/pinctrl/stm32/Kconfig:58: default MACH_STM32MP25 || (ARCH_STM32
> && ARM64)

This was likely intended for 32-bit kernels on 64-bit STM32MP25
chips, which we don't support. I think this can go.

> MIPS_BAIKAL_T1 ---
> drivers/ata/Kconfig:197: select MFD_SYSCON if (MIPS_BAIKAL_T1 ||
> COMPILE_TEST)
> drivers/bus/Kconfig:43: depends on MIPS_BAIKAL_T1 || COMPILE_TEST
> drivers/bus/Kconfig:58: depends on MIPS_BAIKAL_T1 || COMPILE_TEST
> drivers/clk/baikal-t1/Kconfig:4: depends on (MIPS_BAIKAL_T1 && OF) ||

I don't think we'll merge the rest of Baikal, we should probably
remove the entire platform.

> PINCTRL_MILBEAUT ---
> arch/arm/mach-milbeaut/Kconfig:16: select PINCTRL_MILBEAUT

Same for Milbeaut

> USB_OHCI_SH ---
> arch/sh/Kconfig:334: select USB_OHCI_SH if USB_OHCI_HCD
> arch/sh/Kconfig:344: select USB_OHCI_SH if USB_OHCI_HCD
> arch/sh/Kconfig:429: select USB_OHCI_SH if USB_OHCI_HCD
> arch/sh/Kconfig:455: select USB_OHCI_SH if USB_OHCI_HCD
> arch/sh/configs/sh7757lcr_defconfig:61:CONFIG_USB_OHCI_SH=y

Should have been removed as part of 7518f0763ecd ("sh: convert
boards to use the OHCI platform driver")

> X86_P6_NOP ---
> arch/x86/Kconfig.cpufeatures:41: depends on X86_64 || X86_P6_NOP
> arch/x86/Makefile_32.cpu:48:ifneq ($(CONFIG_X86_P6_NOP),y)

I missed this in f388f60ca904 ("x86/cpu: Drop configuration options
for early 64-bit CPUs"). Both references can be removed, because
p6-nop was already disallowed for 32-bit CPUs at the time.

I don't know if any supported binutils still require -mtune=generic32

> XTENSA_PLATFORM_ESP32 ---
> drivers/tty/serial/Kconfig:1598: depends on XTENSA_PLATFORM_ESP32 ||
> (COMPILE_TEST && OF)
> drivers/tty/serial/Kconfig:1611: depends on XTENSA_PLATFORM_ESP32 ||
> (COMPILE_TEST && OF)

Max is still working on esp32 support as far as I know, it's just
slow progress, see
https://github.com/jcmvbkbc/linux-xtensa/commits/xtensa-6.16-esp32

Arnd