thunderbolt, efi: Fix Kconfig dependencies harder
authorLukas Wunner <lukas@wunner.de>
Fri, 18 Nov 2016 08:22:59 +0000 (09:22 +0100)
committerIngo Molnar <mingo@kernel.org>
Fri, 18 Nov 2016 08:42:53 +0000 (09:42 +0100)
Since commit c9cc3aaa0281 ("thunderbolt: Use Device ROM retrieved from
EFI"), the THUNDERBOLT config option selects APPLE_PROPERTIES.

This broke the build for certain configs because APPLE_PROPERTIES is
located in a menu which depends on EFI:  If EFI is not enabled, the
prerequisites needed for APPLE_PROPERTIES are not selected:  Those are
EFI_DEV_PATH_PARSER and UCS2_STRING.  Additionally EFI_DEV_PATH_PARSER
won't compile unless ACPI is enabled.

Commit 79f9cd35b05e ("thunderbolt, efi: Fix Kconfig dependencies")
sought to fix the breakage by making THUNDERBOLT select APPLE_PROPERTIES
only if EFI_STUB is enabled.  On x86, EFI_STUB depends on EFI and EFI
depends on ACPI, so this fixed the build at least on this architecture.

However on arm and arm64, EFI_STUB does not depend on EFI, so once again
the prerequisites needed for APPLE_PROPERTIES are not selected.
Additionally ACPI is not available on arm and optional on arm64,
therefore EFI_DEV_PATH_PARSER won't compile.

Fix by selecting APPLE_PROPERTIES only on x86.

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Cc: Andreas Noever <andreas.noever@gmail.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-efi@vger.kernel.org
Link: http://lkml.kernel.org/r/5c241cf92eb1dc2421218c1204c6a9d22c9f847b.1479456179.git.lukas@wunner.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
drivers/thunderbolt/Kconfig

index bb0318ceaf93fc29b9af423708ad504f7b32d695..de5d27ec67d6fe85a7057c21e1430ccf30782ca4 100644 (file)
@@ -1,7 +1,7 @@
 menuconfig THUNDERBOLT
        tristate "Thunderbolt support for Apple devices"
        depends on PCI
-       select APPLE_PROPERTIES if EFI_STUB
+       select APPLE_PROPERTIES if EFI_STUB && X86
        select CRC32
        help
          Cactus Ridge Thunderbolt Controller driver