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

Configure Feed

Select the types of activity you want to include in your feed.

parisc: stop using asm-generic/iomap.h

parisc uses custom iomap helpers to map bus specific function calls into
a linear __iomem token, but it tries to use the declarations from the x86
"generic iomap" code.

Untangle the two by duplicating the required declations and dropping
the #include that pulls in more stuff that is not needed here, to
allow simplify the generic version later.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+27 -9
+27 -9
arch/parisc/include/asm/io.h
··· 227 227 #define F_EXTEND(x) ((unsigned long)((x) | (0xffffffff00000000ULL))) 228 228 229 229 #ifdef CONFIG_64BIT 230 - #define ioread64 ioread64 231 - #define ioread64be ioread64be 232 - #define iowrite64 iowrite64 233 - #define iowrite64be iowrite64be 234 230 extern u64 ioread64(const void __iomem *addr); 235 231 extern u64 ioread64be(const void __iomem *addr); 232 + #define ioread64 ioread64 233 + #define ioread64be ioread64be 234 + 236 235 extern void iowrite64(u64 val, void __iomem *addr); 237 236 extern void iowrite64be(u64 val, void __iomem *addr); 237 + #define iowrite64 iowrite64 238 + #define iowrite64be iowrite64be 238 239 #endif 239 240 240 - #include <asm-generic/iomap.h> 241 - /* 242 - * These get provided from <asm-generic/iomap.h> since parisc does not 243 - * select GENERIC_IOMAP. 244 - */ 241 + extern void __iomem *ioport_map(unsigned long port, unsigned int nr); 242 + extern void ioport_unmap(void __iomem *); 245 243 #define ioport_map ioport_map 246 244 #define ioport_unmap ioport_unmap 245 + 246 + extern unsigned int ioread8(const void __iomem *); 247 + extern unsigned int ioread16(const void __iomem *); 248 + extern unsigned int ioread16be(const void __iomem *); 249 + extern unsigned int ioread32(const void __iomem *); 250 + extern unsigned int ioread32be(const void __iomem *); 247 251 #define ioread8 ioread8 248 252 #define ioread16 ioread16 249 253 #define ioread32 ioread32 250 254 #define ioread16be ioread16be 251 255 #define ioread32be ioread32be 256 + 257 + extern void iowrite8(u8, void __iomem *); 258 + extern void iowrite16(u16, void __iomem *); 259 + extern void iowrite16be(u16, void __iomem *); 260 + extern void iowrite32(u32, void __iomem *); 261 + extern void iowrite32be(u32, void __iomem *); 252 262 #define iowrite8 iowrite8 253 263 #define iowrite16 iowrite16 254 264 #define iowrite32 iowrite32 255 265 #define iowrite16be iowrite16be 256 266 #define iowrite32be iowrite32be 267 + 268 + extern void ioread8_rep(const void __iomem *port, void *buf, unsigned long count); 269 + extern void ioread16_rep(const void __iomem *port, void *buf, unsigned long count); 270 + extern void ioread32_rep(const void __iomem *port, void *buf, unsigned long count); 257 271 #define ioread8_rep ioread8_rep 258 272 #define ioread16_rep ioread16_rep 259 273 #define ioread32_rep ioread32_rep 274 + 275 + extern void iowrite8_rep(void __iomem *port, const void *buf, unsigned long count); 276 + extern void iowrite16_rep(void __iomem *port, const void *buf, unsigned long count); 277 + extern void iowrite32_rep(void __iomem *port, const void *buf, unsigned long count); 260 278 #define iowrite8_rep iowrite8_rep 261 279 #define iowrite16_rep iowrite16_rep 262 280 #define iowrite32_rep iowrite32_rep