2019-04-01 03:25:27

by Daniel Lezcano

[permalink] [raw]
Subject: [PATCH] thermal/drivers/core: Remove the module Kconfig's option

The module support for the thermal subsystem does have a little sense:
- some subsystems relying on it are not modules, thus forcing the
framework to be compiled in
- it is compiled in for almost every configs, the remaining ones
are a few platforms where I don't see why we can not switch the thermal
to 'y'. The drivers can stay in tristate.
- platforms need the thermal to be ready as soon as possible at boot time
in order to mitigate

Usually the subsystems framework are compiled-in and the plugs are as module.

Remove the module option. The removal of the module related dead code will
come after this patch gets in or is acked.

Signed-off-by: Daniel Lezcano <[email protected]>
---
arch/arm/configs/mini2440_defconfig | 2 +-
arch/arm/configs/pxa_defconfig | 2 +-
arch/mips/configs/ip22_defconfig | 2 +-
arch/mips/configs/ip27_defconfig | 2 +-
arch/unicore32/configs/unicore32_defconfig | 2 +-
drivers/thermal/Kconfig | 4 ++--
6 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/arm/configs/mini2440_defconfig b/arch/arm/configs/mini2440_defconfig
index d95a8059d30b..0cf1c120c4bb 100644
--- a/arch/arm/configs/mini2440_defconfig
+++ b/arch/arm/configs/mini2440_defconfig
@@ -152,7 +152,7 @@ CONFIG_SPI_S3C24XX=y
CONFIG_SPI_SPIDEV=y
CONFIG_GPIO_SYSFS=y
CONFIG_SENSORS_LM75=y
-CONFIG_THERMAL=m
+CONFIG_THERMAL=y
CONFIG_WATCHDOG=y
CONFIG_S3C2410_WATCHDOG=y
CONFIG_FB=y
diff --git a/arch/arm/configs/pxa_defconfig b/arch/arm/configs/pxa_defconfig
index d4654755b09c..d4f9dda3a52f 100644
--- a/arch/arm/configs/pxa_defconfig
+++ b/arch/arm/configs/pxa_defconfig
@@ -387,7 +387,7 @@ CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_NTC_THERMISTOR=m
-CONFIG_THERMAL=m
+CONFIG_THERMAL=y
CONFIG_WATCHDOG=y
CONFIG_XILINX_WATCHDOG=m
CONFIG_SA1100_WATCHDOG=m
diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig
index ff40fbc2f439..21a1168ae301 100644
--- a/arch/mips/configs/ip22_defconfig
+++ b/arch/mips/configs/ip22_defconfig
@@ -228,7 +228,7 @@ CONFIG_SERIAL_IP22_ZILOG=m
# CONFIG_HW_RANDOM is not set
CONFIG_RAW_DRIVER=m
# CONFIG_HWMON is not set
-CONFIG_THERMAL=m
+CONFIG_THERMAL=y
CONFIG_WATCHDOG=y
CONFIG_INDYDOG=m
# CONFIG_VGA_CONSOLE is not set
diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig
index 81c47e18131b..54db5dedf776 100644
--- a/arch/mips/configs/ip27_defconfig
+++ b/arch/mips/configs/ip27_defconfig
@@ -271,7 +271,7 @@ CONFIG_I2C_PARPORT_LIGHT=m
CONFIG_I2C_TAOS_EVM=m
CONFIG_I2C_STUB=m
# CONFIG_HWMON is not set
-CONFIG_THERMAL=m
+CONFIG_THERMAL=y
CONFIG_MFD_PCF50633=m
CONFIG_PCF50633_ADC=m
CONFIG_PCF50633_GPIO=m
diff --git a/arch/unicore32/configs/unicore32_defconfig b/arch/unicore32/configs/unicore32_defconfig
index aebd01fc28e5..360cc9abcdb0 100644
--- a/arch/unicore32/configs/unicore32_defconfig
+++ b/arch/unicore32/configs/unicore32_defconfig
@@ -119,7 +119,7 @@ CONFIG_I2C_PUV3=y
# Hardware Monitoring support
#CONFIG_SENSORS_LM75=m
# Generic Thermal sysfs driver
-#CONFIG_THERMAL=m
+#CONFIG_THERMAL=y
#CONFIG_THERMAL_HWMON=y

# Multimedia support
diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index 653aa27a25a4..ccf5b9408d7a 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -3,7 +3,7 @@
#

