1 /* 2 * Copyright 2014, General Dynamics C4 Systems 3 * 4 * SPDX-License-Identifier: GPL-2.0-only 5 */ 6 7 #pragma once 8 9 #include <config.h> 10 #include <linker.h> 11 #include <types.h> 12 13 /** MODIFIES: phantom_machine_state */ 14 void out8(uint16_t port, uint8_t value); 15 /** MODIFIES: phantom_machine_state */ 16 void out16(uint16_t port, uint16_t value); 17 /** MODIFIES: phantom_machine_state */ 18 void out32(uint16_t port, uint32_t value); 19 /** MODIFIES: */ 20 uint8_t in8(uint16_t port); 21 /** MODIFIES: */ 22 uint16_t in16(uint16_t port); 23 /** MODIFIES: */ 24 uint32_t in32(uint16_t port); 25 26 #if defined(CONFIG_DEBUG_BUILD) || defined(CONFIG_PRINTING) 27 void serial_init(uint16_t port); 28 #endif 29 30