pcf_isa.c (155233) | pcf_isa.c (155921) |
---|---|
1/*- 2 * Copyright (c) 2004 Joerg Wunsch 3 * 4 * derived from sys/i386/isa/pcf.c which is: 5 * 6 * Copyright (c) 1998 Nicolas Souchu, Marc Bouget 7 * All rights reserved. 8 * --- 14 unchanged lines hidden (view full) --- 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 */ 30#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2004 Joerg Wunsch 3 * 4 * derived from sys/i386/isa/pcf.c which is: 5 * 6 * Copyright (c) 1998 Nicolas Souchu, Marc Bouget 7 * All rights reserved. 8 * --- 14 unchanged lines hidden (view full) --- 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 */ 30#include <sys/cdefs.h> |
31__FBSDID("$FreeBSD: head/sys/dev/pcf/pcf_isa.c 155233 2006-02-02 23:57:31Z imp $"); | 31__FBSDID("$FreeBSD: head/sys/dev/pcf/pcf_isa.c 155921 2006-02-22 18:16:26Z jhb $"); |
32 33/* 34 * Hardware driver for a Philips PCF8584 I2C bus controller sitting 35 * on a generic ISA bus. 36 */ 37 38#include <sys/param.h> 39#include <sys/systm.h> --- 108 unchanged lines hidden (view full) --- 148 sc->pcf_flags |= IIC_POLLED; 149 } 150 } 151 152 /* reset the chip */ 153 pcf_rst_card(dev, IIC_FASTEST, PCF_DEFAULT_ADDR, NULL); 154 155 if (sc->res_irq) { | 32 33/* 34 * Hardware driver for a Philips PCF8584 I2C bus controller sitting 35 * on a generic ISA bus. 36 */ 37 38#include <sys/param.h> 39#include <sys/systm.h> --- 108 unchanged lines hidden (view full) --- 148 sc->pcf_flags |= IIC_POLLED; 149 } 150 } 151 152 /* reset the chip */ 153 pcf_rst_card(dev, IIC_FASTEST, PCF_DEFAULT_ADDR, NULL); 154 155 if (sc->res_irq) { |
156 rv = BUS_SETUP_INTR(device_get_parent(dev), dev, sc->res_irq, | 156 rv = bus_setup_intr(dev, sc->res_irq, |
157 INTR_TYPE_NET /* | INTR_ENTROPY */, 158 pcf_intr, sc, &sc->intr_cookie); 159 if (rv) { 160 device_printf(dev, "could not setup IRQ\n"); 161 goto error; 162 } 163 } 164 --- 31 unchanged lines hidden (view full) --- 196 197 if ((rv = bus_generic_detach(dev)) != 0) 198 return (rv); 199 200 if ((rv = device_delete_child(dev, sc->iicbus)) != 0) 201 return (rv); 202 203 if (sc->res_irq != 0) { | 157 INTR_TYPE_NET /* | INTR_ENTROPY */, 158 pcf_intr, sc, &sc->intr_cookie); 159 if (rv) { 160 device_printf(dev, "could not setup IRQ\n"); 161 goto error; 162 } 163 } 164 --- 31 unchanged lines hidden (view full) --- 196 197 if ((rv = bus_generic_detach(dev)) != 0) 198 return (rv); 199 200 if ((rv = device_delete_child(dev, sc->iicbus)) != 0) 201 return (rv); 202 203 if (sc->res_irq != 0) { |
204 BUS_TEARDOWN_INTR(device_get_parent(dev), dev, sc->res_irq, 205 sc->intr_cookie); | 204 bus_teardown_intr(dev, sc->res_irq, sc->intr_cookie); |
206 bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq); 207 bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq); 208 } 209 210 bus_deactivate_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport); 211 bus_release_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport); 212 213 return (0); 214} 215 216DRIVER_MODULE(pcf_isa, isa, pcf_isa_driver, pcf_isa_devclass, 0, 0); 217MODULE_DEPEND(pcf_isa, iicbus, PCF_MINVER, PCF_PREFVER, PCF_MAXVER); 218MODULE_VERSION(pcf_isa, PCF_MODVER); | 205 bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq); 206 bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq); 207 } 208 209 bus_deactivate_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport); 210 bus_release_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport); 211 212 return (0); 213} 214 215DRIVER_MODULE(pcf_isa, isa, pcf_isa_driver, pcf_isa_devclass, 0, 0); 216MODULE_DEPEND(pcf_isa, iicbus, PCF_MINVER, PCF_PREFVER, PCF_MAXVER); 217MODULE_VERSION(pcf_isa, PCF_MODVER); |