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 ---