io.c (39fe5434cb9de5da40510028b17b96bc4eb312b3) | io.c (4e491d14f2506b218d678935c25a7027b79178b1) |
---|---|
1/* 2 * I/O string operations 3 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) 4 * Copyright (C) 2006 IBM Corporation 5 * 6 * Largely rewritten by Cort Dougan (cort@cs.nmt.edu) 7 * and Paul Mackerras. 8 * --- 106 unchanged lines hidden (view full) --- 115 *port = *tbuf++; 116 } while (--count != 0); 117 asm volatile("sync"); 118} 119EXPORT_SYMBOL(_outsl_ns); 120 121#define IO_CHECK_ALIGN(v,a) ((((unsigned long)(v)) & ((a) - 1)) == 0) 122 | 1/* 2 * I/O string operations 3 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) 4 * Copyright (C) 2006 IBM Corporation 5 * 6 * Largely rewritten by Cort Dougan (cort@cs.nmt.edu) 7 * and Paul Mackerras. 8 * --- 106 unchanged lines hidden (view full) --- 115 *port = *tbuf++; 116 } while (--count != 0); 117 asm volatile("sync"); 118} 119EXPORT_SYMBOL(_outsl_ns); 120 121#define IO_CHECK_ALIGN(v,a) ((((unsigned long)(v)) & ((a) - 1)) == 0) 122 |
123void _memset_io(volatile void __iomem *addr, int c, unsigned long n) | 123notrace void 124_memset_io(volatile void __iomem *addr, int c, unsigned long n) |
124{ 125 void *p = (void __force *)addr; 126 u32 lc = c; 127 lc |= lc << 8; 128 lc |= lc << 16; 129 130 __asm__ __volatile__ ("sync" : : : "memory"); 131 while(n && !IO_CHECK_ALIGN(p, 4)) { --- 75 unchanged lines hidden --- | 125{ 126 void *p = (void __force *)addr; 127 u32 lc = c; 128 lc |= lc << 8; 129 lc |= lc << 16; 130 131 __asm__ __volatile__ ("sync" : : : "memory"); 132 while(n && !IO_CHECK_ALIGN(p, 4)) { --- 75 unchanged lines hidden --- |