]> xenbits.xensource.com Git - people/royger/freebsd.git/commitdiff
gpiopower: Fix failure case for attach
authorJustin Hibbits <jhibbits@FreeBSD.org>
Tue, 15 Mar 2022 18:40:48 +0000 (13:40 -0500)
committerJustin Hibbits <jhibbits@FreeBSD.org>
Wed, 16 Mar 2022 00:16:17 +0000 (19:16 -0500)
Summary:
We really should be checking the return value of
ofw_gpiobus_parse_gpios_impl, not the value of sc_pins, which isn't
changed on failure.

Reported by: alfredo@

Reviewers: #powerpc, alfredo

Reviewed By: #powerpc, alfredo

Subscribers: imp, loos

Differential Revision: https://reviews.freebsd.org/D34571

sys/dev/gpio/gpiopower.c

index 98b635e3fd2a12779c20f2751a181f14ccc6bdef..3dcd489ed2fbaf8a90a5693718a38a2b775c43b6 100644 (file)
@@ -74,8 +74,7 @@ gpiopower_attach(device_t dev)
        if ((node = ofw_bus_get_node(dev)) == -1)
                return (ENXIO);
 
-       ofw_gpiobus_parse_gpios(dev, "gpios", &sc->sc_pin);
-       if (sc->sc_pin == NULL) {
+       if (ofw_gpiobus_parse_gpios(dev, "gpios", &sc->sc_pin) != 0) {
                device_printf(dev, "failed to map GPIO pin\n");
                return (ENXIO);
        }