soc: renesas: Rework Kconfig and Makefile logic
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 19 May 2017 08:35:10 +0000 (10:35 +0200)
committerSimon Horman <horms+renesas@verge.net.au>
Mon, 12 Jun 2017 09:31:07 +0000 (11:31 +0200)
commit8be381a131c29c4737aed44e7e5f90cb77bb4a7e
tree60853ecd9165ff9166a77d0a876e267074c09808
parent7b4ccb3c466f62bbf2f4dd5d6a143d945a6f3051
soc: renesas: Rework Kconfig and Makefile logic

The goals are to:
  - Allow precise control over and automatic selection of which
    (sub)drivers are used for which SoC,
  - Allow adding support for new SoCs easily,
  - Allow compile-testing of all (sub)drivers,
  - Keep driver selection logic in the subsystem-specific Kconfig,
    independent from the architecture-specific Kconfig (i.e. no "select"
    from arch/arm64/Kconfig.platforms), to avoid dependencies.

This is implemented by:
  - Introducing Kconfig symbols for all drivers and sub-drivers,
  - Introducing the Kconfig symbol SOC_RENESAS, which is enabled
    automatically when building for a Renesas ARM platform, and which
    enables all required drivers without interaction of the user, based
    on SoC-specific ARCH_* symbols,
  - Allowing the user to enable any Kconfig symbol manually if
    COMPILE_TEST is enabled,
  - Using the new Kconfig symbols instead of the ARCH_* symbols to
    control compilation in the Makefile,
  - Always entering drivers/soc/renesas/ during the build.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
drivers/soc/Kconfig
drivers/soc/Makefile
drivers/soc/renesas/Kconfig [new file with mode: 0644]
drivers/soc/renesas/Makefile
drivers/soc/renesas/rcar-sysc.c
include/linux/soc/renesas/rcar-rst.h