ARM: S3C24XX: convert s3c2440 and s3c2442 to common clock framework
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-s3c24xx / Kconfig
index abf9179c9d03a1b7a62e645a08853e1da65f86e9..56ce1c6a283c851d53598bdc5a5d86abf0a08a16 100644 (file)
@@ -18,6 +18,18 @@ config PLAT_S3C24XX
        help
          Base platform code for any Samsung S3C24XX device
 
+config S3C2410_COMMON_CLK
+       bool
+       help
+         Build the s3c2410 clock driver based on the common clock framework.
+
+config S3C2410_COMMON_DCLK
+       bool
+       select REGMAP_MMIO
+       help
+         Temporary symbol to build the dclk driver based on the common clock
+         framework.
+
 menu "SAMSUNG S3C24XX SoCs Support"
 
 comment "S3C24XX SoCs"
@@ -25,6 +37,7 @@ comment "S3C24XX SoCs"
 config CPU_S3C2410
        bool "SAMSUNG S3C2410"
        default y
+       depends on SAMSUNG_CLOCK
        select CPU_ARM920T
        select CPU_LLSERIAL_S3C2410
        select S3C2410_CLOCK
@@ -38,8 +51,10 @@ config CPU_S3C2410
 
 config CPU_S3C2412
        bool "SAMSUNG S3C2412"
+       select COMMON_CLK
        select CPU_ARM926T
        select CPU_LLSERIAL_S3C2440
+       select S3C2412_COMMON_CLK
        select S3C2412_DMA if S3C24XX_DMA
        select S3C2412_PM if PM
        help
@@ -47,20 +62,21 @@ config CPU_S3C2412
 
 config CPU_S3C2416
        bool "SAMSUNG S3C2416/S3C2450"
+       select COMMON_CLK
        select CPU_ARM926T
        select CPU_LLSERIAL_S3C2440
        select S3C2416_PM if PM
-       select S3C2443_COMMON
+       select S3C2443_COMMON_CLK
        select S3C2443_DMA if S3C24XX_DMA
-       select SAMSUNG_CLKSRC
        help
          Support for the S3C2416 SoC from the S3C24XX line
 
 config CPU_S3C2440
        bool "SAMSUNG S3C2440"
+       select COMMON_CLK
        select CPU_ARM920T
        select CPU_LLSERIAL_S3C2440
-       select S3C2410_CLOCK
+       select S3C2410_COMMON_CLK
        select S3C2410_PM if PM
        select S3C2440_DMA if S3C24XX_DMA
        help
@@ -68,9 +84,10 @@ config CPU_S3C2440
 
 config CPU_S3C2442
        bool "SAMSUNG S3C2442"
+       select COMMON_CLK
        select CPU_ARM920T
        select CPU_LLSERIAL_S3C2440
-       select S3C2410_CLOCK
+       select S3C2410_COMMON_CLK
        select S3C2410_DMA if S3C24XX_DMA
        select S3C2410_PM if PM
        help
@@ -83,11 +100,11 @@ config CPU_S3C244X
 
 config CPU_S3C2443
        bool "SAMSUNG S3C2443"
+       select COMMON_CLK
        select CPU_ARM920T
        select CPU_LLSERIAL_S3C2440
-       select S3C2443_COMMON
+       select S3C2443_COMMON_CLK
        select S3C2443_DMA if S3C24XX_DMA
-       select SAMSUNG_CLKSRC
        help
          Support for the S3C2443 SoC from the S3C24XX line
 
@@ -258,8 +275,9 @@ config ARCH_BAST
        bool "Simtec Electronics BAST (EB2410ITX)"
        select ISA
        select MACH_BAST_IDE
+       select S3C2410_COMMON_DCLK if COMMON_CLK
        select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ
-       select S3C24XX_DCLK
+       select S3C24XX_DCLK if SAMSUNG_CLOCK
        select S3C24XX_SIMTEC_NOR
        select S3C24XX_SIMTEC_PM if PM
        select S3C24XX_SIMTEC_USB
@@ -340,7 +358,8 @@ config MACH_TCT_HAMMER
 config MACH_VR1000
        bool "Thorcom VR1000"
        select MACH_BAST_IDE
-       select S3C24XX_DCLK
+       select S3C2410_COMMON_DCLK if COMMON_CLK
+       select S3C24XX_DCLK if SAMSUNG_CLOCK
        select S3C24XX_SIMTEC_NOR
        select S3C24XX_SIMTEC_PM if PM
        select S3C24XX_SIMTEC_USB
@@ -359,6 +378,11 @@ config S3C2412_PM_SLEEP
 
 if CPU_S3C2412
 
+config S3C2412_COMMON_CLK
+       bool
+       help
+         Build the s3c2412 clock driver based on the common clock framework.
+
 config CPU_S3C2412_ONLY
        bool
        depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \
@@ -519,8 +543,9 @@ comment "S3C2440 Boards"
 config MACH_ANUBIS
        bool "Simtec Electronics ANUBIS"
        select HAVE_PATA_PLATFORM
+       select S3C2410_COMMON_DCLK if COMMON_CLK
        select S3C2440_XTAL_12000000
-       select S3C24XX_DCLK
+       select S3C24XX_DCLK if SAMSUNG_CLOCK
        select S3C24XX_SIMTEC_PM if PM
        select S3C_DEV_USB_HOST
        help
@@ -558,9 +583,10 @@ config MACH_NEXCODER_2440
 
 config MACH_OSIRIS
        bool "Simtec IM2440D20 (OSIRIS) module"
+       select S3C2410_COMMON_DCLK if COMMON_CLK
        select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
        select S3C2440_XTAL_12000000
-       select S3C24XX_DCLK
+       select S3C24XX_DCLK if SAMSUNG_CLOCK
        select S3C24XX_SIMTEC_PM if PM
        select S3C_DEV_NAND
        select S3C_DEV_USB_HOST
@@ -629,9 +655,10 @@ config MACH_RX1950
        bool "HP iPAQ rx1950"
        select I2C
        select PM_H1940 if PM
+       select S3C2410_COMMON_DCLK if COMMON_CLK
        select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
        select S3C2440_XTAL_16934400
-       select S3C24XX_DCLK
+       select S3C24XX_DCLK if SAMSUNG_CLOCK
        select S3C24XX_PWM
        select S3C_DEV_NAND
        help
@@ -641,12 +668,6 @@ endif      # CPU_S3C2442
 
 if CPU_S3C2443 || CPU_S3C2416
 
-config S3C2443_COMMON
-       bool
-       help
-         Common code for the S3C2443 and similar processors, which includes
-         the S3C2416 and S3C2450.
-
 config S3C2443_COMMON_CLK
        bool
        help