From 2341a0705164e94d0874572505b60680fdbe631f Mon Sep 17 00:00:00 2001 From: dzwdz Date: Wed, 17 Aug 2022 12:49:34 +0200 Subject: amd64: rtl8139 driver with basic rx support --- src/kernel/arch/amd64/port_io.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/kernel/arch/amd64/port_io.h') 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; +} + -- cgit v1.2.3