diff --git a/base-foc/src/core/include/map_local.h b/base-foc/src/core/include/map_local.h index 68dd2de4c..5d9e42694 100644 --- a/base-foc/src/core/include/map_local.h +++ b/base-foc/src/core/include/map_local.h @@ -137,8 +137,7 @@ namespace Genode { l4_task_unmap(L4_BASE_TASK_CAP, l4_fpage(addr, L4_LOG2_PAGESIZE, L4_FPAGE_RW), L4_FP_OTHER_SPACES); - - l4_cache_clean_data(local_base, local_base + size); + l4_cache_dma_coherent(local_base, local_base + size); } } diff --git a/base-foc/src/core/ram_session_support.cc b/base-foc/src/core/ram_session_support.cc index 58921eb4d..d8ace86ad 100644 --- a/base-foc/src/core/ram_session_support.cc +++ b/base-foc/src/core/ram_session_support.cc @@ -30,7 +30,6 @@ void Ram_session_component::_clear_ds(Dataspace_component *ds) memset((void *)ds->phys_addr(), 0, ds->size()); if (ds->write_combined()) - Fiasco::l4_cache_clean_data((Genode::addr_t)ds->phys_addr(), - (Genode::addr_t)ds->phys_addr() + ds->size()); + Fiasco::l4_cache_dma_coherent(ds->phys_addr(), ds->phys_addr() + ds->size()); }