On Mon, May 31, 2021 at 09:38:12AM +0200, Ahmad Fatoum wrote: > The RISC-V architecture allows overriding the dma_alloc_coherent and > dma_free_coherent. Allow this to be controlled by device tree. > > Cache-coherent SoCs won't need this, but incoherent ones that have > uncached regions can register them here. > > Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > --- > common/Kconfig | 4 ++ > common/Makefile | 3 +- > drivers/dma/Kconfig | 6 ++ > drivers/dma/Makefile | 1 + > drivers/dma/coherent-pool.c | 120 ++++++++++++++++++++++++++++++++++++ > 5 files changed, 133 insertions(+), 1 deletion(-) > create mode 100644 drivers/dma/coherent-pool.c > > diff --git a/common/Kconfig b/common/Kconfig > index ce349d4ebbf6..dbbcbb946fff 100644 > --- a/common/Kconfig > +++ b/common/Kconfig > @@ -303,6 +303,9 @@ config EXPERIMENTAL > bool > prompt "Prompt for experimental code" > > +config TLSF > + bool > + > choice > prompt "malloc implementation" > > @@ -311,6 +314,7 @@ config MALLOC_DLMALLOC > > config MALLOC_TLSF > bool "tlsf" > + select TLSF > > config MALLOC_DUMMY > bool "dummy malloc" > diff --git a/common/Makefile b/common/Makefile > index 382a4f661f67..0777d2030c99 100644 > --- a/common/Makefile > +++ b/common/Makefile > @@ -40,7 +40,8 @@ obj-$(CONFIG_GLOBALVAR) += globalvar.o > obj-$(CONFIG_GREGORIAN_CALENDER) += date.o > obj-$(CONFIG_KALLSYMS) += kallsyms.o > obj-$(CONFIG_MALLOC_DLMALLOC) += dlmalloc.o > -obj-$(CONFIG_MALLOC_TLSF) += tlsf_malloc.o tlsf.o calloc.o > +obj-$(CONFIG_TLSF) += tlsf.o > +obj-$(CONFIG_MALLOC_TLSF) += tlsf_malloc.o calloc.o > KASAN_SANITIZE_tlsf.o := n > obj-$(CONFIG_MALLOC_DUMMY) += dummy_malloc.o calloc.o > obj-$(CONFIG_MEMINFO) += meminfo.o > diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig > index c75fc8b9811f..6bc915585fbe 100644 > --- a/drivers/dma/Kconfig > +++ b/drivers/dma/Kconfig > @@ -1,5 +1,11 @@ > menu "DMA support" > > +config DMA_COHERENT_POOLS > + bool > + depends on RISCV > + select TLSF > + imply SRAM This symbol is invisible and selected when needed. We shouldn't need this "depends on RISCV" Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox