remove duplicate bus_dma_tags, and convert to using the existing mainbus_dma_tag, now exported via arm/mainbus/mainbus.h, to allow the death of arm/armv7/armv7var.h, eventually, i hope.
diff --git a/sys/arch/arm/cortex/cortex.c b/sys/arch/arm/cortex/cortex.c index d2d6aa508b6..ec61887783a 100644 --- a/sys/arch/arm/cortex/cortex.c +++ b/sys/arch/arm/cortex/cortex.c @@ -46,32 +46,14 @@ #include <sys/systm.h> #include <sys/kernel.h> #include <sys/device.h> -#define _ARM32_BUS_DMA_PRIVATE + #include <machine/bus.h> + #include <arm/cpufunc.h> #include <arm/armv7/armv7var.h> #include <arm/cortex/cortex.h> #include <arm/mainbus/mainbus.h> -struct arm32_bus_dma_tag cortex_bus_dma_tag = { - 0, - 0, - NULL, - _bus_dmamap_create, - _bus_dmamap_destroy, - _bus_dmamap_load, - _bus_dmamap_load_mbuf, - _bus_dmamap_load_uio, - _bus_dmamap_load_raw, - _bus_dmamap_unload, - _bus_dmamap_sync, - _bus_dmamem_alloc, - _bus_dmamem_free, - _bus_dmamem_map, - _bus_dmamem_unmap, - _bus_dmamem_mmap, -}; - /* Prototypes for functions provided */ int cortexmatch(struct device *, void *, void *); @@ -137,7 +119,7 @@ cortexsearch(struct device *parent, void *vcf, void *aux) ca.ca_name = cf->cf_driver->cd_name; ca.ca_iot = &armv7_bs_tag; - ca.ca_dmat = &cortex_bus_dma_tag; + ca.ca_dmat = &mainbus_dma_tag; ca.ca_periphbase = armv7_periphbase(); /* allow for devices to be disabled in UKC */ diff --git a/sys/arch/arm/mainbus/mainbus.h b/sys/arch/arm/mainbus/mainbus.h index 059ca2550e8..7783791ce76 100644 --- a/sys/arch/arm/mainbus/mainbus.h +++ b/sys/arch/arm/mainbus/mainbus.h @@ -28,4 +28,6 @@ union mainbus_attach_args { void mainbus_legacy_found(struct device *, char *); +extern struct arm32_bus_dma_tag mainbus_dma_tag; + #endif /* __MAINBUS_H__ */ diff --git a/sys/arch/armv7/armv7/armv7.c b/sys/arch/armv7/armv7/armv7.c index c57fb56738a..60fd243caf9 100644 --- a/sys/arch/armv7/armv7/armv7.c +++ b/sys/arch/armv7/armv7/armv7.c @@ -21,31 +21,13 @@ #include <sys/types.h> #include <sys/malloc.h> -#define _ARM32_BUS_DMA_PRIVATE #include <machine/bus.h> + #include <arm/armv7/armv7var.h> +#include <arm/mainbus/mainbus.h> #include <armv7/armv7/armv7var.h> #include <armv7/armv7/armv7_machdep.h> -struct arm32_bus_dma_tag armv7_bus_dma_tag = { - 0, - 0, - NULL, - _bus_dmamap_create, - _bus_dmamap_destroy, - _bus_dmamap_load, - _bus_dmamap_load_mbuf, - _bus_dmamap_load_uio, - _bus_dmamap_load_raw, - _bus_dmamap_unload, - _bus_dmamap_sync, - _bus_dmamem_alloc, - _bus_dmamem_free, - _bus_dmamem_map, - _bus_dmamem_unmap, - _bus_dmamem_mmap, -}; - struct armv7_dev *armv7_devs = NULL; #define DEVNAME(sc) (sc)->sc_dv.dv_xname @@ -116,7 +98,7 @@ armv7_attach(struct device *parent, struct device *self, void *aux) memset(&aa, 0, sizeof(aa)); aa.aa_dev = ad; aa.aa_iot = &armv7_bs_tag; - aa.aa_dmat = &armv7_bus_dma_tag; + aa.aa_dmat = &mainbus_dma_tag; if (config_found_sm(self, &aa, NULL, armv7_submatch) == NULL) printf("%s: device %s unit %d not configured\n",