Module Name: src Committed By: dyoung Date: Thu Mar 18 20:54:56 UTC 2010
Modified Files: src/sys/dev/cardbus: adv_cardbus.c ahc_cardbus.c com_cardbus.c siisata_cardbus.c uhci_cardbus.c Log Message: This is *always* compiled with #define rbus 1, so get rid of the conditional compilation. Simplify interrupt (dis)establishment by two source transformations: - cardbus_intr_disestablish(cc, cf, ih); + Cardbus_intr_disestablish(ct, ih); - ih = cardbus_intr_establish(cc, cf, ...); + ih = Cardbus_intr_establish(ct, ...); The identical change to a few other CardBus NICs has not caused any problems, as expected, so I'm going to commit this rather safe change and get on with the work. Testers have been enlisted. I will revisit this change if I get any negative responses. To generate a diff of this commit: cvs rdiff -u -r1.26 -r1.27 src/sys/dev/cardbus/adv_cardbus.c cvs rdiff -u -r1.33 -r1.34 src/sys/dev/cardbus/ahc_cardbus.c cvs rdiff -u -r1.28 -r1.29 src/sys/dev/cardbus/com_cardbus.c cvs rdiff -u -r1.11 -r1.12 src/sys/dev/cardbus/siisata_cardbus.c cvs rdiff -u -r1.16 -r1.17 src/sys/dev/cardbus/uhci_cardbus.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/cardbus/adv_cardbus.c diff -u src/sys/dev/cardbus/adv_cardbus.c:1.26 src/sys/dev/cardbus/adv_cardbus.c:1.27 --- src/sys/dev/cardbus/adv_cardbus.c:1.26 Fri Feb 26 00:57:01 2010 +++ src/sys/dev/cardbus/adv_cardbus.c Thu Mar 18 20:54:56 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: adv_cardbus.c,v 1.26 2010/02/26 00:57:01 dyoung Exp $ */ +/* $NetBSD: adv_cardbus.c,v 1.27 2010/03/18 20:54:56 dyoung Exp $ */ /*- * Copyright (c) 2000 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: adv_cardbus.c,v 1.26 2010/02/26 00:57:01 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: adv_cardbus.c,v 1.27 2010/03/18 20:54:56 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -109,8 +109,6 @@ struct adv_cardbus_softc *csc = device_private(self); struct asc_softc *sc = &csc->sc_adv; cardbus_devfunc_t ct = ca->ca_ct; - cardbus_chipset_tag_t cc = ct->ct_cc; - cardbus_function_tag_t cf = ct->ct_cf; bus_space_tag_t iot; bus_space_handle_t ioh; pcireg_t reg; @@ -181,20 +179,20 @@ } /* Enable the appropriate bits in the PCI CSR. */ - reg = cardbus_conf_read(cc, cf, ca->ca_tag, PCI_COMMAND_STATUS_REG); + reg = Cardbus_conf_read(ct, ca->ca_tag, PCI_COMMAND_STATUS_REG); reg &= ~(PCI_COMMAND_IO_ENABLE|PCI_COMMAND_MEM_ENABLE); reg |= csc->sc_csr; - cardbus_conf_write(cc, cf, ca->ca_tag, PCI_COMMAND_STATUS_REG, reg); + Cardbus_conf_write(ct, ca->ca_tag, PCI_COMMAND_STATUS_REG, reg); /* * Make sure the latency timer is set to some reasonable * value. */ - reg = cardbus_conf_read(cc, cf, ca->ca_tag, PCI_BHLC_REG); + reg = Cardbus_conf_read(ct, ca->ca_tag, PCI_BHLC_REG); if (PCI_LATTIMER(reg) < latency) { reg &= ~(PCI_LATTIMER_MASK << PCI_LATTIMER_SHIFT); reg |= (latency << PCI_LATTIMER_SHIFT); - cardbus_conf_write(cc, cf, ca->ca_tag, PCI_BHLC_REG, reg); + Cardbus_conf_write(ct, ca->ca_tag, PCI_BHLC_REG, reg); } ASC_SET_CHIP_CONTROL(iot, ioh, ASC_CC_HALT); @@ -218,7 +216,7 @@ /* * Establish the interrupt. */ - sc->sc_ih = cardbus_intr_establish(cc, cf, ca->ca_intrline, IPL_BIO, + sc->sc_ih = Cardbus_intr_establish(ct, ca->ca_intrline, IPL_BIO, adv_intr, sc); if (sc->sc_ih == NULL) { aprint_error_dev(&sc->sc_dev, @@ -245,8 +243,7 @@ return rv; if (sc->sc_ih) { - cardbus_intr_disestablish(csc->sc_ct->ct_cc, - csc->sc_ct->ct_cf, sc->sc_ih); + Cardbus_intr_disestablish(csc->sc_ct, sc->sc_ih); sc->sc_ih = 0; } Index: src/sys/dev/cardbus/ahc_cardbus.c diff -u src/sys/dev/cardbus/ahc_cardbus.c:1.33 src/sys/dev/cardbus/ahc_cardbus.c:1.34 --- src/sys/dev/cardbus/ahc_cardbus.c:1.33 Fri Feb 26 00:57:01 2010 +++ src/sys/dev/cardbus/ahc_cardbus.c Thu Mar 18 20:54:56 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: ahc_cardbus.c,v 1.33 2010/02/26 00:57:01 dyoung Exp $ */ +/* $NetBSD: ahc_cardbus.c,v 1.34 2010/03/18 20:54:56 dyoung Exp $ */ /*- * Copyright (c) 2000, 2005 The NetBSD Foundation, Inc. @@ -38,7 +38,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ahc_cardbus.c,v 1.33 2010/02/26 00:57:01 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ahc_cardbus.c,v 1.34 2010/03/18 20:54:56 dyoung Exp $"); #include "opt_ahc_cardbus.h" @@ -110,8 +110,6 @@ struct ahc_cardbus_softc *csc = device_private(self); struct ahc_softc *ahc = &csc->sc_ahc; cardbus_devfunc_t ct = ca->ca_ct; - cardbus_chipset_tag_t cc = ct->ct_cc; - cardbus_function_tag_t cf = ct->ct_cf; bus_space_tag_t bst; bus_space_handle_t bsh; pcireg_t reg; @@ -146,20 +144,20 @@ } /* Enable the appropriate bits in the PCI CSR. */ - reg = cardbus_conf_read(cc, cf, ca->ca_tag, PCI_COMMAND_STATUS_REG); + reg = Cardbus_conf_read(ct, ca->ca_tag, PCI_COMMAND_STATUS_REG); reg &= ~(PCI_COMMAND_IO_ENABLE|PCI_COMMAND_MEM_ENABLE); reg |= csc->sc_csr; - cardbus_conf_write(cc, cf, ca->ca_tag, PCI_COMMAND_STATUS_REG, reg); + Cardbus_conf_write(ct, ca->ca_tag, PCI_COMMAND_STATUS_REG, reg); /* * Make sure the latency timer is set to some reasonable * value. */ - reg = cardbus_conf_read(cc, cf, ca->ca_tag, PCI_BHLC_REG); + reg = Cardbus_conf_read(ct, ca->ca_tag, PCI_BHLC_REG); if (PCI_LATTIMER(reg) < 0x20) { reg &= ~(PCI_LATTIMER_MASK << PCI_LATTIMER_SHIFT); reg |= (0x20 << PCI_LATTIMER_SHIFT); - cardbus_conf_write(cc, cf, ca->ca_tag, PCI_BHLC_REG, reg); + Cardbus_conf_write(ct, ca->ca_tag, PCI_BHLC_REG, reg); } ahc_set_name(ahc, device_xname(ahc->sc_dev)); @@ -194,7 +192,7 @@ /* * Establish the interrupt. */ - ahc->ih = cardbus_intr_establish(cc, cf, ca->ca_intrline, IPL_BIO, + ahc->ih = Cardbus_intr_establish(ct, ca->ca_intrline, IPL_BIO, ahc_intr, ahc); if (ahc->ih == NULL) { printf("%s: unable to establish interrupt\n", @@ -262,8 +260,7 @@ return rv; if (ahc->ih) { - cardbus_intr_disestablish(csc->sc_ct->ct_cc, - csc->sc_ct->ct_cf, ahc->ih); + Cardbus_intr_disestablish(csc->sc_ct, ahc->ih); ahc->ih = 0; } Index: src/sys/dev/cardbus/com_cardbus.c diff -u src/sys/dev/cardbus/com_cardbus.c:1.28 src/sys/dev/cardbus/com_cardbus.c:1.29 --- src/sys/dev/cardbus/com_cardbus.c:1.28 Fri Feb 26 00:57:01 2010 +++ src/sys/dev/cardbus/com_cardbus.c Thu Mar 18 20:54:56 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: com_cardbus.c,v 1.28 2010/02/26 00:57:01 dyoung Exp $ */ +/* $NetBSD: com_cardbus.c,v 1.29 2010/03/18 20:54:56 dyoung Exp $ */ /* * Copyright (c) 2000 Johan Danielsson @@ -40,7 +40,7 @@ updated below. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: com_cardbus.c,v 1.28 2010/02/26 00:57:01 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: com_cardbus.c,v 1.29 2010/03/18 20:54:56 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -291,15 +291,13 @@ { struct com_cardbus_softc *csc = (struct com_cardbus_softc*)sc; cardbus_devfunc_t ct = csc->cc_ct; - cardbus_chipset_tag_t cc = ct->ct_cc; - cardbus_function_tag_t cf = ct->ct_cf; Cardbus_function_enable(ct); com_cardbus_setup(csc); /* establish the interrupt. */ - csc->cc_ih = cardbus_intr_establish(cc, cf, csc->cc_intrline, + csc->cc_ih = Cardbus_intr_establish(ct, csc->cc_intrline, IPL_SERIAL, comintr, sc); if (csc->cc_ih == NULL) { aprint_error_dev(DEVICET(csc), @@ -315,10 +313,8 @@ { struct com_cardbus_softc *csc = (struct com_cardbus_softc*)sc; cardbus_devfunc_t ct = csc->cc_ct; - cardbus_chipset_tag_t cc = ct->ct_cc; - cardbus_function_tag_t cf = ct->ct_cf; - cardbus_intr_disestablish(cc, cf, csc->cc_ih); + Cardbus_intr_disestablish(ct, csc->cc_ih); csc->cc_ih = NULL; Cardbus_function_disable(ct); @@ -336,7 +332,7 @@ return error; if (csc->cc_ih != NULL) - cardbus_intr_disestablish(ct->ct_cc, ct->ct_cf, csc->cc_ih); + Cardbus_intr_disestablish(ct, csc->cc_ih); Cardbus_mapreg_unmap(csc->cc_ct, csc->cc_reg, sc->sc_regs.cr_iot, sc->sc_regs.cr_ioh, csc->cc_size); Index: src/sys/dev/cardbus/siisata_cardbus.c diff -u src/sys/dev/cardbus/siisata_cardbus.c:1.11 src/sys/dev/cardbus/siisata_cardbus.c:1.12 --- src/sys/dev/cardbus/siisata_cardbus.c:1.11 Thu Mar 4 16:40:54 2010 +++ src/sys/dev/cardbus/siisata_cardbus.c Thu Mar 18 20:54:56 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: siisata_cardbus.c,v 1.11 2010/03/04 16:40:54 dyoung Exp $ */ +/* $NetBSD: siisata_cardbus.c,v 1.12 2010/03/18 20:54:56 dyoung Exp $ */ /* Id: siisata_pci.c,v 1.11 2008/05/21 16:20:11 jakllsch Exp */ /* @@ -52,7 +52,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: siisata_cardbus.c,v 1.11 2010/03/04 16:40:54 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: siisata_cardbus.c,v 1.12 2010/03/18 20:54:56 dyoung Exp $"); #include <sys/types.h> #include <sys/malloc.h> @@ -74,10 +74,8 @@ pcitag_t sc_tag; bus_space_tag_t sc_iot; /* CardBus I/O space tag */ bus_space_tag_t sc_memt; /* CardBus MEM space tag */ -#if rbus rbus_tag_t sc_rbus_iot; /* CardBus i/o rbus tag */ rbus_tag_t sc_rbus_memt; /* CardBus mem rbus tag */ -#endif bus_size_t sc_grsize; bus_size_t sc_prsize; @@ -161,10 +159,8 @@ csc->sc_iot = ca->ca_iot; csc->sc_memt = ca->ca_memt; -#if rbus csc->sc_rbus_iot = ca->ca_rbus_iot; csc->sc_rbus_memt = ca->ca_rbus_memt; -#endif pci_devinfo(ca->ca_id, ca->ca_class, 0, devinfo, sizeof(devinfo)); aprint_naive(": SATA-II HBA\n"); Index: src/sys/dev/cardbus/uhci_cardbus.c diff -u src/sys/dev/cardbus/uhci_cardbus.c:1.16 src/sys/dev/cardbus/uhci_cardbus.c:1.17 --- src/sys/dev/cardbus/uhci_cardbus.c:1.16 Fri Feb 26 00:57:02 2010 +++ src/sys/dev/cardbus/uhci_cardbus.c Thu Mar 18 20:54:56 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: uhci_cardbus.c,v 1.16 2010/02/26 00:57:02 dyoung Exp $ */ +/* $NetBSD: uhci_cardbus.c,v 1.17 2010/03/18 20:54:56 dyoung Exp $ */ /* * Copyright (c) 1998-2005 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: uhci_cardbus.c,v 1.16 2010/02/26 00:57:02 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uhci_cardbus.c,v 1.17 2010/03/18 20:54:56 dyoung Exp $"); #include "ehci_cardbus.h" @@ -122,11 +122,6 @@ sc->sc_tag = tag; sc->sc.sc_bus.dmatag = ca->ca_dmat; -#if rbus -#else -XXX (ct->ct_cf->cardbus_io_open)(cc, 0, iob, iob + 0x40); -#endif - /* Enable the device. */ csr = Cardbus_conf_read(ct, tag, PCI_COMMAND_STATUS_REG); Cardbus_conf_write(ct, tag, PCI_COMMAND_STATUS_REG, @@ -136,7 +131,7 @@ bus_space_write_2(sc->sc.iot, sc->sc.ioh, UHCI_INTR, 0); /* Map and establish the interrupt. */ - sc->sc_ih = cardbus_intr_establish(cc, cf, ca->ca_intrline, + sc->sc_ih = Cardbus_intr_establish(ct, ca->ca_intrline, IPL_USB, uhci_intr, sc); if (sc->sc_ih == NULL) { printf("%s: couldn't establish interrupt\n", devname); @@ -175,7 +170,7 @@ printf("%s: init failed, error=%d\n", devname, r); /* Avoid spurious interrupts. */ - cardbus_intr_disestablish(sc->sc_cc, sc->sc_cf, sc->sc_ih); + Cardbus_intr_disestablish(ct, sc->sc_ih); sc->sc_ih = NULL; return; @@ -200,7 +195,7 @@ if (rv) return (rv); if (sc->sc_ih != NULL) { - cardbus_intr_disestablish(sc->sc_cc, sc->sc_cf, sc->sc_ih); + Cardbus_intr_disestablish(ct, sc->sc_ih); sc->sc_ih = NULL; } if (sc->sc.sc_size) {