blob: 8386eb73dbfc9868b6dead3f229eb3aa8f27fefd (
plain) (
tree)
|
|
#ifndef JOVE_KERNEL_ARCH_x86_64_UART_H
#define JOVE_KERNEL_ARCH_x86_64_UART_H 1
#include "lib/jove.h"
#include <stdint.h>
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
|