[PATCH v2 1/1] iio: trigger: stm32-timer: Make use of device properties

Jonathan Cameron jic23 at kernel.org
Sat Feb 5 09:31:14 PST 2022


On Wed,  2 Feb 2022 22:41:12 +0200
Andy Shevchenko <andriy.shevchenko at linux.intel.com> wrote:

> Convert the module to be property provider agnostic and allow
> it to be used on non-OF platforms.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko at linux.intel.com>
Looks fine to me.  The stm32 drivers are well maintained so I'll
leave this one on list a little longer for feedback.

+Cc: Fabrice

> ---
> v2: dropped depends on OF
>  drivers/iio/trigger/Kconfig               |  2 +-
>  drivers/iio/trigger/stm32-timer-trigger.c | 11 ++++++-----
>  2 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/iio/trigger/Kconfig b/drivers/iio/trigger/Kconfig
> index 8cef2f7452e8..7ecb69725b1d 100644
> --- a/drivers/iio/trigger/Kconfig
> +++ b/drivers/iio/trigger/Kconfig
> @@ -38,7 +38,7 @@ config IIO_STM32_LPTIMER_TRIGGER
>  
>  config IIO_STM32_TIMER_TRIGGER
>  	tristate "STM32 Timer Trigger"
> -	depends on (ARCH_STM32 && OF && MFD_STM32_TIMERS) || COMPILE_TEST
> +	depends on (ARCH_STM32 && MFD_STM32_TIMERS) || COMPILE_TEST
>  	help
>  	  Select this option to enable STM32 Timer Trigger
>  
> diff --git a/drivers/iio/trigger/stm32-timer-trigger.c b/drivers/iio/trigger/stm32-timer-trigger.c
> index 4f9461e1412c..5049d9ecfc1a 100644
> --- a/drivers/iio/trigger/stm32-timer-trigger.c
> +++ b/drivers/iio/trigger/stm32-timer-trigger.c
> @@ -11,9 +11,10 @@
>  #include <linux/iio/timer/stm32-timer-trigger.h>
>  #include <linux/iio/trigger.h>
>  #include <linux/mfd/stm32-timers.h>
> +#include <linux/mod_devicetable.h>
>  #include <linux/module.h>
>  #include <linux/platform_device.h>
> -#include <linux/of_device.h>
> +#include <linux/property.h>
>  
>  #define MAX_TRIGGERS 7
>  #define MAX_VALIDS 5
> @@ -771,11 +772,11 @@ static int stm32_timer_trigger_probe(struct platform_device *pdev)
>  	unsigned int index;
>  	int ret;
>  
> -	if (of_property_read_u32(dev->of_node, "reg", &index))
> -		return -EINVAL;
> +	ret = device_property_read_u32(dev, "reg", &index);
> +	if (ret)
> +		return ret;
>  
> -	cfg = (const struct stm32_timer_trigger_cfg *)
> -		of_match_device(dev->driver->of_match_table, dev)->data;
> +	cfg = device_get_match_data(dev);
>  
>  	if (index >= ARRAY_SIZE(triggers_table) ||
>  	    index >= cfg->num_valids_table)




More information about the linux-arm-kernel mailing list