[PATCH v2 06/13] ARM: samsung: remove HAVE_S3C2410_WATCHDOG and use direct dependencies
Guenter Roeck
linux at roeck-us.net
Mon Aug 17 14:02:01 EDT 2020
On 8/17/20 9:57 AM, Krzysztof Kozlowski wrote:
> On Tue, Aug 04, 2020 at 09:26:47PM +0200, Krzysztof Kozlowski wrote:
>> A separate Kconfig option HAVE_S3C2410_WATCHDOG for Samsung SoCs is not
>> really needed and the s3c24xx watchdog driver can depend on Samsung ARM
>> architectures instead.
>>
>> The "HAVE_xxx_WATCHDOG" pattern of dependency is not popular and Samsung
>> platforms are here exceptions. All others just depend on
>> CONFIG_ARCH_xxx.
>>
>> This makes the code slightly smaller without any change in
>> functionality.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzk at kernel.org>
>>
>> ---
>>
>> Changes since v1:
>> 1. Re-add the dependency on architectures to keep same functionality.
>
> Hi Guenter, Tomasz,
>
> Does such removal of HAVE_S3C2410_WATCHDOG makes sense for you?
>
Umm ... answering the question, no, it doesn't make sense to me. If I were
to immediately change all code under my "jurisdiction" whenever something
runs out of favor, I'd do nothing else, and in this case the only real
difference I can see is that the code will be more difficult to maintain
going forward.
Having said that, I don't really care one way or another as long as the
change does not result in compile failures for other architectures/platforms.
With that in mind, feel free to add
Acked-by: Guenter Roeck <linux at roeck-us.net>
to the patch.
Thanks,
Guenter
> Best regards,
> Krzysztof
>
>
>> ---
>> arch/arm/Kconfig | 1 -
>> arch/arm/mach-exynos/Kconfig | 1 -
>> arch/arm/mach-s3c64xx/Kconfig | 2 --
>> arch/arm/mach-s5pv210/Kconfig | 1 -
>> arch/arm64/Kconfig.platforms | 1 -
>> drivers/watchdog/Kconfig | 10 ++--------
>> 6 files changed, 2 insertions(+), 14 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 7564f293f107..fe95777af653 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -504,7 +504,6 @@ config ARCH_S3C24XX
>> select GPIOLIB
>> select GENERIC_IRQ_MULTI_HANDLER
>> select HAVE_S3C2410_I2C if I2C
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select HAVE_S3C_RTC if RTC_CLASS
>> select NEED_MACH_IO_H
>> select SAMSUNG_ATAGS
>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>> index f185cd3d4c62..d2d249706ebb 100644
>> --- a/arch/arm/mach-exynos/Kconfig
>> +++ b/arch/arm/mach-exynos/Kconfig
>> @@ -24,7 +24,6 @@ menuconfig ARCH_EXYNOS
>> select HAVE_ARM_ARCH_TIMER if ARCH_EXYNOS5
>> select HAVE_ARM_SCU if SMP
>> select HAVE_S3C2410_I2C if I2C
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select HAVE_S3C_RTC if RTC_CLASS
>> select PINCTRL
>> select PINCTRL_EXYNOS
>> diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
>> index ac3e3563487f..e208c2b48853 100644
>> --- a/arch/arm/mach-s3c64xx/Kconfig
>> +++ b/arch/arm/mach-s3c64xx/Kconfig
>> @@ -13,7 +13,6 @@ menuconfig ARCH_S3C64XX
>> select GPIO_SAMSUNG if ATAGS
>> select GPIOLIB
>> select HAVE_S3C2410_I2C if I2C
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select HAVE_TCM
>> select PLAT_SAMSUNG
>> select PM_GENERIC_DOMAINS if PM
>> @@ -165,7 +164,6 @@ config MACH_SMDK6410
>> bool "SMDK6410"
>> depends on ATAGS
>> select CPU_S3C6410
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select S3C64XX_SETUP_FB_24BPP
>> select S3C64XX_SETUP_I2C1
>> select S3C64XX_SETUP_IDE
>> diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig
>> index 03984a791879..b3db1191e437 100644
>> --- a/arch/arm/mach-s5pv210/Kconfig
>> +++ b/arch/arm/mach-s5pv210/Kconfig
>> @@ -14,7 +14,6 @@ config ARCH_S5PV210
>> select COMMON_CLK_SAMSUNG
>> select GPIOLIB
>> select HAVE_S3C2410_I2C if I2C
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select HAVE_S3C_RTC if RTC_CLASS
>> select PINCTRL
>> select PINCTRL_EXYNOS
>> diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
>> index cd58f8495c45..d235b27cf372 100644
>> --- a/arch/arm64/Kconfig.platforms
>> +++ b/arch/arm64/Kconfig.platforms
>> @@ -80,7 +80,6 @@ config ARCH_EXYNOS
>> select EXYNOS_CHIPID
>> select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
>> select EXYNOS_PMU
>> - select HAVE_S3C2410_WATCHDOG if WATCHDOG
>> select HAVE_S3C_RTC if RTC_CLASS
>> select PINCTRL
>> select PINCTRL_EXYNOS
>> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
>> index 4f4687c46d38..297af1c40643 100644
>> --- a/drivers/watchdog/Kconfig
>> +++ b/drivers/watchdog/Kconfig
>> @@ -478,16 +478,10 @@ config IXP4XX_WATCHDOG
>>
>> Say N if you are unsure.
>>
>> -config HAVE_S3C2410_WATCHDOG
>> - bool
>> - help
>> - This will include watchdog timer support for Samsung SoCs. If
>> - you want to include watchdog support for any machine, kindly
>> - select this in the respective mach-XXXX/Kconfig file.
>> -
>> config S3C2410_WATCHDOG
>> tristate "S3C2410 Watchdog"
>> - depends on HAVE_S3C2410_WATCHDOG || COMPILE_TEST
>> + depends on ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || \
>> + COMPILE_TEST
>> select WATCHDOG_CORE
>> select MFD_SYSCON if ARCH_EXYNOS
>> help
>> --
>> 2.17.1
>>
More information about the linux-arm-kernel
mailing list