On Wed, Oct 19, 2022, at 23:13, Robert Jarzmik wrote:
Arnd Bergmann arnd@kernel.org writes:
From: Arnd Bergmann arnd@arndb.de
...zip...
A good number of drivers become impossible to select after this, so each of these also get dropped. I'm including the driver patches in the series here and can either merge them through the soc tree, or they can get picked up by the individual subsystem maintainers. Since both the platform and the drivers get removed, the order should not matter.
This part is a bit ... bothering. I at least identified these :
delete mode 100644 drivers/input/touchscreen/wm9705.c delete mode 100644 drivers/input/touchscreen/wm9712.c delete mode 100644 drivers/input/touchscreen/wm9713.c delete mode 100644 drivers/input/touchscreen/wm97xx-core.c delete mode 100644 drivers/mfd/wm97xx-core.c delete mode 100644 sound/ac97/bus.c delete mode 100644 sound/ac97/codec.c delete mode 100644 sound/ac97/snd_ac97_compat.c
For the existing platforms working with devicetree support (mioa701 for example), the wm9713 was properly used, providing both sound support and input touchscreen. So was the a97 part, providing a framework to make the wm9713 work.
So I'm wondering how the choice to chop these drivers was done, and it is necessary to remove them. If so, maybe pxa support in the kernel should be removed all together, as people playing with it loose part of the working DT platforms they had.
If the files are used for DT based machines, then they should definitely stay, the intention of my series was to only remove known dead code.
What I did was to remove CONFIG_UNUSED_BOARD_FILES and then recursively trim out all code that could be compiled in before but not after this change, assuming that this would be safe.
What I see here is that AC97_BUS_NEW and SND_PXA2XX_SOC_AC97 are selected by eight legacy board files (tosa, e740, e750, e800, em_x270, palm27x, zylonite and mioa701), but no DT based machine, so without CONFIG_UNUSED_BOARD_FILES, the entire AC97_BUS_NEW infrastructure and all drivers depending on this became dead code.
Unfortunately I ran into problems sending out the rest of the series after sending the cover letter, so the explanations I put in the individual patches were not here. See [1] for the actual series.
Since it looks like I'll have to redo half of the PXA patches after leaving AC97_BUS_NEW in, I won't post the full version first.
Any idea where I went wrong here? Did I make a mistake in following the Kconfig dependencies, or are some parts of this incorrectly annotated?
Arnd
[1] https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/log/?h=boardfile...