]> git.itanic.dy.fi Git - linux-stable/commitdiff
powerpc/83xx: Add missing of_node_put() in mpc832x_spi_init()
authorLiang He <windhl@126.com>
Tue, 21 Jun 2022 08:09:32 +0000 (16:09 +0800)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 5 Sep 2022 07:30:24 +0000 (17:30 +1000)
In mpc832x_spi_init(), hold the reference returned by
of_find_compatible_node() and use it to call of_node_put() for refcount
balance.

Signed-off-by: Liang He <windhl@126.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220621080932.4081935-1-windhl@126.com
arch/powerpc/platforms/83xx/mpc832x_rdb.c

index bb8caa5071f8cf356fde2934a22154d2f43cb20f..e12cb44e717f1f084226235b3386c7e79e96bc09 100644 (file)
@@ -162,6 +162,8 @@ static struct spi_board_info mpc832x_spi_boardinfo = {
 
 static int __init mpc832x_spi_init(void)
 {
+       struct device_node *np;
+
        par_io_config_pin(3,  0, 3, 0, 1, 0); /* SPI1 MOSI, I/O */
        par_io_config_pin(3,  1, 3, 0, 1, 0); /* SPI1 MISO, I/O */
        par_io_config_pin(3,  2, 3, 0, 1, 0); /* SPI1 CLK,  I/O */
@@ -175,7 +177,9 @@ static int __init mpc832x_spi_init(void)
         * Don't bother with legacy stuff when device tree contains
         * mmc-spi-slot node.
         */
-       if (of_find_compatible_node(NULL, NULL, "mmc-spi-slot"))
+       np = of_find_compatible_node(NULL, NULL, "mmc-spi-slot");
+       of_node_put(np);
+       if (np)
                return 0;
        return fsl_spi_init(&mpc832x_spi_boardinfo, 1, mpc83xx_spi_cs_control);
 }