home *** CD-ROM | disk | FTP | other *** search
/ Il CD di internet / CD.iso / SOURCE / KERNEL-S / V1.2 / LINUX-1.2 / LINUX-1 / linux / include / asm-m68k / io.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-28  |  637 b   |  25 lines

  1. #ifndef _M68K_IO_H
  2. #define _M68K_IO_H
  3.  
  4. static inline unsigned char get_user_byte_io(const char * addr)
  5. {
  6.     register unsigned char _v;
  7.  
  8.     __asm__ __volatile__ ("moveb %1,%0":"=r" (_v):"m" (*addr));
  9.     return _v;
  10. }
  11. #define inb_p(addr) get_user_byte_io((char *)(addr))
  12. #define inb(addr) get_user_byte_io((char *)(addr))
  13.  
  14. static inline void put_user_byte_io(char val,char *addr)
  15. {
  16.     __asm__ __volatile__ ("moveb %0,%1"
  17.                   : /* no outputs */
  18.                   :"r" (val),"m" (*addr)
  19.                   : "memory");
  20. }
  21. #define outb_p(x,addr) put_user_byte_io((x),(char *)(addr))
  22. #define outb(x,addr) put_user_byte_io((x),(char *)(addr))
  23.  
  24. #endif /* _M68K_IO_H */
  25.