|
|
1.1.1.4 ! root 1: #ifndef _ASM_IO_H ! 2: #define _ASM_IO_H ! 3: ! 4: extern void inline outb(char value, unsigned short port) 1.1.1.2 root 5: { 1.1.1.3 root 6: __asm__ volatile ("outb %0,%1" 7: ::"a" ((char) value),"d" ((unsigned short) port)); 1.1.1.2 root 8: } 1.1 root 9: 1.1.1.4 ! root 10: extern void inline outb_p(char value, unsigned short port) 1.1.1.2 root 11: { 1.1.1.3 root 12: __asm__ volatile ("outb %0,%1\n" 13: "\tjmp 1f\n" 14: "1:\tjmp 1f\n" 15: "1:\tjmp 1f\n" 16: "1:\tjmp 1f\n" 17: "1:" 18: ::"a" ((char) value),"d" ((unsigned short) port)); 1.1.1.2 root 19: } 1.1 root 20: 1.1.1.4 ! root 21: extern unsigned char inline inb(unsigned short port) 1.1.1.2 root 22: { 23: unsigned char _v; 1.1.1.3 root 24: __asm__ volatile ("inb %1,%0" 25: :"=a" (_v):"d" ((unsigned short) port)); 1.1.1.2 root 26: return _v; 27: } 1.1 root 28: 1.1.1.4 ! root 29: extern unsigned char inline inb_p(unsigned short port) 1.1.1.2 root 30: { 31: unsigned char _v; 1.1.1.3 root 32: __asm__ volatile ("inb %1,%0\n" 33: "\tjmp 1f\n" 34: "1:\tjmp 1f\n" 35: "1:\tjmp 1f\n" 1.1.1.2 root 36: "1:\tjmp 1f\n" 1.1.1.3 root 37: "1:" 38: :"=a" (_v):"d" ((unsigned short) port)); 1.1.1.2 root 39: return _v; 40: } 1.1.1.4 ! root 41: ! 42: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.