| From 2ac7707447b66561ee254a65db7a8ae3dd24425a Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 7 Apr 2022 20:11:32 +1000 |
| Subject: macintosh/via-pmu: Fix build failure when CONFIG_INPUT is disabled |
| |
| From: Finn Thain <fthain@linux-m68k.org> |
| |
| [ Upstream commit 86ce436e30d86327c9f5260f718104ae7b21f506 ] |
| |
| drivers/macintosh/via-pmu-event.o: In function `via_pmu_event': |
| via-pmu-event.c:(.text+0x44): undefined reference to `input_event' |
| via-pmu-event.c:(.text+0x68): undefined reference to `input_event' |
| via-pmu-event.c:(.text+0x94): undefined reference to `input_event' |
| via-pmu-event.c:(.text+0xb8): undefined reference to `input_event' |
| drivers/macintosh/via-pmu-event.o: In function `via_pmu_event_init': |
| via-pmu-event.c:(.init.text+0x20): undefined reference to `input_allocate_device' |
| via-pmu-event.c:(.init.text+0xc4): undefined reference to `input_register_device' |
| via-pmu-event.c:(.init.text+0xd4): undefined reference to `input_free_device' |
| make[1]: *** [Makefile:1155: vmlinux] Error 1 |
| make: *** [Makefile:350: __build_one_by_one] Error 2 |
| |
| Don't call into the input subsystem unless CONFIG_INPUT is built-in. |
| |
| Reported-by: kernel test robot <lkp@intel.com> |
| Signed-off-by: Finn Thain <fthain@linux-m68k.org> |
| Tested-by: Randy Dunlap <rdunlap@infradead.org> |
| Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> |
| Acked-by: Randy Dunlap <rdunlap@infradead.org> |
| Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> |
| Link: https://lore.kernel.org/r/5edbe76ce68227f71e09af4614cc4c1bd61c7ec8.1649326292.git.fthain@linux-m68k.org |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/macintosh/Kconfig | 4 ++++ |
| drivers/macintosh/Makefile | 3 ++- |
| drivers/macintosh/via-pmu.c | 2 +- |
| 3 files changed, 7 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/macintosh/Kconfig b/drivers/macintosh/Kconfig |
| index d28690f6e262..9e226e143473 100644 |
| --- a/drivers/macintosh/Kconfig |
| +++ b/drivers/macintosh/Kconfig |
| @@ -87,6 +87,10 @@ config ADB_PMU |
| this device; you should do so if your machine is one of those |
| mentioned above. |
| |
| +config ADB_PMU_EVENT |
| + def_bool y |
| + depends on ADB_PMU && INPUT=y |
| + |
| config ADB_PMU_LED |
| bool "Support for the Power/iBook front LED" |
| depends on ADB_PMU |
| diff --git a/drivers/macintosh/Makefile b/drivers/macintosh/Makefile |
| index 383ba920085b..8513c8aa2faf 100644 |
| --- a/drivers/macintosh/Makefile |
| +++ b/drivers/macintosh/Makefile |
| @@ -11,7 +11,8 @@ obj-$(CONFIG_MAC_EMUMOUSEBTN) += mac_hid.o |
| obj-$(CONFIG_INPUT_ADBHID) += adbhid.o |
| obj-$(CONFIG_ANSLCD) += ans-lcd.o |
| |
| -obj-$(CONFIG_ADB_PMU) += via-pmu.o via-pmu-event.o |
| +obj-$(CONFIG_ADB_PMU) += via-pmu.o |
| +obj-$(CONFIG_ADB_PMU_EVENT) += via-pmu-event.o |
| obj-$(CONFIG_ADB_PMU_LED) += via-pmu-led.o |
| obj-$(CONFIG_PMAC_BACKLIGHT) += via-pmu-backlight.o |
| obj-$(CONFIG_ADB_CUDA) += via-cuda.o |
| diff --git a/drivers/macintosh/via-pmu.c b/drivers/macintosh/via-pmu.c |
| index 32c696799300..9bdb7d2055b1 100644 |
| --- a/drivers/macintosh/via-pmu.c |
| +++ b/drivers/macintosh/via-pmu.c |
| @@ -1439,7 +1439,7 @@ pmu_handle_data(unsigned char *data, int len) |
| pmu_pass_intr(data, len); |
| /* len == 6 is probably a bad check. But how do I |
| * know what PMU versions send what events here? */ |
| - if (len == 6) { |
| + if (IS_ENABLED(CONFIG_ADB_PMU_EVENT) && len == 6) { |
| via_pmu_event(PMU_EVT_POWER, !!(data[1]&8)); |
| via_pmu_event(PMU_EVT_LID, data[1]&1); |
| } |
| -- |
| 2.35.1 |
| |