When CONFIG_DEVFREQ_THERMAL is disabled all functions except
of_devfreq_cooling_register_power() were already inlined. Also inline
the last function to avoid compile errors when multiple drivers call
of_devfreq_cooling_register_power() when CONFIG_DEVFREQ_THERMAL is not
set. Compilation failed with the following message:
multiple definition of `of_devfreq_cooling_register_power'
(which then lists all usages of of_devfreq_cooling_register_power())
Thomas Zimmermann reported this problem [0] on a kernel config with
CONFIG_DRM_LIMA={m,y}, CONFIG_DRM_PANFROST={m,y} and
CONFIG_DEVFREQ_THERMAL=n after both, the lima and panfrost drivers
gained devfreq cooling support.
[0] https://www.spinics.net/lists/dri-devel/msg252825.html
Fixes: a76caf55e5b356 ("thermal: Add devfreq cooling")
Cc: [email protected]
Reported-by: Thomas Zimmermann <[email protected]>
Signed-off-by: Martin Blumenstingl <[email protected]>
---
include/linux/devfreq_cooling.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/devfreq_cooling.h b/include/linux/devfreq_cooling.h
index 4635f95000a4..79a6e37a1d6f 100644
--- a/include/linux/devfreq_cooling.h
+++ b/include/linux/devfreq_cooling.h
@@ -75,7 +75,7 @@ void devfreq_cooling_unregister(struct thermal_cooling_device *dfc);
#else /* !CONFIG_DEVFREQ_THERMAL */
-struct thermal_cooling_device *
+static inline struct thermal_cooling_device *
of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
struct devfreq_cooling_power *dfc_power)
{
--
2.26.0
Am 03.04.20 um 22:51 schrieb Martin Blumenstingl:
> When CONFIG_DEVFREQ_THERMAL is disabled all functions except
> of_devfreq_cooling_register_power() were already inlined. Also inline
> the last function to avoid compile errors when multiple drivers call
> of_devfreq_cooling_register_power() when CONFIG_DEVFREQ_THERMAL is not
> set. Compilation failed with the following message:
> multiple definition of `of_devfreq_cooling_register_power'
> (which then lists all usages of of_devfreq_cooling_register_power())
>
> Thomas Zimmermann reported this problem [0] on a kernel config with
> CONFIG_DRM_LIMA={m,y}, CONFIG_DRM_PANFROST={m,y} and
> CONFIG_DEVFREQ_THERMAL=n after both, the lima and panfrost drivers
> gained devfreq cooling support.
>
> [0] https://www.spinics.net/lists/dri-devel/msg252825.html
>
> Fixes: a76caf55e5b356 ("thermal: Add devfreq cooling")
> Cc: [email protected]
> Reported-by: Thomas Zimmermann <[email protected]>
> Signed-off-by: Martin Blumenstingl <[email protected]>
Tested-by: Thomas Zimmermann <[email protected]>
> ---
> include/linux/devfreq_cooling.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/devfreq_cooling.h b/include/linux/devfreq_cooling.h
> index 4635f95000a4..79a6e37a1d6f 100644
> --- a/include/linux/devfreq_cooling.h
> +++ b/include/linux/devfreq_cooling.h
> @@ -75,7 +75,7 @@ void devfreq_cooling_unregister(struct thermal_cooling_device *dfc);
>
> #else /* !CONFIG_DEVFREQ_THERMAL */
>
> -struct thermal_cooling_device *
> +static inline struct thermal_cooling_device *
> of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
> struct devfreq_cooling_power *dfc_power)
> {
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer