]> www.infradead.org Git - users/hch/misc.git/commitdiff
drm/simpledrm: Use of_reserved_mem_region_to_resource() for "memory-region"
authorRob Herring (Arm) <robh@kernel.org>
Thu, 3 Jul 2025 18:34:47 +0000 (13:34 -0500)
committerRob Herring (Arm) <robh@kernel.org>
Wed, 13 Aug 2025 22:12:45 +0000 (17:12 -0500)
Use the newly added of_reserved_mem_region_to_resource() function to
handle "memory-region" properties.

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://lore.kernel.org/r/20250703183447.2073902-1-robh@kernel.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
drivers/gpu/drm/sysfb/simpledrm.c

index 8530a3ef8a7aa232effa4f18771abcdcf6b55d9b..0358164a623c9ec5acfc805bc1fec9af04a06381 100644 (file)
@@ -4,7 +4,7 @@
 #include <linux/clk.h>
 #include <linux/of_clk.h>
 #include <linux/minmax.h>
-#include <linux/of_address.h>
+#include <linux/of_reserved_mem.h>
 #include <linux/platform_data/simplefb.h>
 #include <linux/platform_device.h>
 #include <linux/pm_domain.h>
@@ -179,22 +179,17 @@ simplefb_get_format_of(struct drm_device *dev, struct device_node *of_node)
 static struct resource *
 simplefb_get_memory_of(struct drm_device *dev, struct device_node *of_node)
 {
-       struct device_node *np;
-       struct resource *res;
+       struct resource r, *res;
        int err;
 
-       np = of_parse_phandle(of_node, "memory-region", 0);
-       if (!np)
+       err = of_reserved_mem_region_to_resource(of_node, 0, &r);
+       if (err)
                return NULL;
 
-       res = devm_kzalloc(dev->dev, sizeof(*res), GFP_KERNEL);
+       res = devm_kmemdup(dev->dev, &r, sizeof(r), GFP_KERNEL);
        if (!res)
                return ERR_PTR(-ENOMEM);
 
-       err = of_address_to_resource(np, 0, res);
-       if (err)
-               return ERR_PTR(err);
-
        if (of_property_present(of_node, "reg"))
                drm_warn(dev, "preferring \"memory-region\" over \"reg\" property\n");