mirror of https://github.com/torvalds/linux.git
alpha: stop using asm-generic/iomap.h
Alpha has custom definitions for ioread64()/iowrite64(), which now don't exist in the lib/iomap.c variant. This is an endless source of build failures, since alpha tries to share a couple of function declarations. Change alpha to have its own prototypes that match the definitions in arch/alpha/kerne/io.c instead. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
9e81c96574
commit
5c35018a54
|
|
@ -10,10 +10,6 @@
|
||||||
#include <asm/machvec.h>
|
#include <asm/machvec.h>
|
||||||
#include <asm/hwrpb.h>
|
#include <asm/hwrpb.h>
|
||||||
|
|
||||||
/* The generic header contains only prototypes. Including it ensures that
|
|
||||||
the implementation we have here matches that interface. */
|
|
||||||
#include <asm-generic/iomap.h>
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Virtual -> physical identity mapping starts at this offset
|
* Virtual -> physical identity mapping starts at this offset
|
||||||
*/
|
*/
|
||||||
|
|
@ -276,13 +272,24 @@ extern void __raw_writeq(u64 b, volatile void __iomem *addr);
|
||||||
#define __raw_writel __raw_writel
|
#define __raw_writel __raw_writel
|
||||||
#define __raw_writeq __raw_writeq
|
#define __raw_writeq __raw_writeq
|
||||||
|
|
||||||
/*
|
extern unsigned int ioread8(const void __iomem *);
|
||||||
* Mapping from port numbers to __iomem space is pretty easy.
|
extern unsigned int ioread16(const void __iomem *);
|
||||||
*/
|
extern unsigned int ioread32(const void __iomem *);
|
||||||
|
extern u64 ioread64(const void __iomem *);
|
||||||
|
|
||||||
|
extern void iowrite8(u8, void __iomem *);
|
||||||
|
extern void iowrite16(u16, void __iomem *);
|
||||||
|
extern void iowrite32(u32, void __iomem *);
|
||||||
|
extern void iowrite64(u64, void __iomem *);
|
||||||
|
|
||||||
|
extern void ioread8_rep(const void __iomem *port, void *buf, unsigned long count);
|
||||||
|
extern void ioread16_rep(const void __iomem *port, void *buf, unsigned long count);
|
||||||
|
extern void ioread32_rep(const void __iomem *port, void *buf, unsigned long count);
|
||||||
|
|
||||||
|
extern void iowrite8_rep(void __iomem *port, const void *buf, unsigned long count);
|
||||||
|
extern void iowrite16_rep(void __iomem *port, const void *buf, unsigned long count);
|
||||||
|
extern void iowrite32_rep(void __iomem *port, const void *buf, unsigned long count);
|
||||||
|
|
||||||
/* These two have to be extern inline because of the extern prototype from
|
|
||||||
<asm-generic/iomap.h>. It is not legal to mix "extern" and "static" for
|
|
||||||
the same declaration. */
|
|
||||||
extern inline void __iomem *ioport_map(unsigned long port, unsigned int size)
|
extern inline void __iomem *ioport_map(unsigned long port, unsigned int size)
|
||||||
{
|
{
|
||||||
return IO_CONCAT(__IO_PREFIX,ioportmap) (port);
|
return IO_CONCAT(__IO_PREFIX,ioportmap) (port);
|
||||||
|
|
@ -629,10 +636,6 @@ extern void outsl (unsigned long port, const void *src, unsigned long count);
|
||||||
#define RTC_PORT(x) (0x70 + (x))
|
#define RTC_PORT(x) (0x70 + (x))
|
||||||
#define RTC_ALWAYS_BCD 0
|
#define RTC_ALWAYS_BCD 0
|
||||||
|
|
||||||
/*
|
|
||||||
* These get provided from <asm-generic/iomap.h> since alpha does not
|
|
||||||
* select GENERIC_IOMAP.
|
|
||||||
*/
|
|
||||||
#define ioread64 ioread64
|
#define ioread64 ioread64
|
||||||
#define iowrite64 iowrite64
|
#define iowrite64 iowrite64
|
||||||
#define ioread8_rep ioread8_rep
|
#define ioread8_rep ioread8_rep
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue