Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
		
			
				
	
	
		
			48 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
/***************************************************************************/
 | 
						|
 | 
						|
/*
 | 
						|
 *	cache.c -- general ColdFire Cache maintenance code
 | 
						|
 *
 | 
						|
 *	Copyright (C) 2010, Greg Ungerer (gerg@snapgear.com)
 | 
						|
 */
 | 
						|
 | 
						|
/***************************************************************************/
 | 
						|
 | 
						|
#include <linux/kernel.h>
 | 
						|
#include <asm/coldfire.h>
 | 
						|
#include <asm/mcfsim.h>
 | 
						|
 | 
						|
/***************************************************************************/
 | 
						|
#ifdef CACHE_PUSH
 | 
						|
/***************************************************************************/
 | 
						|
 | 
						|
/*
 | 
						|
 *	Use cpushl to push all dirty cache lines back to memory.
 | 
						|
 *	Older versions of GAS don't seem to know how to generate the
 | 
						|
 *	ColdFire cpushl instruction... Oh well, bit stuff it for now.
 | 
						|
 */
 | 
						|
 | 
						|
void mcf_cache_push(void)
 | 
						|
{
 | 
						|
	__asm__ __volatile__ (
 | 
						|
		"clrl	%%d0\n\t"
 | 
						|
		"1:\n\t"
 | 
						|
		"movel	%%d0,%%a0\n\t"
 | 
						|
		"2:\n\t"
 | 
						|
		".word	0xf468\n\t"
 | 
						|
		"addl	%0,%%a0\n\t"
 | 
						|
		"cmpl	%1,%%a0\n\t"
 | 
						|
		"blt	2b\n\t"
 | 
						|
		"addql	#1,%%d0\n\t"
 | 
						|
		"cmpil	%2,%%d0\n\t"
 | 
						|
		"bne	1b\n\t"
 | 
						|
		: /* No output */
 | 
						|
		: "i" (CACHE_LINE_SIZE),
 | 
						|
		  "i" (DCACHE_SIZE / CACHE_WAYS),
 | 
						|
		  "i" (CACHE_WAYS)
 | 
						|
		: "d0", "a0" );
 | 
						|
}
 | 
						|
 | 
						|
/***************************************************************************/
 | 
						|
#endif /* CACHE_PUSH */
 | 
						|
/***************************************************************************/
 |