summaryrefslogtreecommitdiffstats
path: root/sys/dev/uart
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2004-12-08 05:46:54 +0000
committermarcel <marcel@FreeBSD.org>2004-12-08 05:46:54 +0000
commitf005fa80bc6d148affdb486e6534c16566455f7d (patch)
tree954f155b95562af6f60e8d1d37a3510e25606a64 /sys/dev/uart
parent2c929f635e2ee240aed007e68c7125eeb4f0426f (diff)
downloadFreeBSD-src-f005fa80bc6d148affdb486e6534c16566455f7d.zip
FreeBSD-src-f005fa80bc6d148affdb486e6534c16566455f7d.tar.gz
Don't obtain the HCDP address directly from the bootinfo structure.
Use a function to keep the details at arms length from uart(4).
Diffstat (limited to 'sys/dev/uart')
-rw-r--r--sys/dev/uart/uart_cpu_ia64.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/uart/uart_cpu_ia64.c b/sys/dev/uart/uart_cpu_ia64.c
index 6c3f380..74a9300 100644
--- a/sys/dev/uart/uart_cpu_ia64.c
+++ b/sys/dev/uart/uart_cpu_ia64.c
@@ -31,9 +31,9 @@ __FBSDID("$FreeBSD$");
#include <sys/systm.h>
#include <sys/bus.h>
-#include <machine/bootinfo.h>
#include <machine/bus.h>
#include <machine/dig64.h>
+#include <machine/md_var.h>
#include <machine/vmparam.h>
#include <dev/uart/uart.h>
@@ -60,13 +60,15 @@ uart_cpu_getdev(int devtype, struct uart_devinfo *di)
struct dig64_hcdp_table *tbl;
struct dig64_hcdp_entry *ent;
bus_addr_t addr;
+ uint64_t hcdp;
unsigned int i;
/*
* Use the DIG64 HCDP table if present.
*/
- if (bootinfo.bi_hcdp != 0) {
- tbl = (void*)IA64_PHYS_TO_RR7(bootinfo.bi_hcdp);
+ hcdp = ia64_get_hcdp();
+ if (hcdp != 0) {
+ tbl = (void*)IA64_PHYS_TO_RR7(hcdp);
for (i = 0; i < tbl->entries; i++) {
ent = tbl->entry + i;
OpenPOWER on IntegriCloud