menuconfig THERMAL
- tristate "Generic Thermal sysfs driver"
+ bool "Generic Thermal sysfs driver"
help
Generic Thermal Sysfs driver offers a generic mechanism for
thermal management. Usually it's made up of one or more thermal
@@ -11,7 +11,7 @@ menuconfig THERMAL
Each thermal zone contains its own temperature, trip points,
cooling devices.
All platforms with ACPI thermal support can use this driver.
- If you want this support, you should say Y or M here.
+ If you want this support, you should say Y here.

if THERMAL

--
2.17.1



2019-04-01 04:11:26

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH] thermal/drivers/core: Remove the module Kconfig's option

On Sun, Mar 31, 2019 at 8:24 PM Daniel Lezcano
<[email protected]> wrote:
>
> The module support for the thermal subsystem does have a little sense:

Do you mean "makes little sense" ?

> - some subsystems relying on it are not modules, thus forcing the
> framework to be compiled in
> - it is compiled in for almost every configs, the remaining ones
> are a few platforms where I don't see why we can not switch the thermal
> to 'y'. The drivers can stay in tristate.
> - platforms need the thermal to be ready as soon as possible at boot time
> in order to mitigate
>
> Usually the subsystems framework are compiled-in and the plugs are as module.
>
> Remove the module option. The removal of the module related dead code will
> come after this patch gets in or is acked.
>
> Signed-off-by: Daniel Lezcano <[email protected]>

Sounds like a good idea.

Acked-by: Guenter Roeck <[email protected]>

Many dependencies such as the following can probably be simplified or
removed after this patch has been accepted.

depends on THERMAL=y
depends on THERMAL || THERMAL=n
depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
depends on !(MLXSW_CORE=y && THERMAL=m)
depends on THERMAL || !THERMAL
depends on HWMON=y || HWMON=THERMAL
depends on THERMAL || !THERMAL_OF

> ---
> arch/arm/configs/mini2440_defconfig | 2 +-
> arch/arm/configs/pxa_defconfig | 2 +-
> arch/mips/configs/ip22_defconfig | 2 +-
> arch/mips/configs/ip27_defconfig | 2 +-
> arch/unicore32/configs/unicore32_defconfig | 2 +-
> drivers/thermal/Kconfig | 4 ++--
> 6 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/configs/mini2440_defconfig b/arch/arm/configs/mini2440_defconfig
> index d95a8059d30b..0cf1c120c4bb 100644
> --- a/arch/arm/configs/mini2440_defconfig
> +++ b/arch/arm/configs/mini2440_defconfig
> @@ -152,7 +152,7 @@ CONFIG_SPI_S3C24XX=y
> CONFIG_SPI_SPIDEV=y
> CONFIG_GPIO_SYSFS=y
> CONFIG_SENSORS_LM75=y
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_S3C2410_WATCHDOG=y
> CONFIG_FB=y
> diff --git a/arch/arm/configs/pxa_defconfig b/arch/arm/configs/pxa_defconfig
> index d4654755b09c..d4f9dda3a52f 100644
> --- a/arch/arm/configs/pxa_defconfig
> +++ b/arch/arm/configs/pxa_defconfig
> @@ -387,7 +387,7 @@ CONFIG_SENSORS_LM75=m
> CONFIG_SENSORS_LM90=m
> CONFIG_SENSORS_LM95245=m
> CONFIG_SENSORS_NTC_THERMISTOR=m
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_XILINX_WATCHDOG=m
> CONFIG_SA1100_WATCHDOG=m
> diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig
> index ff40fbc2f439..21a1168ae301 100644
> --- a/arch/mips/configs/ip22_defconfig
> +++ b/arch/mips/configs/ip22_defconfig
> @@ -228,7 +228,7 @@ CONFIG_SERIAL_IP22_ZILOG=m
> # CONFIG_HW_RANDOM is not set
> CONFIG_RAW_DRIVER=m
> # CONFIG_HWMON is not set
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_INDYDOG=m
> # CONFIG_VGA_CONSOLE is not set
> diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig
> index 81c47e18131b..54db5dedf776 100644
> --- a/arch/mips/configs/ip27_defconfig
> +++ b/arch/mips/configs/ip27_defconfig
> @@ -271,7 +271,7 @@ CONFIG_I2C_PARPORT_LIGHT=m
> CONFIG_I2C_TAOS_EVM=m
> CONFIG_I2C_STUB=m
> # CONFIG_HWMON is not set
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_MFD_PCF50633=m
> CONFIG_PCF50633_ADC=m
> CONFIG_PCF50633_GPIO=m
> diff --git a/arch/unicore32/configs/unicore32_defconfig b/arch/unicore32/configs/unicore32_defconfig
> index aebd01fc28e5..360cc9abcdb0 100644
> --- a/arch/unicore32/configs/unicore32_defconfig
> +++ b/arch/unicore32/configs/unicore32_defconfig
> @@ -119,7 +119,7 @@ CONFIG_I2C_PUV3=y
> # Hardware Monitoring support
> #CONFIG_SENSORS_LM75=m
> # Generic Thermal sysfs driver
> -#CONFIG_THERMAL=m
> +#CONFIG_THERMAL=y
> #CONFIG_THERMAL_HWMON=y
>
> # Multimedia support
> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
> index 653aa27a25a4..ccf5b9408d7a 100644
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -3,7 +3,7 @@
> #
>
> menuconfig THERMAL
> - tristate "Generic Thermal sysfs driver"
> + bool "Generic Thermal sysfs driver"
> help
> Generic Thermal Sysfs driver offers a generic mechanism for
> thermal management. Usually it's made up of one or more thermal
> @@ -11,7 +11,7 @@ menuconfig THERMAL
> Each thermal zone contains its own temperature, trip points,
> cooling devices.
> All platforms with ACPI thermal support can use this driver.
> - If you want this support, you should say Y or M here.
> + If you want this support, you should say Y here.
>
> if THERMAL
>
> --
> 2.17.1
>

