summaryrefslogtreecommitdiffstats
path: root/arch/arc/mm/cache.c
Commit message (Collapse)AuthorAgeFilesLines
* ARCv2: SLC: Handle explcit flush for DMA ops (w/o IO-coherency)Vineet Gupta2015-06-251-2/+62
| | | | | | | | | L2 cache on ARCHS processors is called SLC (System Level Cache) For working DMA (in absence of hardware assisted IO Coherency) we need to manage SLC explicitly when buffers transition between cpu and controllers. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARCv2: MMUv4: support aliasing icache configVineet Gupta2015-06-221-1/+13
| | | | | | This is also default for AXS103 release Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARCv2: MMUv4: cache programming model changesVineet Gupta2015-06-221-15/+97
| | | | | | | | | | | | | | | Caveats about cache flush on ARCv2 based cores - dcache is PIPT so paddr is sufficient for cache maintenance ops (no need to setup PTAG reg - icache is still VIPT but only aliasing configs need PTAG setup So basically this is departure from MMU-v3 which always need vaddr in line ops registers (DC_IVDL, DC_FLDL, IC_IVIL) but paddr in DC_PTAG, IC_PTAG respectively. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARC: untangle cache flush loopVineet Gupta2015-06-191-25/+55
| | | | | | | - Remove the ifdef'ery and write distinct versions for each mmu ver even if there is some code duplication Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARC: cacheflush: No need to retain DC_CTRL from __before_dc_op()Vineet Gupta2015-06-191-20/+19
| | | | | | | | | That is because __after_dc_op() already reads it for status check, so it is better anyways to use that "newer" value. Also reduces the clutter in callers for passing from/to these routines. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARC: cacheflush: move some code around, delete old commentsVineet Gupta2015-06-191-165/+102
| | | | Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
* ARC: mm/cache_arc700.c -> mm/cache.cVineet Gupta2015-06-191-0/+723
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
OpenPOWER on IntegriCloud