summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravg <avg@FreeBSD.org>2016-12-14 16:30:53 +0000
committeravg <avg@FreeBSD.org>2016-12-14 16:30:53 +0000
commite82165207d24ba835f93b6863c27dd4c9b50551c (patch)
tree2b10382b2750beec94536f0c0645b16360665b45
parentda47d73e326d7119334fd2a8c6715d757f95fc18 (diff)
downloadFreeBSD-src-e82165207d24ba835f93b6863c27dd4c9b50551c.zip
FreeBSD-src-e82165207d24ba835f93b6863c27dd4c9b50551c.tar.gz
MFC r309092: fwohci: report whether PhysicalUpperBound register is implemented
-rw-r--r--sys/dev/firewire/fwohci.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/dev/firewire/fwohci.c b/sys/dev/firewire/fwohci.c
index ae753d5..a898e08 100644
--- a/sys/dev/firewire/fwohci.c
+++ b/sys/dev/firewire/fwohci.c
@@ -1874,6 +1874,16 @@ fwohci_intr_core(struct fwohci_softc *sc, uint32_t stat, int count)
OWRITE(sc, OHCI_PREQLO, 0xffffffff);
/* 0 to 4GB region */
OWRITE(sc, OHCI_PREQUPPER, 0x10000);
+ if (OREAD(sc, OHCI_PREQUPPER) !=
+ (prequpper & 0xffffffff)) {
+ device_printf(fc->dev,
+ "PhysicalUpperBound register is not "
+ "implemented. Physical memory access "
+ "is limited to the first 4GB\n");
+ device_printf(fc->dev,
+ "PhysicalUpperBound = 0x%08x\n",
+ OREAD(sc, OHCI_PREQUPPER));
+ }
}
/* Set ATRetries register */
OWRITE(sc, OHCI_ATRETRY, 1<<(13+16) | 0xfff);
OpenPOWER on IntegriCloud