2019-04-01 07:16:14

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] thermal/drivers/core: Remove the module Kconfig's option

On Mon, 1 Apr 2019 at 05:24, Daniel Lezcano <[email protected]> wrote:
>
> The module support for the thermal subsystem does have a little sense:
> - some subsystems relying on it are not modules, thus forcing the
> framework to be compiled in
> - it is compiled in for almost every configs, the remaining ones
> are a few platforms where I don't see why we can not switch the thermal
> to 'y'. The drivers can stay in tristate.
> - platforms need the thermal to be ready as soon as possible at boot time
> in order to mitigate
>
> Usually the subsystems framework are compiled-in and the plugs are as module.
>
> Remove the module option. The removal of the module related dead code will
> come after this patch gets in or is acked.
>
> Signed-off-by: Daniel Lezcano <[email protected]>
> ---
> arch/arm/configs/mini2440_defconfig | 2 +-

For mini2440:
Acked-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof

2019-04-01 07:20:36

by Daniel Lezcano

[permalink] [raw]
Subject: Re: [PATCH] thermal/drivers/core: Remove the module Kconfig's option

Hi Guenter,

thanks for the review.

On 01/04/2019 06:10, Guenter Roeck wrote:
> On Sun, Mar 31, 2019 at 8:24 PM Daniel Lezcano
> <[email protected]> wrote:
>>
>> The module support for the thermal subsystem does have a little sense:
>
> Do you mean "makes little sense" ?

yep :)

>> - some subsystems relying on it are not modules, thus forcing the
>> framework to be compiled in
>> - it is compiled in for almost every configs, the remaining ones
>> are a few platforms where I don't see why we can not switch the thermal
>> to 'y'. The drivers can stay in tristate.
>> - platforms need the thermal to be ready as soon as possible at boot time
>> in order to mitigate
>>
>> Usually the subsystems framework are compiled-in and the plugs are as module.
>>
>> Remove the module option. The removal of the module related dead code will
>> come after this patch gets in or is acked.
>>
>> Signed-off-by: Daniel Lezcano <[email protected]>
>
> Sounds like a good idea.
>
> Acked-by: Guenter Roeck <[email protected]>
>
> Many dependencies such as the following can probably be simplified or
> removed after this patch has been accepted.
>
> depends on THERMAL=y
> depends on THERMAL || THERMAL=n
> depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
> depends on !(MLXSW_CORE=y && THERMAL=m)
> depends on THERMAL || !THERMAL
> depends on HWMON=y || HWMON=THERMAL
> depends on THERMAL || !THERMAL_OF

Absolutely.

-- Daniel

--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

2019-04-03 05:47:44

by Amit Kucheria

[permalink] [raw]
Subject: Re: [PATCH] thermal/drivers/core: Remove the module Kconfig's option

On Mon, Apr 1, 2019 at 10:24 AM Daniel Lezcano
<[email protected]> wrote:
>
> The module support for the thermal subsystem does have a little sense:
> - some subsystems relying on it are not modules, thus forcing the
> framework to be compiled in
> - it is compiled in for almost every configs, the remaining ones
> are a few platforms where I don't see why we can not switch the thermal
> to 'y'. The drivers can stay in tristate.
> - platforms need the thermal to be ready as soon as possible at boot time
> in order to mitigate
>
> Usually the subsystems framework are compiled-in and the plugs are as module.
>
> Remove the module option. The removal of the module related dead code will
> come after this patch gets in or is acked.
>
> Signed-off-by: Daniel Lezcano <[email protected]>

