diff options
author | loos <loos@FreeBSD.org> | 2015-02-02 11:12:31 +0000 |
---|---|---|
committer | loos <loos@FreeBSD.org> | 2015-02-02 11:12:31 +0000 |
commit | e340772cb9fd18131e00c5cc11f54c8a81dd239e (patch) | |
tree | 4e5ee8245fb35c3c9c35c17c89a5857d0e4620cc /sys/arm/broadcom | |
parent | 22af0668e82bec17b4a1b6292302d417fcacb9ad (diff) | |
download | FreeBSD-src-e340772cb9fd18131e00c5cc11f54c8a81dd239e.zip FreeBSD-src-e340772cb9fd18131e00c5cc11f54c8a81dd239e.tar.gz |
MFC r277206:
Catch a few cases where we need to release memory resources on errors.
Place parentheses around variables in macros.
Diffstat (limited to 'sys/arm/broadcom')
-rw-r--r-- | sys/arm/broadcom/bcm2835/bcm2835_bsc.c | 2 | ||||
-rw-r--r-- | sys/arm/broadcom/bcm2835/bcm2835_bscvar.h | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_bsc.c b/sys/arm/broadcom/bcm2835/bcm2835_bsc.c index c809265..3e1afcd 100644 --- a/sys/arm/broadcom/bcm2835/bcm2835_bsc.c +++ b/sys/arm/broadcom/bcm2835/bcm2835_bsc.c @@ -252,6 +252,7 @@ bcm_bsc_attach(device_t dev) } if (i == nitems(bcm_bsc_pins)) { device_printf(dev, "only bsc0 and bsc1 are supported\n"); + bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_mem_res); return (ENXIO); } @@ -262,6 +263,7 @@ bcm_bsc_attach(device_t dev) gpio = devclass_get_device(devclass_find("gpio"), 0); if (!gpio) { device_printf(dev, "cannot find gpio0\n"); + bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_mem_res); return (ENXIO); } bcm_gpio_set_alternate(gpio, bcm_bsc_pins[i].sda, BCM_GPIO_ALT0); diff --git a/sys/arm/broadcom/bcm2835/bcm2835_bscvar.h b/sys/arm/broadcom/bcm2835/bcm2835_bscvar.h index 173e1f6..5068356 100644 --- a/sys/arm/broadcom/bcm2835/bcm2835_bscvar.h +++ b/sys/arm/broadcom/bcm2835/bcm2835_bscvar.h @@ -58,9 +58,9 @@ struct bcm_bsc_softc { #define BCM_I2C_ERROR 0x04 #define BCM_BSC_WRITE(_sc, _off, _val) \ - bus_space_write_4(_sc->sc_bst, _sc->sc_bsh, _off, _val) + bus_space_write_4((_sc)->sc_bst, (_sc)->sc_bsh, _off, _val) #define BCM_BSC_READ(_sc, _off) \ - bus_space_read_4(_sc->sc_bst, _sc->sc_bsh, _off) + bus_space_read_4((_sc)->sc_bst, (_sc)->sc_bsh, _off) #define BCM_BSC_LOCK(_sc) \ mtx_lock(&(_sc)->sc_mtx) |