diff options
author | andrew <andrew@FreeBSD.org> | 2016-05-18 15:05:44 +0000 |
---|---|---|
committer | andrew <andrew@FreeBSD.org> | 2016-05-18 15:05:44 +0000 |
commit | 5755bcaba97673b1bb0729757de00966d600513f (patch) | |
tree | 921f2b3e3bffdc9608defc32ff12df35f90be273 /sys/arm/nvidia | |
parent | bfac6710a1cd178cb851b70f97b616048ea6649c (diff) | |
download | FreeBSD-src-5755bcaba97673b1bb0729757de00966d600513f.zip FreeBSD-src-5755bcaba97673b1bb0729757de00966d600513f.tar.gz |
Return the struct intr_pic pointer from intr_pic_register. This will be
needed in later changes where we may not be able to lock the pic list lock
to perform a lookup, e.g. from within interrupt context.
Obtained from: ABT Systems Ltd
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'sys/arm/nvidia')
-rw-r--r-- | sys/arm/nvidia/tegra_gpio.c | 7 | ||||
-rw-r--r-- | sys/arm/nvidia/tegra_lic.c | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sys/arm/nvidia/tegra_gpio.c b/sys/arm/nvidia/tegra_gpio.c index bfe093c..0f88e64 100644 --- a/sys/arm/nvidia/tegra_gpio.c +++ b/sys/arm/nvidia/tegra_gpio.c @@ -452,8 +452,11 @@ tegra_gpio_pic_attach(struct tegra_gpio_softc *sc) if (error != 0) return (error); /* XXX deregister ISRCs */ } - return (intr_pic_register(sc->dev, - OF_xref_from_node(ofw_bus_get_node(sc->dev)))); + if (intr_pic_register(sc->dev, + OF_xref_from_node(ofw_bus_get_node(sc->dev))) == NULL) + return (ENXIO); + + return (0); } static int diff --git a/sys/arm/nvidia/tegra_lic.c b/sys/arm/nvidia/tegra_lic.c index 6228c01..5a27a65 100644 --- a/sys/arm/nvidia/tegra_lic.c +++ b/sys/arm/nvidia/tegra_lic.c @@ -233,7 +233,7 @@ tegra_lic_attach(device_t dev) } - if (intr_pic_register(dev, OF_xref_from_node(node)) != 0) { + if (intr_pic_register(dev, OF_xref_from_node(node)) == NULL) { device_printf(dev, "Cannot register PIC\n"); goto fail; } |