Reviewed-by: Amit Kucheria <[email protected]>

> ---
> arch/arm/configs/mini2440_defconfig | 2 +-
> arch/arm/configs/pxa_defconfig | 2 +-
> arch/mips/configs/ip22_defconfig | 2 +-
> arch/mips/configs/ip27_defconfig | 2 +-
> arch/unicore32/configs/unicore32_defconfig | 2 +-
> drivers/thermal/Kconfig | 4 ++--
> 6 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/configs/mini2440_defconfig b/arch/arm/configs/mini2440_defconfig
> index d95a8059d30b..0cf1c120c4bb 100644
> --- a/arch/arm/configs/mini2440_defconfig
> +++ b/arch/arm/configs/mini2440_defconfig
> @@ -152,7 +152,7 @@ CONFIG_SPI_S3C24XX=y
> CONFIG_SPI_SPIDEV=y
> CONFIG_GPIO_SYSFS=y
> CONFIG_SENSORS_LM75=y
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_S3C2410_WATCHDOG=y
> CONFIG_FB=y
> diff --git a/arch/arm/configs/pxa_defconfig b/arch/arm/configs/pxa_defconfig
> index d4654755b09c..d4f9dda3a52f 100644
> --- a/arch/arm/configs/pxa_defconfig
> +++ b/arch/arm/configs/pxa_defconfig
> @@ -387,7 +387,7 @@ CONFIG_SENSORS_LM75=m
> CONFIG_SENSORS_LM90=m
> CONFIG_SENSORS_LM95245=m
> CONFIG_SENSORS_NTC_THERMISTOR=m
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_XILINX_WATCHDOG=m
> CONFIG_SA1100_WATCHDOG=m
> diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig
> index ff40fbc2f439..21a1168ae301 100644
> --- a/arch/mips/configs/ip22_defconfig
> +++ b/arch/mips/configs/ip22_defconfig
> @@ -228,7 +228,7 @@ CONFIG_SERIAL_IP22_ZILOG=m
> # CONFIG_HW_RANDOM is not set
> CONFIG_RAW_DRIVER=m
> # CONFIG_HWMON is not set
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_WATCHDOG=y
> CONFIG_INDYDOG=m
> # CONFIG_VGA_CONSOLE is not set
> diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig
> index 81c47e18131b..54db5dedf776 100644
> --- a/arch/mips/configs/ip27_defconfig
> +++ b/arch/mips/configs/ip27_defconfig
> @@ -271,7 +271,7 @@ CONFIG_I2C_PARPORT_LIGHT=m
> CONFIG_I2C_TAOS_EVM=m
> CONFIG_I2C_STUB=m
> # CONFIG_HWMON is not set
> -CONFIG_THERMAL=m
> +CONFIG_THERMAL=y
> CONFIG_MFD_PCF50633=m
> CONFIG_PCF50633_ADC=m
> CONFIG_PCF50633_GPIO=m
> diff --git a/arch/unicore32/configs/unicore32_defconfig b/arch/unicore32/configs/unicore32_defconfig
> index aebd01fc28e5..360cc9abcdb0 100644
> --- a/arch/unicore32/configs/unicore32_defconfig
> +++ b/arch/unicore32/configs/unicore32_defconfig
> @@ -119,7 +119,7 @@ CONFIG_I2C_PUV3=y
> # Hardware Monitoring support
> #CONFIG_SENSORS_LM75=m
> # Generic Thermal sysfs driver
> -#CONFIG_THERMAL=m
> +#CONFIG_THERMAL=y
> #CONFIG_THERMAL_HWMON=y
>
> # Multimedia support
> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
> index 653aa27a25a4..ccf5b9408d7a 100644
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -3,7 +3,7 @@
> #
>
> menuconfig THERMAL
> - tristate "Generic Thermal sysfs driver"
> + bool "Generic Thermal sysfs driver"
> help
> Generic Thermal Sysfs driver offers a generic mechanism for
> thermal management. Usually it's made up of one or more thermal
> @@ -11,7 +11,7 @@ menuconfig THERMAL
> Each thermal zone contains its own temperature, trip points,
> cooling devices.
> All platforms with ACPI thermal support can use this driver.
> - If you want this support, you should say Y or M here.
> + If you want this support, you should say Y here.
>
> if THERMAL
>
> --
> 2.17.1
>