diff options
author | dzwdz | 2022-08-17 12:49:34 +0200 |
---|---|---|
committer | dzwdz | 2022-08-17 12:49:34 +0200 |
commit | 2341a0705164e94d0874572505b60680fdbe631f (patch) | |
tree | aea0bcd5c2339076b10d9e416ea1af4d1fb48400 /src/kernel/arch/amd64/port_io.h | |
parent | 63fd7ce362c7f1d59365045f19cf1ca87ffe2db9 (diff) |
amd64: rtl8139 driver with basic rx support
Diffstat (limited to 'src/kernel/arch/amd64/port_io.h')
-rw-r--r-- | src/kernel/arch/amd64/port_io.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/kernel/arch/amd64/port_io.h b/src/kernel/arch/amd64/port_io.h index eac9331..6cf6cc0 100644 --- a/src/kernel/arch/amd64/port_io.h +++ b/src/kernel/arch/amd64/port_io.h @@ -8,6 +8,10 @@ static inline void port_out16(uint16_t port, uint16_t val) { asm volatile("outw %0, %1" : : "a" (val), "Nd" (port)); } +static inline void port_out32(uint16_t port, uint32_t val) { + asm volatile("outl %0, %1" : : "a" (val), "Nd" (port)); +} + static inline uint8_t port_in8(uint16_t port) { uint8_t val; asm volatile("inb %1, %0" : "=a" (val) : "Nd" (port)); @@ -20,3 +24,9 @@ static inline uint16_t port_in16(uint16_t port) { return val; } +static inline uint32_t port_in32(uint16_t port) { + uint32_t val; + asm volatile("inl %1, %0" : "=a" (val) : "Nd" (port)); + return val; +} + |