Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

asm-generic/io.h: add reads[bwl]/writes[bwl] helpers

A bunch of arches define reads[bwl]/writes[bwl] helpers for accessing
memory mapped registers. Since the Blackfin ones aren't specific to
Blackfin code, move them to the common asm-generic/io.h for people.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>

+30 -30
-30
arch/blackfin/include/asm/io.h
··· 158 158 extern void dma_insw(unsigned long port, void *addr, unsigned short count); 159 159 extern void dma_insl(unsigned long port, void *addr, unsigned short count); 160 160 161 - static inline void readsl(const void __iomem *addr, void *buf, int len) 162 - { 163 - insl((unsigned long)addr, buf, len); 164 - } 165 - 166 - static inline void readsw(const void __iomem *addr, void *buf, int len) 167 - { 168 - insw((unsigned long)addr, buf, len); 169 - } 170 - 171 - static inline void readsb(const void __iomem *addr, void *buf, int len) 172 - { 173 - insb((unsigned long)addr, buf, len); 174 - } 175 - 176 - static inline void writesl(const void __iomem *addr, const void *buf, int len) 177 - { 178 - outsl((unsigned long)addr, buf, len); 179 - } 180 - 181 - static inline void writesw(const void __iomem *addr, const void *buf, int len) 182 - { 183 - outsw((unsigned long)addr, buf, len); 184 - } 185 - 186 - static inline void writesb(const void __iomem *addr, const void *buf, int len) 187 - { 188 - outsb((unsigned long)addr, buf, len); 189 - } 190 - 191 161 /* 192 162 * Map some physical address range into the kernel address space. 193 163 */
+30
include/asm-generic/io.h
··· 211 211 } 212 212 #endif 213 213 214 + static inline void readsl(const void __iomem *addr, void *buf, int len) 215 + { 216 + insl((unsigned long)addr, buf, len); 217 + } 218 + 219 + static inline void readsw(const void __iomem *addr, void *buf, int len) 220 + { 221 + insw((unsigned long)addr, buf, len); 222 + } 223 + 224 + static inline void readsb(const void __iomem *addr, void *buf, int len) 225 + { 226 + insb((unsigned long)addr, buf, len); 227 + } 228 + 229 + static inline void writesl(const void __iomem *addr, const void *buf, int len) 230 + { 231 + outsl((unsigned long)addr, buf, len); 232 + } 233 + 234 + static inline void writesw(const void __iomem *addr, const void *buf, int len) 235 + { 236 + outsw((unsigned long)addr, buf, len); 237 + } 238 + 239 + static inline void writesb(const void __iomem *addr, const void *buf, int len) 240 + { 241 + outsb((unsigned long)addr, buf, len); 242 + } 243 + 214 244 #ifndef CONFIG_GENERIC_IOMAP 215 245 #define ioread8(addr) readb(addr) 216 246 #define ioread16(addr) readw(addr)