A few months back I was doing a test build for "defconfig-like" COTS hardware and happened to notice some pmc-atom stuff being built. Fine, I thought - the defconfig isn't minimal - we all know that - what Kconfig do I use to turn that off? Well, imagine my surprise when I found out you couldn't turn it [Atom Power Management Controller] code off! Normally we all agree to not use "default y" unless unavoidable, but somehow this was added as "def_bool y" which is even worse ; you can see the Kconfig setting but there is *no* way you can turn it off. After investigating, I found no reason why the atom code couldn't be opt-out with just minor changes that the original addition overlooked. And so this series addreses that. I tried to be sensitive to not break any existing configs in the process, but the defconfig will now intentionally be different and exclude this atom specific code. Using a defconfig on today's linux-next, here is the delta summary: $ ./scripts/bloat-o-meter -c ../pmc-atom-pre/vmlinux ../pmc-atom-post/vmlinux|grep add/remove add/remove: 0/410 grow/shrink: 0/7 up/down: 0/-47659 (-47659) add/remove: 0/105 grow/shrink: 0/1 up/down: 0/-6848 (-6848) add/remove: 0/56 grow/shrink: 0/1 up/down: 0/-10155 (-10155) $ ./scripts/bloat-o-meter -c ../pmc-atom-pre/vmlinux ../pmc-atom-post/vmlinux|grep Total Total: Before=13626994, After=13579335, chg -0.35% Total: Before=3572137, After=3565289, chg -0.19% Total: Before=1235335, After=1225180, chg -0.82% It is hard to reclaim anything against the inevitable growth in footprint, so I'd say we should be glad to take whatever we can. Boot tested defconfig on today's linux-next on older non-atom COTS. Paul. Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Cc: Aubrey Li <aubrey.li@xxxxxxxxxxxxxxx> Cc: Hans de Goede <hdegoede@xxxxxxxxxx> Cc: Len Brown <lenb@xxxxxxxxxx> Cc: linux-acpi@xxxxxxxxxxxxxxx Cc: Mark Gross <markgross@xxxxxxxxxx> Cc: platform-driver-x86@xxxxxxxxxxxxxxx Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx> --- Paul Gortmaker (4): platform/x86: pmc_atom: remove unused pmc_atom_write() ACPI: LPSS: make the Kconfig dependency on PMC_ATOM explicit platform/x86: pmc_atom: dont export pmc_atom_read - no modular users platform/x86: pmc_atom: make the PMC driver actually unselectable arch/x86/Kconfig | 1 + drivers/platform/x86/Kconfig | 11 ++++++++--- drivers/platform/x86/pmc_atom.c | 13 ------------- include/linux/platform_data/x86/pmc_atom.h | 1 - 4 files changed, 9 insertions(+), 17 deletions(-) -- 2.17.1