@ -34,9 +34,9 @@
# define __arch_getw(a) (*(volatile unsigned short *)(a))
# define __arch_getl(a) (*(volatile unsigned int *)(a))
# define __arch_putb(v,a) (*(volatile unsigned char *)(a) = (v))
# define __arch_putw(v,a) (*(volatile unsigned short *)(a) = (v))
# define __arch_putl(v,a) (*(volatile unsigned int *)(a) = (v))
# define __arch_putb(v, a) (*(volatile unsigned char *)(a) = (v))
# define __arch_putw(v, a) (*(volatile unsigned short *)(a) = (v))
# define __arch_putl(v, a) (*(volatile unsigned int *)(a) = (v))
extern void __raw_writesb ( unsigned int addr , const void * data , int bytelen ) ;
extern void __raw_writesw ( unsigned int addr , const void * data , int wordlen ) ;
@ -46,9 +46,9 @@ extern void __raw_readsb(unsigned int addr, void *data, int bytelen);
extern void __raw_readsw ( unsigned int addr , void * data , int wordlen ) ;
extern void __raw_readsl ( unsigned int addr , void * data , int longlen ) ;
# define __raw_writeb(v,a) __arch_putb(v,a)
# define __raw_writew(v,a) __arch_putw(v,a)
# define __raw_writel(v,a) __arch_putl(v,a)
# define __raw_writeb(v, a) __arch_putb(v, a)
# define __raw_writew(v, a) __arch_putw(v, a)
# define __raw_writel(v, a) __arch_putl(v, a)
# define __raw_readb(a) __arch_getb(a)
# define __raw_readw(a) __arch_getw(a)
@ -59,13 +59,13 @@ extern void __raw_readsl(unsigned int addr, void *data, int longlen);
* properly . Spell it out to the compiler in some cases .
* These are only valid for small values of " off " ( < 1 < < 12 )
*/
# define __raw_base_writeb(val,base,off) __arch_base_putb(val,base,off)
# define __raw_base_writew(val,base,off) __arch_base_putw(val,base,off)
# define __raw_base_writel(val,base,off) __arch_base_putl(val,base,off)
# define __raw_base_writeb(val, base, off) __arch_base_putb(val, base, off)
# define __raw_base_writew(val, base, off) __arch_base_putw(val, base, off)
# define __raw_base_writel(val, base, off) __arch_base_putl(val, base, off)
# define __raw_base_readb(base,off) __arch_base_getb(base,off)
# define __raw_base_readw(base,off) __arch_base_getw(base,off)
# define __raw_base_readl(base,off) __arch_base_getl(base,off)
# define __raw_base_readb(base, off) __arch_base_getb(base, off)
# define __raw_base_readw(base, off) __arch_base_getw(base, off)
# define __raw_base_readl(base, off) __arch_base_getl(base, off)
/*
* Now , pick up the machine - defined IO definitions
@ -91,36 +91,43 @@ extern void __raw_readsl(unsigned int addr, void *data, int longlen);
*
* The { in , out } [ bwl ] macros are for emulating x86 - style PCI / ISA IO space .
*/
# define outb(v,p) __raw_writeb(v, p)
# define outw(v,p) __raw_writew(cpu_to_le16(v),p)
# define outl(v,p) __raw_writel(cpu_to_le32(v),p)
# define outb(v, p) __raw_writeb(v, p)
# define outw(v, p) __raw_writew(cpu_to_le16(v), p)
# define outl(v, p) __raw_writel(cpu_to_le32(v), p)
# define inb(p) ({ unsigned int __v = __raw_readb(p); __v; })
# define inw(p) ({ unsigned int __v = __le16_to_cpu(__raw_readw(p)); __v; })
# define inl(p) ({ unsigned int __v = __le32_to_cpu(__raw_readl(p)); __v; })
# define outsb(p,d,l) __raw_writesb(p,d,l)
# define outsw(p,d,l) __raw_writesw(p,d,l)
# define outsl(p,d,l) __raw_writesl(p,d,l)
# define outsb(p, d, l) __raw_writesb(p, d, l)
# define outsw(p, d, l) __raw_writesw(p, d, l)
# define outsl(p, d, l) __raw_writesl(p, d, l)
# define insb(p,d,l) __raw_readsb(p,d,l)
# define insw(p,d,l) __raw_readsw(p,d,l)
# define insl(p,d,l) __raw_readsl(p,d,l)
# define insb(p, d, l) __raw_readsb(p, d, l)
# define insw(p, d, l) __raw_readsw(p, d, l)
# define insl(p, d, l) __raw_readsl(p, d, l)
# define outb_p(val,port) outb((val),(port))
# define outw_p(val,port) outw((val),(port))
# define outl_p(val,port) outl((val),(port))
# define outb_p(val, port) outb((val), (port))
# define outw_p(val, port) outw((val), (port))
# define outl_p(val, port) outl((val), (port))
# define inb_p(port) inb((port))
# define inw_p(port) inw((port))
# define inl_p(port) inl((port))
# define outsb_p(port,from,len) outsb(port,from,len)
# define outsw_p(port,from,len) outsw(port,from,len)
# define outsl_p(port,from,len) outsl(port,from,len)
# define insb_p(port,to,len) insb(port,to,len)
# define insw_p(port,to,len) insw(port,to,len)
# define insl_p(port,to,len) insl(port,to,len)
# define outsb_p(port, from, len) outsb(port, from, len)
# define outsw_p(port, from, len) outsw(port, from, len)
# define outsl_p(port, from, len) outsl(port, from, len)
# define insb_p(port, to, len) insb(port, to, len)
# define insw_p(port, to, len) insw(port, to, len)
# define insl_p(port, to, len) insl(port, to, len)
/* for U-Boot PCI */
# define out_8(port, val) outb(val, port)
# define out_le16(port, val) outw(val, port)
# define out_le32(port, val) outl(val, port)
# define in_8(port) inb(port)
# define in_le16(port) inw(port)
# define in_le32(port) inl(port)
/*
* ioremap and friends .
*
@ -128,7 +135,7 @@ extern void __raw_readsl(unsigned int addr, void *data, int longlen);
* linux / Documentation / IO - mapping . txt . If you want a
* physical address , use __ioremap instead .
*/
extern void * __ioremap ( unsigned long offset , size_t size , unsigned long flags ) ;
extern void * __ioremap ( unsigned long offset , size_t size , unsigned long flags ) ;
extern void __iounmap ( void * addr ) ;
/*
@ -139,20 +146,20 @@ extern void __iounmap(void *addr);
* iomem_to_phys ( off )
*/
# ifdef iomem_valid_addr
# define __arch_ioremap(off,sz,nocache) \
# define __arch_ioremap(off, sz, nocache) \
( { \
unsigned long _off = ( off ) , _size = ( sz ) ; \
void * _ret = ( void * ) 0 ; \
if ( iomem_valid_addr ( _off , _size ) ) \
_ret = __ioremap ( iomem_to_phys ( _off ) , _size , 0 ) ; \
_ret = __ioremap ( iomem_to_phys ( _off ) , _size , 0 ) ; \
_ret ; \
} )
# define __arch_iounmap __iounmap
# endif
# define ioremap(off,sz) __arch_ioremap((off),(sz),0)
# define ioremap_nocache(off,sz) __arch_ioremap((off),(sz),1)
# define ioremap(off, sz) __arch_ioremap((off), (sz), 0)
# define ioremap_nocache(off, sz) __arch_ioremap((off), (sz), 1)
# define iounmap(_addr) __arch_iounmap(_addr)
/*
@ -180,19 +187,21 @@ extern void _memset_io(unsigned long, int, size_t);
# ifdef __mem_pci
# define readb(c) ({ unsigned int __v = __raw_readb(__mem_pci(c)); __v; })
# define readw(c) ({ unsigned int __v = le16_to_cpu(__raw_readw(__mem_pci(c))); __v; })
# define readl(c) ({ unsigned int __v = le32_to_cpu(__raw_readl(__mem_pci(c))); __v; })
# define readw(c)\
( { unsigned int __v = le16_to_cpu ( __raw_readw ( __mem_pci ( c ) ) ) ; __v ; } )
# define readl(c)\
( { unsigned int __v = le32_to_cpu ( __raw_readl ( __mem_pci ( c ) ) ) ; __v ; } )
# define writeb(v,c) __raw_writeb(v,__mem_pci(c))
# define writew(v,c) __raw_writew(cpu_to_le16(v),__mem_pci(c))
# define writel(v,c) __raw_writel(cpu_to_le32(v),__mem_pci(c))
# define writeb(v, c) __raw_writeb(v, __mem_pci(c))
# define writew(v, c) __raw_writew(cpu_to_le16(v), __mem_pci(c))
# define writel(v, c) __raw_writel(cpu_to_le32(v), __mem_pci(c))
# define memset_io(c,v,l) _memset_io(__mem_pci(c),(v),(l))
# define memcpy_fromio(a,c,l) _memcpy_fromio((a),__mem_pci(c),(l))
# define memcpy_toio(c,a,l) _memcpy_toio(__mem_pci(c),(a),(l))
# define memset_io(c, v, l) _memset_io(__mem_pci(c), (v), (l))
# define memcpy_fromio(a, c, l) _memcpy_fromio((a), __mem_pci(c), (l))
# define memcpy_toio(c, a, l) _memcpy_toio(__mem_pci(c), (a), (l))
# define eth_io_copy_and_sum(s,c,l,b) \
eth_copy_and_sum ( ( s ) , __mem_pci ( c ) , ( l ) , ( b ) )
# define eth_io_copy_and_sum(s, c, l, b) \
eth_copy_and_sum ( ( s ) , __mem_pci ( c ) , ( l ) , ( b ) )
static inline int
check_signature ( unsigned long io_addr , const unsigned char * signature ,
@ -216,11 +225,11 @@ out:
# define readb(addr) __raw_readb(addr)
# define readw(addr) __raw_readw(addr)
# define readl(addr) __raw_readl(addr)
# define writeb(v,addr) __raw_writeb(v, addr)
# define writew(v,addr) __raw_writew(v, addr)
# define writel(v,addr) __raw_writel(v, addr)
# define writeb(v, addr) __raw_writeb(v, addr)
# define writew(v, addr) __raw_writew(v, addr)
# define writel(v, addr) __raw_writel(v, addr)
# define check_signature(io,sig,len) (0)
# define check_signature(io, sig, len) (0)
# endif /* __mem_pci */