mirror of
				https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
				synced 2025-10-29 23:28:52 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			18 lines
		
	
	
	
		
			430 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
	
		
			430 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef _ASM_X86_EDAC_H
 | |
| #define _ASM_X86_EDAC_H
 | |
| 
 | |
| /* ECC atomic, DMA, SMP and interrupt safe scrub function */
 | |
| 
 | |
| static inline void atomic_scrub(void *va, u32 size)
 | |
| {
 | |
| 	u32 i, *virt_addr = va;
 | |
| 
 | |
| 	/*
 | |
| 	 * Very carefully read and write to memory atomically so we
 | |
| 	 * are interrupt, DMA and SMP safe.
 | |
| 	 */
 | |
| 	for (i = 0; i < size / 4; i++, virt_addr++)
 | |
| 		asm volatile("lock; addl $0, %0"::"m" (*virt_addr));
 | |
| }
 | |
| 
 | |
| #endif /* _ASM_X86_EDAC_H */
 | 
