diff --git a/sys/arch/aarch64/aarch64/aarch64_machdep.c b/sys/arch/aarch64/aarch64/aarch64_machdep.c index c03b6ca..8f5a1fb 100644 --- a/sys/arch/aarch64/aarch64/aarch64_machdep.c +++ b/sys/arch/aarch64/aarch64/aarch64_machdep.c @@ -303,8 +303,6 @@ cpu_startup(void) /* Hello! */ banner(); - - bus_space_mallocok(); } void diff --git a/sys/arch/aarch64/aarch64/bus_dma.c b/sys/arch/aarch64/aarch64/bus_dma.c index b021010..24c2720 100644 --- a/sys/arch/aarch64/aarch64/bus_dma.c +++ b/sys/arch/aarch64/aarch64/bus_dma.c @@ -30,9 +30,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#define _AARCH64_BUS_DMA_PRIVATE +#define _ARM32_BUS_DMA_PRIVATE -#include "opt_bus_space.h" +#include "opt_arm_bus_space.h" #include __KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.98 2017/01/05 09:08:45 msaitoh Exp $"); diff --git a/sys/arch/aarch64/aarch64/bus_space.c b/sys/arch/aarch64/aarch64/bus_space.c index b3c5623..a7da3ba 100644 --- a/sys/arch/aarch64/aarch64/bus_space.c +++ b/sys/arch/aarch64/aarch64/bus_space.c @@ -43,7 +43,9 @@ __KERNEL_RCSID(1, "$NetBSD$"); bs_protos(generic) bs_protos(generic_dsb) -struct bus_space aarch64_generic_bs_tag = { +struct bus_space arm_generic_bs_tag = { + .bs_cookie = &arm_generic_bs_tag, + .bs_stride = 0, .bs_flags = 0, @@ -110,18 +112,6 @@ struct bus_space aarch64_generic_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, @@ -228,18 +218,6 @@ struct bus_space aarch64_generic_dsb_bs_tag = { .bs_sm_4 = generic_dsb_bs_sm_4, .bs_sm_8 = generic_dsb_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_dsb_bs_r_1, @@ -279,7 +257,9 @@ struct bus_space aarch64_generic_dsb_bs_tag = { #endif }; -struct bus_space aarch64_generic_a4x_bs_tag = { +struct bus_space arm_generic_a4x_bs_tag = { + .bs_cookie = &arm_generic_a4x_bs_tag, + .bs_stride = 2, .bs_flags = 0, @@ -346,18 +326,6 @@ struct bus_space aarch64_generic_a4x_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, @@ -464,18 +432,6 @@ struct bus_space aarch64_generic_a4x_dsb_bs_tag = { .bs_sm_4 = generic_dsb_bs_sm_4, .bs_sm_8 = generic_dsb_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_dsb_bs_r_1, @@ -622,119 +578,3 @@ generic_bs_free(void *t, bus_space_handle_t bsh, bus_size_t size) panic("%s(): not implemented\n", __func__); } -int -generic_bs_pe_1(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint8_t *datap) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - *datap = generic_dsb_bs_r_1(t, bsh, offset); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_pe_2(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint16_t *datap) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - *datap = generic_dsb_bs_r_2(t, bsh, offset); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_pe_4(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint32_t *datap) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - *datap = generic_dsb_bs_r_4(t, bsh, offset); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_pe_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t *datap) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - *datap = generic_dsb_bs_r_8(t, bsh, offset); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_po_1(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint8_t data) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - generic_dsb_bs_w_1(t, bsh, offset, data); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_po_2(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint16_t data) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - generic_dsb_bs_w_2(t, bsh, offset, data); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_po_4(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint32_t data) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - generic_dsb_bs_w_4(t, bsh, offset, data); - cpu_unset_onfault(); - } - return error; -} - -int -generic_bs_po_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t data) -{ - struct faultbuf fb; - int error; - - if ((error = cpu_set_onfault(&fb)) == 0) { - generic_dsb_bs_w_8(t, bsh, offset, data); - cpu_unset_onfault(); - } - return error; -} - -void -bus_space_mallocok() -{ -} diff --git a/sys/arch/aarch64/broadcom/bcm2835_dma.c b/sys/arch/aarch64/broadcom/bcm2835_dma.c index 54b6182..5f312b4 100644 --- a/sys/arch/aarch64/broadcom/bcm2835_dma.c +++ b/sys/arch/aarch64/broadcom/bcm2835_dma.c @@ -32,7 +32,7 @@ #include __KERNEL_RCSID(0, "$NetBSD: bcm2835_dma.c,v 1.2 2012/09/18 05:47:27 matt Exp $"); -#define _AARCH64_BUS_DMA_PRIVATE +#define _ARM32_BUS_DMA_PRIVATE #include #include diff --git a/sys/arch/aarch64/broadcom/bcm2835_space.c b/sys/arch/aarch64/broadcom/bcm2835_space.c index 48a2b34..8fc5f1d 100644 --- a/sys/arch/aarch64/broadcom/bcm2835_space.c +++ b/sys/arch/aarch64/broadcom/bcm2835_space.c @@ -51,6 +51,8 @@ bs_protos(generic); bs_protos(bs_notimpl); struct bus_space bcm2835_bs_tag = { + .bs_cookie = &bcm2835_bs_tag, + /* stride, flags */ .bs_stride = 0, .bs_flags = 0, @@ -118,18 +120,6 @@ struct bus_space bcm2835_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, @@ -170,6 +160,8 @@ struct bus_space bcm2835_bs_tag = { }; struct bus_space bcm2835_a4x_bs_tag = { + .bs_cookie = &bcm2835_a4x_bs_tag, + /* stride, flags */ .bs_stride = 2, .bs_flags = 0, @@ -237,18 +229,6 @@ struct bus_space bcm2835_a4x_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, @@ -290,6 +270,8 @@ struct bus_space bcm2835_a4x_bs_tag = { struct bus_space bcm2836_bs_tag = { + .bs_cookie = &bcm2836_bs_tag, + /* stride, flags */ .bs_stride = 0, .bs_flags = 0, @@ -357,18 +339,6 @@ struct bus_space bcm2836_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, @@ -409,6 +379,8 @@ struct bus_space bcm2836_bs_tag = { }; struct bus_space bcm2836_a4x_bs_tag = { + .bs_cookie = &bcm2836_a4x_bs_tag, + /* stride, flags */ .bs_stride = 2, .bs_flags = 0, @@ -476,18 +448,6 @@ struct bus_space bcm2836_a4x_bs_tag = { .bs_sm_4 = generic_bs_sm_4, .bs_sm_8 = generic_bs_sm_8, - /* peek */ - .bs_pe_1 = generic_bs_pe_1, - .bs_pe_2 = generic_bs_pe_2, - .bs_pe_4 = generic_bs_pe_4, - .bs_pe_8 = generic_bs_pe_8, - - /* poke */ - .bs_po_1 = generic_bs_po_1, - .bs_po_2 = generic_bs_po_2, - .bs_po_4 = generic_bs_po_4, - .bs_po_8 = generic_bs_po_8, - #ifdef __BUS_SPACE_HAS_STREAM_METHODS /* read stream */ .bs_r_1_s = generic_bs_r_1, diff --git a/sys/arch/aarch64/conf/files.aarch64 b/sys/arch/aarch64/conf/files.aarch64 index d50f124..98a1da1 100644 --- a/sys/arch/aarch64/conf/files.aarch64 +++ b/sys/arch/aarch64/conf/files.aarch64 @@ -22,8 +22,8 @@ defflag opt_arm_debug.h VERBOSE_INIT_ARM defflag opt_arm_timer.h __HAVE_GENERIC_CPU_INITCLOCKS # Board-specific bus_space(9)/bus_dma(9) definitions -defflag opt_bus_space.h __BUS_SPACE_HAS_STREAM_METHODS - __BUS_DMA_NEEDS_BOUNCE +defflag opt_arm_bus_space.h __BUS_SPACE_HAS_STREAM_METHODS + _ARM32_NEED_BUS_DMA_BOUNCE BUSDMA_COUNTERS # FP support diff --git a/sys/arch/aarch64/include/bus_defs.h b/sys/arch/aarch64/include/bus_defs.h index 5c737e8..8b0a164 100644 --- a/sys/arch/aarch64/include/bus_defs.h +++ b/sys/arch/aarch64/include/bus_defs.h @@ -356,7 +356,7 @@ struct arm32_bus_dmamap { #define _BUS_DMA_BUFTYPE_UIO 3 #define _BUS_DMA_BUFTYPE_RAW 4 -#ifdef _AARCH64_BUS_DMA_PRIVATE +#ifdef _ARM32_BUS_DMA_PRIVATE /* * Cookie used for bounce buffers. A pointer to one of these it stashed in * the DMA map. @@ -392,7 +392,7 @@ struct aarch64_bus_dma_cookie { /* id_flags */ #define _BUS_DMA_IS_BOUNCING 0x04 /* is bouncing current xfer */ #define _BUS_DMA_HAS_BOUNCE 0x02 /* has bounce buffers */ -#endif /* _AARCH64_BUS_DMA_PRIVATE */ +#endif /* _ARM32_BUS_DMA_PRIVATE */ #define _BUS_DMA_MIGHT_NEED_BOUNCE 0x01 /* may need bounce buffers */ #endif /* _AARCH64_BUS_DEFS_H_ */ diff --git a/sys/arch/aarch64/include/bus_funcs.h b/sys/arch/aarch64/include/bus_funcs.h index aca570a..fa0b4bf 100644 --- a/sys/arch/aarch64/include/bus_funcs.h +++ b/sys/arch/aarch64/include/bus_funcs.h @@ -1,344 +1,3 @@ -/* $NetBSD$ */ +/* $NetBSD: bus_funcs.h,v 1.6 2014/01/29 00:42:15 matt Exp $ */ -/* - * Copyright (c) 2017 Ryo Shimizu - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING - * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef _AARCH64_BUS_FUNCS_H_ -#define _AARCH64_BUS_FUNCS_H_ - -void bus_space_mallocok(void); - -#define BUSOP(t, op, args...) (*(t)->op)((t), ## args) - -/* Bus Space macros */ -#define bus_space_map(t, args...) BUSOP(t, bs_map, ## args) -#define bus_space_unmap(t, args...) BUSOP(t, bs_unmap, ## args) -#define bus_space_subregion(t, args...) BUSOP(t, bs_subregion, ## args) -#define bus_space_alloc(t, args...) BUSOP(t, bs_alloc, ## args) -#define bus_space_free(t, args...) BUSOP(t, bs_free, ## args) -#define bus_space_vaddr(t, args...) BUSOP(t, bs_vaddr, ## args) -#define bus_space_mmap(t, args...) BUSOP(t, bs_mmap, ## args) -#define bus_space_barrier(t, args...) BUSOP(t, bs_barrier, ## args) - -#define bus_space_read_1(t, args...) BUSOP(t, bs_r_1, ## args) -#define bus_space_read_2(t, args...) BUSOP(t, bs_r_2, ## args) -#define bus_space_read_4(t, args...) BUSOP(t, bs_r_4, ## args) -#define bus_space_read_8(t, args...) BUSOP(t, bs_r_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_read_stream_1(t, args...) BUSOP(t, bs_r_s_1, ## args) -#define bus_space_read_stream_2(t, args...) BUSOP(t, bs_r_s_2, ## args) -#define bus_space_read_stream_4(t, args...) BUSOP(t, bs_r_s_4, ## args) -#define bus_space_read_stream_8(t, args...) BUSOP(t, bs_r_s_8, ## args) -#endif - -#define bus_space_read_multi_1(t, args...) BUSOP(t, bs_rm_1, ## args) -#define bus_space_read_multi_2(t, args...) BUSOP(t, bs_rm_2, ## args) -#define bus_space_read_multi_4(t, args...) BUSOP(t, bs_rm_4, ## args) -#define bus_space_read_multi_8(t, args...) BUSOP(t, bs_rm_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_read_multi_stream_1(t, args...) BUSOP(t, bs_rm_s_1, ## args) -#define bus_space_read_multi_stream_2(t, args...) BUSOP(t, bs_rm_s_2, ## args) -#define bus_space_read_multi_stream_4(t, args...) BUSOP(t, bs_rm_s_4, ## args) -#define bus_space_read_multi_stream_8(t, args...) BUSOP(t, bs_rm_s_8, ## args) -#endif - -#define bus_space_read_region_1(t, args...) BUSOP(t, bs_rr_1, ## args) -#define bus_space_read_region_2(t, args...) BUSOP(t, bs_rr_2, ## args) -#define bus_space_read_region_4(t, args...) BUSOP(t, bs_rr_4, ## args) -#define bus_space_read_region_8(t, args...) BUSOP(t, bs_rr_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_read_region_stream_1(t, args...) BUSOP(t, bs_rr_s_1, ## args) -#define bus_space_read_region_stream_2(t, args...) BUSOP(t, bs_rr_s_2, ## args) -#define bus_space_read_region_stream_4(t, args...) BUSOP(t, bs_rr_s_4, ## args) -#define bus_space_read_region_stream_8(t, args...) BUSOP(t, bs_rr_s_8, ## args) -#endif - -#define bus_space_write_1(t, args...) BUSOP(t, bs_w_1, ## args) -#define bus_space_write_2(t, args...) BUSOP(t, bs_w_2, ## args) -#define bus_space_write_4(t, args...) BUSOP(t, bs_w_4, ## args) -#define bus_space_write_8(t, args...) BUSOP(t, bs_w_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_write_stream_1(t, args...) BUSOP(t, bs_w_s_1, ## args) -#define bus_space_write_stream_2(t, args...) BUSOP(t, bs_w_s_2, ## args) -#define bus_space_write_stream_4(t, args...) BUSOP(t, bs_w_s_4, ## args) -#define bus_space_write_stream_8(t, args...) BUSOP(t, bs_w_s_8, ## args) -#endif - -#define bus_space_write_multi_1(t, args...) BUSOP(t, bs_wm_1, ## args) -#define bus_space_write_multi_2(t, args...) BUSOP(t, bs_wm_2, ## args) -#define bus_space_write_multi_4(t, args...) BUSOP(t, bs_wm_4, ## args) -#define bus_space_write_multi_8(t, args...) BUSOP(t, bs_wm_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_write_multi_stream_1(t, args...) BUSOP(t, bs_wm_s_1, ## args) -#define bus_space_write_multi_stream_2(t, args...) BUSOP(t, bs_wm_s_2, ## args) -#define bus_space_write_multi_stream_4(t, args...) BUSOP(t, bs_wm_s_4, ## args) -#define bus_space_write_multi_stream_8(t, args...) BUSOP(t, bs_wm_s_8, ## args) -#endif - -#define bus_space_write_region_1(t, args...) BUSOP(t, bs_wr_1, ## args) -#define bus_space_write_region_2(t, args...) BUSOP(t, bs_wr_2, ## args) -#define bus_space_write_region_4(t, args...) BUSOP(t, bs_wr_4, ## args) -#define bus_space_write_region_8(t, args...) BUSOP(t, bs_wr_8, ## args) -#ifdef __BUS_SPACE_HAS_STREAM_METHODS -#define bus_space_write_region_stream_1(t, args...) BUSOP(t, bs_wr_s_1, ## args) -#define bus_space_write_region_stream_2(t, args...) BUSOP(t, bs_wr_s_2, ## args) -#define bus_space_write_region_stream_4(t, args...) BUSOP(t, bs_wr_s_4, ## args) -#define bus_space_write_region_stream_8(t, args...) BUSOP(t, bs_wr_s_8, ## args) -#endif - -#define bus_space_set_multi_1(t, args...) BUSOP(t, bs_sm_1, ## args) -#define bus_space_set_multi_2(t, args...) BUSOP(t, bs_sm_2, ## args) -#define bus_space_set_multi_4(t, args...) BUSOP(t, bs_sm_4, ## args) -#define bus_space_set_multi_8(t, args...) BUSOP(t, bs_sm_8, ## args) - -#define bus_space_set_region_1(t, args...) BUSOP(t, bs_sr_1, ## args) -#define bus_space_set_region_2(t, args...) BUSOP(t, bs_sr_2, ## args) -#define bus_space_set_region_4(t, args...) BUSOP(t, bs_sr_4, ## args) -#define bus_space_set_region_8(t, args...) BUSOP(t, bs_sr_8, ## args) - -#define bus_space_copy_region_1(t, args...) BUSOP(t, bs_c_1, ## args) -#define bus_space_copy_region_2(t, args...) BUSOP(t, bs_c_2, ## args) -#define bus_space_copy_region_4(t, args...) BUSOP(t, bs_c_4, ## args) -#define bus_space_copy_region_8(t, args...) BUSOP(t, bs_c_8, ## args) - -#define bus_space_peek_1(t, args...) BUSOP(t, bs_pe_1, ## args) -#define bus_space_peek_2(t, args...) BUSOP(t, bs_pe_2, ## args) -#define bus_space_peek_4(t, args...) BUSOP(t, bs_pe_4, ## args) -#define bus_space_peek_8(t, args...) BUSOP(t, bs_pe_8, ## args) - -#define bus_space_poke_1(t, args...) BUSOP(t, bs_po_1, ## args) -#define bus_space_poke_2(t, args...) BUSOP(t, bs_po_2, ## args) -#define bus_space_poke_4(t, args...) BUSOP(t, bs_po_4, ## args) -#define bus_space_poke_8(t, args...) BUSOP(t, bs_po_8, ## args) - - -/* - * Macros to provide prototypes for all the functions used in the - * bus_space structure - */ -#define bs_protos(f) \ - int f##_bs_map(void *, bus_addr_t, bus_size_t, int, bus_space_handle_t *); \ - void f##_bs_unmap(void *, bus_space_handle_t, bus_size_t); \ - int f##_bs_subregion(void *, bus_space_handle_t, bus_size_t, \ - bus_size_t, bus_space_handle_t *); \ - int f##_bs_alloc(void *, bus_addr_t, bus_addr_t, bus_size_t, bus_size_t, \ - bus_size_t, int, bus_addr_t *, bus_space_handle_t *); \ - void f##_bs_free(void *, bus_space_handle_t, bus_size_t); \ - void * f##_bs_vaddr(void *, bus_space_handle_t); \ - paddr_t f##_bs_mmap(void *, bus_addr_t, off_t, int, int); \ - void f##_bs_barrier(void *, bus_space_handle_t, bus_size_t, bus_size_t, int); \ - uint8_t f##_bs_r_1(void *, bus_space_handle_t, bus_size_t); \ - uint16_t f##_bs_r_2(void *, bus_space_handle_t, bus_size_t); \ - uint32_t f##_bs_r_4(void *, bus_space_handle_t, bus_size_t); \ - uint64_t f##_bs_r_8(void *, bus_space_handle_t, bus_size_t); \ - uint16_t f##_bs_r_2_swap(void *, bus_space_handle_t, bus_size_t); \ - uint32_t f##_bs_r_4_swap(void *, bus_space_handle_t, bus_size_t); \ - uint64_t f##_bs_r_8_swap(void *, bus_space_handle_t, bus_size_t); \ - void f##_bs_w_1(void *, bus_space_handle_t, bus_size_t, uint8_t); \ - void f##_bs_w_2(void *, bus_space_handle_t, bus_size_t, uint16_t); \ - void f##_bs_w_4(void *, bus_space_handle_t, bus_size_t, uint32_t); \ - void f##_bs_w_8(void *, bus_space_handle_t, bus_size_t, uint64_t); \ - void f##_bs_w_2_swap(void *, bus_space_handle_t, bus_size_t, uint16_t); \ - void f##_bs_w_4_swap(void *, bus_space_handle_t, bus_size_t, uint32_t); \ - void f##_bs_w_8_swap(void *, bus_space_handle_t, bus_size_t, uint64_t); \ - void f##_bs_rm_1(void *, bus_space_handle_t, bus_size_t, \ - uint8_t *, bus_size_t); \ - void f##_bs_rm_2(void *, bus_space_handle_t, bus_size_t, \ - uint16_t *, bus_size_t); \ - void f##_bs_rm_4(void *, bus_space_handle_t, bus_size_t, \ - uint32_t *, bus_size_t); \ - void f##_bs_rm_8(void *, bus_space_handle_t, bus_size_t, \ - uint64_t *, bus_size_t); \ - void f##_bs_rm_2_swap(void *, bus_space_handle_t, bus_size_t, \ - uint16_t *, bus_size_t); \ - void f##_bs_rm_4_swap(void *, bus_space_handle_t, bus_size_t, \ - uint32_t *, bus_size_t); \ - void f##_bs_rm_8_swap(void *, bus_space_handle_t, bus_size_t, \ - uint64_t *, bus_size_t); \ - void f##_bs_wm_1(void *, bus_space_handle_t, bus_size_t, \ - const uint8_t *, bus_size_t); \ - void f##_bs_wm_2(void *, bus_space_handle_t, bus_size_t, \ - const uint16_t *, bus_size_t); \ - void f##_bs_wm_4(void *, bus_space_handle_t, bus_size_t, \ - const uint32_t *, bus_size_t); \ - void f##_bs_wm_8(void *, bus_space_handle_t, bus_size_t, \ - const uint64_t *, bus_size_t); \ - void f##_bs_wm_2_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint16_t *, bus_size_t); \ - void f##_bs_wm_4_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint32_t *, bus_size_t); \ - void f##_bs_wm_8_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint64_t *, bus_size_t); \ - void f##_bs_rr_1(void *, bus_space_handle_t, bus_size_t, \ - uint8_t *, bus_size_t); \ - void f##_bs_rr_2(void *, bus_space_handle_t, bus_size_t, \ - uint16_t *, bus_size_t); \ - void f##_bs_rr_4(void *, bus_space_handle_t, bus_size_t, \ - uint32_t *, bus_size_t); \ - void f##_bs_rr_8(void *, bus_space_handle_t, bus_size_t, \ - uint64_t *, bus_size_t); \ - void f##_bs_rr_2_swap(void *, bus_space_handle_t, bus_size_t, \ - uint16_t *, bus_size_t); \ - void f##_bs_rr_4_swap(void *, bus_space_handle_t, bus_size_t, \ - uint32_t *, bus_size_t); \ - void f##_bs_rr_8_swap(void *, bus_space_handle_t, bus_size_t, \ - uint64_t *, bus_size_t); \ - void f##_bs_wr_1(void *, bus_space_handle_t, bus_size_t, \ - const uint8_t *, bus_size_t); \ - void f##_bs_wr_2(void *, bus_space_handle_t, bus_size_t, \ - const uint16_t *, bus_size_t); \ - void f##_bs_wr_4(void *, bus_space_handle_t, bus_size_t, \ - const uint32_t *, bus_size_t); \ - void f##_bs_wr_8(void *, bus_space_handle_t, bus_size_t, \ - const uint64_t *, bus_size_t); \ - void f##_bs_wr_2_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint16_t *, bus_size_t); \ - void f##_bs_wr_4_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint32_t *, bus_size_t); \ - void f##_bs_wr_8_swap(void *, bus_space_handle_t, bus_size_t, \ - const uint64_t *, bus_size_t); \ - void f##_bs_sm_1(void *, bus_space_handle_t, bus_size_t, \ - uint8_t, bus_size_t); \ - void f##_bs_sm_2(void *, bus_space_handle_t, bus_size_t, \ - uint16_t, bus_size_t); \ - void f##_bs_sm_4(void *, bus_space_handle_t, bus_size_t, \ - uint32_t, bus_size_t); \ - void f##_bs_sm_8(void *, bus_space_handle_t, bus_size_t, \ - uint64_t, bus_size_t); \ - void f##_bs_sr_1(void *, bus_space_handle_t, bus_size_t, \ - uint8_t, bus_size_t); \ - void f##_bs_sr_2(void *, bus_space_handle_t, bus_size_t, \ - uint16_t, bus_size_t); \ - void f##_bs_sr_4(void *, bus_space_handle_t, bus_size_t, \ - uint32_t, bus_size_t); \ - void f##_bs_sr_8(void *, bus_space_handle_t, bus_size_t, \ - uint64_t, bus_size_t); \ - void f##_bs_sr_2_swap(void *, bus_space_handle_t, bus_size_t, \ - uint16_t, bus_size_t); \ - void f##_bs_sr_4_swap(void *, bus_space_handle_t, bus_size_t, \ - uint32_t, bus_size_t); \ - void f##_bs_sr_8_swap(void *, bus_space_handle_t, bus_size_t, \ - uint64_t, bus_size_t); \ - void f##_bs_c_1(void *, bus_space_handle_t, bus_size_t, \ - bus_space_handle_t, bus_size_t, bus_size_t); \ - void f##_bs_c_2(void *, bus_space_handle_t, bus_size_t, \ - bus_space_handle_t, bus_size_t, bus_size_t); \ - void f##_bs_c_4(void *, bus_space_handle_t, bus_size_t, \ - bus_space_handle_t, bus_size_t, bus_size_t); \ - void f##_bs_c_8(void *, bus_space_handle_t, bus_size_t, \ - bus_space_handle_t, bus_size_t, bus_size_t); \ - int f##_bs_pe_1(void *, bus_space_handle_t, bus_size_t, uint8_t *); \ - int f##_bs_pe_2(void *, bus_space_handle_t, bus_size_t, uint16_t *); \ - int f##_bs_pe_4(void *, bus_space_handle_t, bus_size_t, uint32_t *); \ - int f##_bs_pe_8(void *, bus_space_handle_t, bus_size_t, uint64_t *); \ - int f##_bs_po_1(void *, bus_space_handle_t, bus_size_t, uint8_t); \ - int f##_bs_po_2(void *, bus_space_handle_t, bus_size_t, uint16_t); \ - int f##_bs_po_4(void *, bus_space_handle_t, bus_size_t, uint32_t); \ - int f##_bs_po_8(void *, bus_space_handle_t, bus_size_t, uint64_t); - - -/* Bus DMA macros */ -#define bus_dmamap_create(t, args...) BUSOP(t, _dmamap_create, ## args) -#define bus_dmamap_destroy(t, args...) BUSOP(t, _dmamap_destroy, ## args) -#define bus_dmamap_load(t, args...) BUSOP(t, _dmamap_load, ## args) -#define bus_dmamap_load_mbuf(t, args...) BUSOP(t, _dmamap_load_mbuf, ## args) -#define bus_dmamap_load_uio(t, args...) BUSOP(t, _dmamap_uio, ## args) -#define bus_dmamap_load_raw(t, args...) BUSOP(t, _dmamap_load_raw, ## args) -#define bus_dmamap_unload(t, args...) BUSOP(t, _dmamap_unload, ## args) -#define bus_dmamap_sync(t, p, o, l, ops) \ - do { \ - if (((p)->_dm_flags & \ - (_BUS_DMAMAP_COHERENT|_BUS_DMAMAP_IS_BOUNCING)) == \ - _BUS_DMAMAP_COHERENT) \ - break; \ - (*(t)->_dmamap_sync)((t), (p), (o), (l), (ops)); \ - } while (/*CONSTCOND*/ 0) -#define bus_dmamem_alloc(t, args...) BUSOP(t, _dmamem_alloc, ## args) -#define bus_dmamem_free(t, args...) BUSOP(t, _dmamem_free, ## args) -#define bus_dmamem_map(t, args...) BUSOP(t, _dmamem_map, ## args) -#define bus_dmamem_unmap(t, args...) BUSOP(t, _dmamem_unmap, ## args) -#define bus_dmamem_mmap(t, args...) BUSOP(t, _dmamem_mmap, ## args) -#define bus_dmatag_subregion(t, args...) BUSOP(t, _dmamem_subregion, ## args) -#define bus_dmatag_destroy(t, args...) BUSOP(t, _dmamem_destroy, ## args) - - -#ifdef _AARCH64_BUS_DMA_PRIVATE - -struct mbuf; -struct uio; - -int _bus_dmamap_create(bus_dma_tag_t, bus_size_t, int, bus_size_t, bus_size_t, - int, bus_dmamap_t *); -void _bus_dmamap_destroy(bus_dma_tag_t, bus_dmamap_t); -int _bus_dmamap_load(bus_dma_tag_t, bus_dmamap_t, void *, bus_size_t, - struct proc *, int); -int _bus_dmamap_load_mbuf(bus_dma_tag_t, bus_dmamap_t, struct mbuf *, int); -int _bus_dmamap_load_uio(bus_dma_tag_t, bus_dmamap_t, struct uio *, int); -int _bus_dmamap_load_raw(bus_dma_tag_t, bus_dmamap_t, bus_dma_segment_t *, int, - bus_size_t, int); -void _bus_dmamap_unload(bus_dma_tag_t, bus_dmamap_t); -void _bus_dmamap_sync(bus_dma_tag_t, bus_dmamap_t, bus_addr_t, bus_size_t, int); - -#define _BUS_DMAMAP_FUNCS \ - ._dmamap_create = _bus_dmamap_create, \ - ._dmamap_destroy = _bus_dmamap_destroy, \ - ._dmamap_load = _bus_dmamap_load, \ - ._dmamap_load_mbuf = _bus_dmamap_load_mbuf, \ - ._dmamap_load_raw = _bus_dmamap_load_raw, \ - ._dmamap_load_uio = _bus_dmamap_load_uio, \ - ._dmamap_unload = _bus_dmamap_unload, \ - ._dmamap_sync = _bus_dmamap_sync - -int _bus_dmamem_alloc(bus_dma_tag_t, bus_size_t, bus_size_t, bus_size_t, - bus_dma_segment_t *, int, int *, int); -void _bus_dmamem_free(bus_dma_tag_t, bus_dma_segment_t *, int); -int _bus_dmamem_map(bus_dma_tag_t, bus_dma_segment_t *, int, size_t, void **, - int); -void _bus_dmamem_unmap(bus_dma_tag_t, void *, size_t); -paddr_t _bus_dmamem_mmap(bus_dma_tag_t, bus_dma_segment_t *, int, off_t, int, - int); - -#define _BUS_DMAMEM_FUNCS \ - ._dmamem_alloc = _bus_dmamem_alloc, \ - ._dmamem_free = _bus_dmamem_free, \ - ._dmamem_map = _bus_dmamem_map, \ - ._dmamem_unmap = _bus_dmamem_unmap, \ - ._dmamem_mmap = _bus_dmamem_mmap - -int _bus_dmamem_alloc_range(bus_dma_tag_t, bus_size_t, bus_size_t, bus_size_t, - bus_dma_segment_t *, int, int *, int, - vaddr_t, vaddr_t); -int _bus_dmatag_subregion(bus_dma_tag_t, bus_addr_t, bus_addr_t, - bus_dma_tag_t *, int); -void _bus_dmatag_destroy(bus_dma_tag_t); - -#define _BUS_DMATAG_FUNCS \ - ._dmatag_subregion = _bus_dmatag_subregion, \ - ._dmatag_destroy = _bus_dmatag_destroy - -#endif /* _AARCH64_BUS_DMA_PRIVATE */ - -#endif /* _AARCH64_BUS_FUNCS_H_ */ +#include diff --git a/sys/arch/arm/arm/arm_generic_dma.c b/sys/arch/arm/arm/arm_generic_dma.c index 03b600f..a1e9b98 100644 --- a/sys/arch/arm/arm/arm_generic_dma.c +++ b/sys/arch/arm/arm/arm_generic_dma.c @@ -29,8 +29,6 @@ #include __KERNEL_RCSID(0, "$NetBSD$"); -// XXXNH *sigh* -#define _AARCH64_BUS_DMA_PRIVATE #define _ARM32_BUS_DMA_PRIVATE #include diff --git a/sys/arch/arm/arm32/armv7_generic_space.c b/sys/arch/arm/arm32/armv7_generic_space.c index 130e94a..bf099a8 100644 --- a/sys/arch/arm/arm32/armv7_generic_space.c +++ b/sys/arch/arm/arm32/armv7_generic_space.c @@ -54,6 +54,9 @@ bs_protos(generic_armv4); #define NSWAP(n) n #endif +__strong_alias(arm_generic_bs_tag,armv7_generic_bs_tag); +__strong_alias(arm_generic_a4x_bs_tag,armv7_generic_a4x_bs_tag); + struct bus_space armv7_generic_bs_tag = { /* cookie */ (void *) 0, diff --git a/sys/arch/arm/arm32/bus_dma.c b/sys/arch/arm/arm32/bus_dma.c index 1d5ac75..96810f5 100644 --- a/sys/arch/arm/arm32/bus_dma.c +++ b/sys/arch/arm/arm32/bus_dma.c @@ -32,6 +32,7 @@ #define _ARM32_BUS_DMA_PRIVATE +// XXXNH #include "opt_arm_bus_space.h" #include diff --git a/sys/arch/arm/broadcom/bcm2835_dma.c b/sys/arch/arm/broadcom/bcm2835_dma.c index a53e6e9..5f312b4 100644 --- a/sys/arch/arm/broadcom/bcm2835_dma.c +++ b/sys/arch/arm/broadcom/bcm2835_dma.c @@ -32,7 +32,6 @@ #include __KERNEL_RCSID(0, "$NetBSD: bcm2835_dma.c,v 1.2 2012/09/18 05:47:27 matt Exp $"); -#define _AARCH64_BUS_DMA_PRIVATE #define _ARM32_BUS_DMA_PRIVATE #include diff --git a/sys/arch/arm/broadcom/bcm283x_platform.c b/sys/arch/arm/broadcom/bcm283x_platform.c index 99f1bb3..efc50ec 100644 --- a/sys/arch/arm/broadcom/bcm283x_platform.c +++ b/sys/arch/arm/broadcom/bcm283x_platform.c @@ -118,13 +118,16 @@ void bcmgenfb_set_ioctl(int(*)(void *, void *, u_long, void *, int, struct lwp * extern void bcmgenfb_ddb_trap_callback(int where); static int rpi_ioctl(void *, void *, u_long, void *, int, lwp_t *); +extern struct bus_space arm_generic_bs_tag; +extern struct bus_space arm_generic_a4x_bs_tag; + /* Prototypes for all the bus_space structure functions */ +bs_protos(arm_generic); +bs_protos(arm_generic_a4x); bs_protos(bcm2835); bs_protos(bcm2835_a4x); -bs_protos(generic); -bs_protos(generic_armv4); -bs_protos(a4x); -bs_protos(bs_notimpl); +bs_protos(bcm2836); +bs_protos(bcm2836_a4x); struct arm32_dma_range bcm2835_dma_ranges[] = { [0] = { @@ -1060,6 +1063,12 @@ static void bcm2835_platform_bootstrap(void) { + bcm2835_bs_tag = arm_generic_bs_tag; + bcm2835_a4x_bs_tag = arm_generic_a4x_bs_tag; + + bcm2835_bs_tag.bs_map = bcm2835_bs_map; + bcm2835_a4x_bs_tag.bs_map = bcm2835_bs_map; + fdtbus_set_decoderegprop(false); bcm2835_uartinit(); @@ -1073,6 +1082,12 @@ static void bcm2836_platform_bootstrap(void) { + bcm2836_bs_tag = arm_generic_bs_tag; + bcm2836_a4x_bs_tag = arm_generic_a4x_bs_tag; + + bcm2836_bs_tag.bs_map = bcm2836_bs_map; + bcm2836_a4x_bs_tag.bs_map = bcm2836_bs_map; + fdtbus_set_decoderegprop(false); bcm2836_uartinit(); diff --git a/sys/arch/arm/include/bus_defs.h b/sys/arch/arm/include/bus_defs.h index b953ec6..a5b1975 100644 --- a/sys/arch/arm/include/bus_defs.h +++ b/sys/arch/arm/include/bus_defs.h @@ -341,6 +341,10 @@ struct arm32_bus_dma_segment { */ bus_addr_t ds_addr; /* DMA address */ bus_size_t ds_len; /* length of transfer */ + + /* + * PRIVATE MEMBERS: + */ uint32_t _ds_flags; /* _BUS_DMAMAP_COHERENT */ }; typedef struct arm32_bus_dma_segment bus_dma_segment_t; diff --git a/sys/arch/arm/nvidia/tegra_platform.c b/sys/arch/arm/nvidia/tegra_platform.c index 7e7c066..9eac6f5 100644 --- a/sys/arch/arm/nvidia/tegra_platform.c +++ b/sys/arch/arm/nvidia/tegra_platform.c @@ -109,23 +109,21 @@ tegra210_platform_bootstrap(void) static void tegra_platform_init_attach_args(struct fdt_attach_args *faa) { + extern struct bus_space arm_generic_bs_tag; + extern struct bus_space arm_generic_a4x_bs_tag; + + faa->faa_bst = &arm_generic_bs_tag; + faa->faa_a4x_bst = &arm_generic_a4x_bs_tag; + // XXXNH bleurgh #ifdef __aarch64__ - extern struct bus_space aarch64_generic_bs_tag; - extern struct bus_space aarch64_generic_a4x_bs_tag; extern struct arm32_bus_dma_tag arm_generic_dma_tag; - faa->faa_bst = &aarch64_generic_bs_tag; - faa->faa_a4x_bst = &aarch64_generic_a4x_bs_tag; faa->faa_dmat = &arm_generic_dma_tag; #else - extern struct bus_space armv7_generic_bs_tag; - extern struct bus_space armv7_generic_a4x_bs_tag; extern struct arm32_bus_dma_tag armv7_generic_dma_tag; - faa->faa_bst = &armv7_generic_bs_tag; - faa->faa_a4x_bst = &armv7_generic_a4x_bs_tag; faa->faa_dmat = &armv7_generic_dma_tag; #endif } diff --git a/sys/arch/arm/nvidia/tegra_pmc.c b/sys/arch/arm/nvidia/tegra_pmc.c index cdd23ec..b38e052 100644 --- a/sys/arch/arm/nvidia/tegra_pmc.c +++ b/sys/arch/arm/nvidia/tegra_pmc.c @@ -105,12 +105,10 @@ tegra_pmc_get_bs(bus_space_tag_t *pbst, bus_space_handle_t *pbsh) *pbst = pmc_softc->sc_bst; *pbsh = pmc_softc->sc_bsh; } else { -#ifdef __aarch64__ - extern struct bus_space aarch64_generic_bs_tag; - *pbst = &aarch64_generic_bs_tag; -#else - *pbst = &armv7_generic_bs_tag; -#endif + extern struct bus_space arm_generic_bs_tag; + + *pbst = &arm_generic_bs_tag; + bus_space_subregion(*pbst, tegra_apb_bsh, TEGRA_PMC_OFFSET, TEGRA_PMC_SIZE, pbsh); } diff --git a/sys/arch/arm/nvidia/tegra_soc.c b/sys/arch/arm/nvidia/tegra_soc.c index 588c4a1..484db45 100644 --- a/sys/arch/arm/nvidia/tegra_soc.c +++ b/sys/arch/arm/nvidia/tegra_soc.c @@ -55,14 +55,8 @@ bus_space_handle_t tegra_ahb_a2_bsh; void tegra_bootstrap(void) { - -// XXXNH fix -#ifdef __aarch64__ - extern struct bus_space aarch64_generic_bs_tag; - bus_space_tag_t bst = &aarch64_generic_bs_tag; -#else - bus_space_tag_t bst = &armv7_generic_bs_tag; -#endif + extern struct bus_space arm_generic_bs_tag; + bus_space_tag_t bst = &arm_generic_bs_tag; if (bus_space_map(bst, TEGRA_HOST1X_BASE, TEGRA_HOST1X_SIZE, 0, &tegra_host1x_bsh) != 0) diff --git a/sys/arch/arm/nvidia/tegra_timer.c b/sys/arch/arm/nvidia/tegra_timer.c index 7387f1f..e94a435 100644 --- a/sys/arch/arm/nvidia/tegra_timer.c +++ b/sys/arch/arm/nvidia/tegra_timer.c @@ -164,12 +164,8 @@ void tegra_timer_delay(u_int us) { static bool timerus_configured = false; -#ifdef __aarch64__ - extern struct bus_space aarch64_generic_bs_tag; - bus_space_tag_t bst = &aarch64_generic_bs_tag; -#else - bus_space_tag_t bst = &armv7_generic_bs_tag; -#endif + extern struct bus_space arm_generic_bs_tag; + bus_space_tag_t bst = &arm_generic_bs_tag; bus_space_handle_t bsh; bus_space_subregion(bst, tegra_ppsb_bsh, TEGRA_TIMER_OFFSET, diff --git a/sys/arch/arm/sunxi/sunxi_platform.c b/sys/arch/arm/sunxi/sunxi_platform.c index e7abc88..c29fc90 100644 --- a/sys/arch/arm/sunxi/sunxi_platform.c +++ b/sys/arch/arm/sunxi/sunxi_platform.c @@ -96,21 +96,20 @@ __KERNEL_RCSID(0, "$NetBSD: sunxi_platform.c,v 1.19 2018/01/27 14:17:45 jmcneill #define SUN9I_WDT_MODE_EN __BIT(0) #if defined(__aarch64__) -extern struct bus_space aarch64_generic_bs_tag; -extern struct bus_space aarch64_generic_a4x_bs_tag; extern struct arm32_bus_dma_tag arm_generic_dma_tag; -#define sunxi_bs_tag aarch64_generic_bs_tag -#define sunxi_a4x_bs_tag aarch64_generic_a4x_bs_tag #define sunxi_dma_tag arm_generic_dma_tag #else -extern struct bus_space armv7_generic_bs_tag; -extern struct bus_space armv7_generic_a4x_bs_tag; extern struct arm32_bus_dma_tag armv7_generic_dma_tag; -#define sunxi_bs_tag armv7_generic_bs_tag -#define sunxi_a4x_bs_tag armv7_generic_a4x_bs_tag #define sunxi_dma_tag armv7_generic_dma_tag #endif + +extern struct bus_space arm_generic_bs_tag; +extern struct bus_space arm_generic_a4x_bs_tag; + +#define sunxi_bs_tag arm_generic_bs_tag +#define sunxi_a4x_bs_tag arm_generic_a4x_bs_tag + static const struct pmap_devmap * sunxi_platform_devmap(void) { diff --git a/sys/arch/evbarm/include/bus_defs.h b/sys/arch/evbarm/include/bus_defs.h index 03eb475..ea35690 100644 --- a/sys/arch/evbarm/include/bus_defs.h +++ b/sys/arch/evbarm/include/bus_defs.h @@ -1,7 +1,3 @@ /* $NetBSD: bus_defs.h,v 1.3 2012/07/28 23:18:48 matt Exp $ */ -#ifdef __aarch64__ -#include -#else #include -#endif diff --git a/sys/arch/evbarm/include/bus_funcs.h b/sys/arch/evbarm/include/bus_funcs.h index 98c77e8..8517e77 100644 --- a/sys/arch/evbarm/include/bus_funcs.h +++ b/sys/arch/evbarm/include/bus_funcs.h @@ -1,7 +1,3 @@ /* $NetBSD: bus_funcs.h,v 1.1 2011/07/01 17:09:59 dyoung Exp $ */ -#ifdef __aarch64__ -#include -#else #include -#endif