#include <stddef.h>
#include <stdint.h>
Go to the source code of this file.
|
| static uint8_t | inb (uint16_t port) |
| |
| static void | insb (uint16_t port, void *addr, size_t cnt) |
| |
| static uint16_t | inw (uint16_t port) |
| |
| static void | insw (uint16_t port, void *addr, size_t cnt) |
| |
| static uint32_t | inl (uint16_t port) |
| |
| static void | insl (uint16_t port, void *addr, size_t cnt) |
| |
| static void | outb (uint16_t port, uint8_t data) |
| |
| static void | outsb (uint16_t port, const void *addr, size_t cnt) |
| |
| static void | outw (uint16_t port, uint16_t data) |
| |
| static void | outsw (uint16_t port, const void *addr, size_t cnt) |
| |
| static void | outl (uint16_t port, uint32_t data) |
| |
| static void | outsl (uint16_t port, const void *addr, size_t cnt) |
| |
◆ inb()
49 {
50
52 asm volatile ("inb %w1,%0" : "=a" (data) : "d" (port));
53 return data;
54}
unsigned char uint8_t
Definition: stdint.h:20
◆ inl()
89 {
90
92 asm volatile ("inl %w1,%0" : "=a" (data) : "d" (port));
93 return data;
94}
unsigned int uint32_t
Definition: stdint.h:26
◆ insb()
59 {
60
61 asm volatile ("cld; repne; insb"
62 : "=D" (addr), "=c" (cnt)
63 : "d" (port), "0" (addr), "1" (cnt)
64 : "memory", "cc");
65}
◆ insl()
99 {
100
101 asm volatile ("cld; repne; insl"
102 : "=D" (addr), "=c" (cnt)
103 : "d" (port), "0" (addr), "1" (cnt)
104 : "memory", "cc");
105}
◆ insw()
79 {
80
81 asm volatile ("cld; repne; insw"
82 : "=D" (addr), "=c" (cnt)
83 : "d" (port), "0" (addr), "1" (cnt)
84 : "memory", "cc");
85}
◆ inw()
69 {
71
72 asm volatile ("inw %w1,%0" : "=a" (data) : "d" (port));
73 return data;
74}
unsigned short int uint16_t
Definition: stdint.h:23
◆ outb()
109 {
110
111 asm volatile ("outb %0,%w1" : : "a" (data), "d" (port));
112}
◆ outl()
145 {
146
147 asm volatile ("outl %0,%w1" : : "a" (data), "d" (port));
148}
◆ outsb()
117 {
118
119 asm volatile ("cld; repne; outsb"
120 : "=S" (addr), "=c" (cnt)
121 : "d" (port), "0" (addr), "1" (cnt)
122 : "cc");
123}
◆ outsl()
153 {
154
155 asm volatile ("cld; repne; outsl"
156 : "=S" (addr), "=c" (cnt)
157 : "d" (port), "0" (addr), "1" (cnt)
158 : "cc");
159}
◆ outsw()
135 {
136
137 asm volatile ("cld; repne; outsw"
138 : "=S" (addr), "=c" (cnt)
139 : "d" (port), "0" (addr), "1" (cnt)
140 : "cc");
141}
◆ outw()
127 {
128
129 asm volatile ("outw %0,%w1" : : "a" (data), "d" (port));
130}