]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
gpio: grgpio: use a helper variable to store the address of ofdev->dev
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 15 Oct 2024 13:18:31 +0000 (15:18 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 22 Oct 2024 07:04:03 +0000 (09:04 +0200)
Instead of dereferencing the platform device pointer repeatedly, just
store its address in a helper variable.

Link: https://lore.kernel.org/r/20241015131832.44678-3-brgl@bgdev.pl
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-grgpio.c

index ba4c4acae440010998289ec39f940d328ce97d90..aec96d47dd0c93541cecaf4bb3e6fbee45b067fd 100644 (file)
@@ -328,6 +328,7 @@ static const struct irq_domain_ops grgpio_irq_domain_ops = {
 static int grgpio_probe(struct platform_device *ofdev)
 {
        struct device_node *np = ofdev->dev.of_node;
+       struct device *dev = &ofdev->dev;
        void  __iomem *regs;
        struct gpio_chip *gc;
        struct grgpio_priv *priv;
@@ -337,7 +338,7 @@ static int grgpio_probe(struct platform_device *ofdev)
        int size;
        int i;
 
-       priv = devm_kzalloc(&ofdev->dev, sizeof(*priv), GFP_KERNEL);
+       priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
        if (!priv)
                return -ENOMEM;
 
@@ -346,28 +347,28 @@ static int grgpio_probe(struct platform_device *ofdev)
                return PTR_ERR(regs);
 
        gc = &priv->gc;
-       err = bgpio_init(gc, &ofdev->dev, 4, regs + GRGPIO_DATA,
+       err = bgpio_init(gc, dev, 4, regs + GRGPIO_DATA,
                         regs + GRGPIO_OUTPUT, NULL, regs + GRGPIO_DIR, NULL,
                         BGPIOF_BIG_ENDIAN_BYTE_ORDER);
        if (err) {
-               dev_err(&ofdev->dev, "bgpio_init() failed\n");
+               dev_err(dev, "bgpio_init() failed\n");
                return err;
        }
 
        priv->regs = regs;
        priv->imask = gc->read_reg(regs + GRGPIO_IMASK);
-       priv->dev = &ofdev->dev;
+       priv->dev = dev;
 
        gc->owner = THIS_MODULE;
        gc->to_irq = grgpio_to_irq;
-       gc->label = devm_kasprintf(&ofdev->dev, GFP_KERNEL, "%pOF", np);
+       gc->label = devm_kasprintf(dev, GFP_KERNEL, "%pOF", np);
        gc->base = -1;
 
        err = of_property_read_u32(np, "nbits", &prop);
        if (err || prop <= 0 || prop > GRGPIO_MAX_NGPIO) {
                gc->ngpio = GRGPIO_MAX_NGPIO;
-               dev_dbg(&ofdev->dev,
-                       "No or invalid nbits property: assume %d\n", gc->ngpio);
+               dev_dbg(dev, "No or invalid nbits property: assume %d\n",
+                       gc->ngpio);
        } else {
                gc->ngpio = prop;
        }
@@ -379,7 +380,7 @@ static int grgpio_probe(struct platform_device *ofdev)
        irqmap = (s32 *)of_get_property(np, "irqmap", &size);
        if (irqmap) {
                if (size < gc->ngpio) {
-                       dev_err(&ofdev->dev,
+                       dev_err(dev,
                                "irqmap shorter than ngpio (%d < %d)\n",
                                size, gc->ngpio);
                        return -EINVAL;
@@ -389,7 +390,7 @@ static int grgpio_probe(struct platform_device *ofdev)
                                                     &grgpio_irq_domain_ops,
                                                     priv);
                if (!priv->domain) {
-                       dev_err(&ofdev->dev, "Could not add irq domain\n");
+                       dev_err(dev, "Could not add irq domain\n");
                        return -EINVAL;
                }
 
@@ -419,13 +420,13 @@ static int grgpio_probe(struct platform_device *ofdev)
 
        err = gpiochip_add_data(gc, priv);
        if (err) {
-               dev_err(&ofdev->dev, "Could not add gpiochip\n");
+               dev_err(dev, "Could not add gpiochip\n");
                if (priv->domain)
                        irq_domain_remove(priv->domain);
                return err;
        }
 
-       dev_info(&ofdev->dev, "regs=0x%p, base=%d, ngpio=%d, irqs=%s\n",
+       dev_info(dev, "regs=0x%p, base=%d, ngpio=%d, irqs=%s\n",
                 priv->regs, gc->base, gc->ngpio, priv->domain ? "on" : "off");
 
        return 0;