summaryrefslogtreecommitdiff
path: root/sys/dev/eisa
diff options
context:
space:
mode:
authordyoung <dyoung@NetBSD.org>2010-03-22 23:01:10 +0000
committerdyoung <dyoung@NetBSD.org>2010-03-22 23:01:10 +0000
commit3feffcb73617a32b81e32b4aeee7be5a054dfbea (patch)
tree1abd1af8c03ec09e314a832ab1ae57354594ea1c /sys/dev/eisa
parente4be36cf6a80b006d12617a4e17e8a9783aad5af (diff)
Set/test sc_csr_memmapped instead of comparing bus_space_tag_t's.
Diffstat (limited to 'sys/dev/eisa')
-rw-r--r--sys/dev/eisa/if_fea.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/dev/eisa/if_fea.c b/sys/dev/eisa/if_fea.c
index f8ef3b561be..c1c3372a549 100644
--- a/sys/dev/eisa/if_fea.c
+++ b/sys/dev/eisa/if_fea.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_fea.c,v 1.43 2010/01/18 19:00:58 pooka Exp $ */
+/* $NetBSD: if_fea.c,v 1.44 2010/03/22 23:01:10 dyoung Exp $ */
/*-
* Copyright (c) 1995, 1996 Matt Thomas <matt@3am-software.com>
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_fea.c,v 1.43 2010/01/18 19:00:58 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_fea.c,v 1.44 2010/03/22 23:01:10 dyoung Exp $");
#include "opt_inet.h"
@@ -164,7 +164,7 @@ pdq_eisa_devinit(
data = PDQ_OS_IORD_8(sc->sc_iotag, sc->sc_iobase, PDQ_EISA_BURST_HOLDOFF);
#if defined(__NetBSD__)
PDQ_OS_IOWR_8(sc->sc_iotag, sc->sc_iobase, PDQ_EISA_BURST_HOLDOFF,
- sc->sc_iotag == sc->sc_csrtag ? data & ~1 : data | 1);
+ !sc->sc_csr_memmapped ? data & ~1 : data | 1);
#elif defined(PDQ_IOMAPPED)
PDQ_OS_IOWR_8(sc->sc_iotag, sc->sc_iobase, PDQ_EISA_BURST_HOLDOFF, data & ~1);
#else
@@ -477,6 +477,7 @@ pdq_eisa_attach(
pdq_eisa_subprobe(sc->sc_iotag, sc->sc_iobase, &maddr, &msiz, &irq);
if (maddr != 0 && msiz != 0) {
+ sc->sc_csr_memmapped = true;
sc->sc_csrtag = ea->ea_memt;
if (bus_space_map(sc->sc_csrtag, maddr, msiz, 0, &sc->sc_membase)) {
bus_space_unmap(sc->sc_iotag, sc->sc_iobase, EISA_SLOT_SIZE);
@@ -486,6 +487,7 @@ pdq_eisa_attach(
return;
}
} else {
+ sc->sc_csr_memmapped = false;
sc->sc_csrtag = sc->sc_iotag;
sc->sc_membase = sc->sc_iobase;
}
@@ -518,7 +520,7 @@ pdq_eisa_attach(
sc->sc_ats = shutdownhook_establish((void (*)(void *)) pdq_hwreset, sc->sc_pdq);
if (sc->sc_ats == NULL)
aprint_error_dev(self, "warning: couldn't establish shutdown hook\n");
- if (sc->sc_csrtag != sc->sc_iotag)
+ if (sc->sc_csr_memmapped)
printf("%s: using iomem 0x%x-0x%x\n", device_xname(&sc->sc_dev), maddr, maddr + msiz - 1);
if (intrstr != NULL)
printf("%s: interrupting at %s\n", device_xname(&sc->sc_dev), intrstr);