summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2017-01-15 18:19:01 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2017-01-15 18:19:01 +0000
commit91fc89a5039361367970f959cf8880ef42c7f518 (patch)
tree6a091c5643b058197aa6acf56ef40606c7650c1a
parenta7753a31aaeaec47bed5cb961cf6ba324ec3c82e (diff)
Make sure to also backup and restore the a4x bus space map function
so that we can initialize the console early.
-rw-r--r--sys/arch/arm64/arm64/machdep.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/arch/arm64/arm64/machdep.c b/sys/arch/arm64/arm64/machdep.c
index cac9895e73d..90bfb50398a 100644
--- a/sys/arch/arm64/arm64/machdep.c
+++ b/sys/arch/arm64/arm64/machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: machdep.c,v 1.3 2017/01/13 09:18:11 fcambus Exp $ */
+/* $OpenBSD: machdep.c,v 1.4 2017/01/15 18:19:00 patrick Exp $ */
/*
* Copyright (c) 2014 Patrick Wildt <patrick@blueri.se>
*
@@ -769,6 +769,8 @@ initarm(struct arm64_bootparams *abp)
void *fdt = NULL;
int (*map_func_save)(bus_space_tag_t, bus_addr_t, bus_size_t, int,
bus_space_handle_t *);
+ int (*map_a4x_func_save)(bus_space_tag_t, bus_addr_t, bus_size_t, int,
+ bus_space_handle_t *);
#if 0
gdb_w = 1;
@@ -929,12 +931,16 @@ int pmap_bootstrap_bs_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size,
int flags, bus_space_handle_t *bshp);
map_func_save = arm64_bs_tag._space_map;
+ map_a4x_func_save = arm64_a4x_bs_tag._space_map;
+
arm64_bs_tag._space_map = pmap_bootstrap_bs_map;
+ arm64_a4x_bs_tag._space_map = pmap_bootstrap_bs_map;
// cninit
consinit();
arm64_bs_tag._space_map = map_func_save;
+ arm64_a4x_bs_tag._space_map = map_a4x_func_save;
/* XXX */
pmap_avail_fixup();