]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
staging: greybus: arche-apb-ctrl: switch to device_property_read_bool
authorJulio Cesar Carvalho de Paula Souza <julio191096@gmail.com>
Fri, 5 Dec 2025 11:21:38 +0000 (08:21 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Dec 2025 13:10:02 +0000 (14:10 +0100)
Switch from the deprecated of_property_read_bool() to the common
device_property_read_bool() API. This makes the driver agnostic to
the underlying firmware interface (DT or ACPI) and simplifies the
logic.

Since the driver is no longer strictly dependent on Device Tree,
include <linux/mod_devicetable.h> directly for the struct
of_device_id definition, instead of relying on implicit inclusion
via <linux/of_irq.h>, which has been removed as it is unused.

Also rename apb_ctrl_get_devtree_data() to apb_ctrl_get_fw_data()
to better reflect the agnostic nature of the new implementation.

Signed-off-by: Julio Cesar Carvalho de Paula Souza <julio191096@gmail.com>
Link: https://patch.msgid.link/20251205112138.3431-1-julio191096@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/greybus/arche-apb-ctrl.c

index 90ab32638d3f59570da774e95d59db1257cde37e..33f26a65f0cc063e6bc2ef1fa927f0928eb2696d 100644 (file)
 #include <linux/delay.h>
 #include <linux/gpio/consumer.h>
 #include <linux/interrupt.h>
-#include <linux/of_irq.h>
 #include <linux/module.h>
 #include <linux/pinctrl/consumer.h>
 #include <linux/platform_device.h>
 #include <linux/pm.h>
+#include <linux/property.h>
 #include <linux/regulator/consumer.h>
 #include <linux/spinlock.h>
+#include <linux/mod_devicetable.h>
 #include "arche_platform.h"
 
 static void apb_bootret_deassert(struct device *dev);
@@ -314,8 +315,8 @@ static ssize_t state_show(struct device *dev,
 
 static DEVICE_ATTR_RW(state);
 
-static int apb_ctrl_get_devtree_data(struct platform_device *pdev,
-                                    struct arche_apb_ctrl_drvdata *apb)
+static int apb_ctrl_get_fw_data(struct platform_device *pdev,
+                               struct arche_apb_ctrl_drvdata *apb)
 {
        struct device *dev = &pdev->dev;
        int ret;
@@ -378,7 +379,7 @@ static int apb_ctrl_get_devtree_data(struct platform_device *pdev,
        }
 
        /* Only applicable for platform >= V2 */
-       if (of_property_read_bool(pdev->dev.of_node, "gb,spi-en-active-high"))
+       if (device_property_read_bool(&pdev->dev, "gb,spi-en-active-high"))
                apb->spi_en_polarity_high = true;
 
        return 0;
@@ -394,7 +395,7 @@ static int arche_apb_ctrl_probe(struct platform_device *pdev)
        if (!apb)
                return -ENOMEM;
 
-       ret = apb_ctrl_get_devtree_data(pdev, apb);
+       ret = apb_ctrl_get_fw_data(pdev, apb);
        if (ret) {
                dev_err(dev, "failed to get apb devicetree data %d\n", ret);
                return ret;
@@ -403,7 +404,7 @@ static int arche_apb_ctrl_probe(struct platform_device *pdev)
        /* Initially set APB to OFF state */
        apb->state = ARCHE_PLATFORM_STATE_OFF;
        /* Check whether device needs to be enabled on boot */
-       if (of_property_read_bool(pdev->dev.of_node, "arche,init-disable"))
+       if (device_property_read_bool(&pdev->dev, "arche,init-disable"))
                apb->init_disabled = true;
 
        platform_set_drvdata(pdev, apb);