#ifndef JOVE_KERNEL_ARCH_x86_64_UART_H #define JOVE_KERNEL_ARCH_x86_64_UART_H 1 #include "lib/jove.h" #include ALWAYS_INLINE uint8_t pinb(uint16_t port) { uint8_t v; __asm__ volatile("inb %1, %0": "=a"(v): "Nd"(port)); return v; } ALWAYS_INLINE void poutb(uint16_t port, uint8_t b) { __asm__ volatile("outb %0, %1":: "a"(b), "Nd"(port)); } #endif