Loading arch/arc/mm/cache.c +13 −0 Original line number Diff line number Diff line Loading @@ -1144,6 +1144,19 @@ noinline void __init arc_ioc_setup(void) { unsigned int ioc_base, mem_sz; /* * As for today we don't support both IOC and ZONE_HIGHMEM enabled * simultaneously. This happens because as of today IOC aperture covers * only ZONE_NORMAL (low mem) and any dma transactions outside this * region won't be HW coherent. * If we want to use both IOC and ZONE_HIGHMEM we can use * bounce_buffer to handle dma transactions to HIGHMEM. * Also it is possible to modify dma_direct cache ops or increase IOC * aperture size if we are planning to use HIGHMEM without PAE. */ if (IS_ENABLED(CONFIG_HIGHMEM)) panic("IOC and HIGHMEM can't be used simultaneously"); /* Flush + invalidate + disable L1 dcache */ __dc_disable(); Loading Loading
arch/arc/mm/cache.c +13 −0 Original line number Diff line number Diff line Loading @@ -1144,6 +1144,19 @@ noinline void __init arc_ioc_setup(void) { unsigned int ioc_base, mem_sz; /* * As for today we don't support both IOC and ZONE_HIGHMEM enabled * simultaneously. This happens because as of today IOC aperture covers * only ZONE_NORMAL (low mem) and any dma transactions outside this * region won't be HW coherent. * If we want to use both IOC and ZONE_HIGHMEM we can use * bounce_buffer to handle dma transactions to HIGHMEM. * Also it is possible to modify dma_direct cache ops or increase IOC * aperture size if we are planning to use HIGHMEM without PAE. */ if (IS_ENABLED(CONFIG_HIGHMEM)) panic("IOC and HIGHMEM can't be used simultaneously"); /* Flush + invalidate + disable L1 dcache */ __dc_disable(); Loading