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
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);
}