1 //
2 // Copyright (c) 2010-2025 Antmicro
3 //
4 // This file is licensed under MIT License.
5 // Full license text is available in 'licenses/MIT.txt' file.
6 //
7
8 #include <stdint.h>
9 #include "arch_callbacks.h"
10 #include "renode_imports.h"
11
EXTERNAL(uint32_t,read_byte_from_port,uint32_t)12 EXTERNAL(uint32_t, read_byte_from_port, uint32_t)
13 uint8_t tlib_read_byte_from_port(uint16_t address)
14 {
15 return (uint8_t)read_byte_from_port(address);
16 }
17
EXTERNAL(uint32_t,read_word_from_port,uint32_t)18 EXTERNAL(uint32_t, read_word_from_port, uint32_t)
19 uint16_t tlib_read_word_from_port(uint16_t address)
20 {
21 return (uint16_t)read_word_from_port(address);
22 }
23
EXTERNAL(uint32_t,read_double_word_from_port,uint32_t)24 EXTERNAL(uint32_t, read_double_word_from_port, uint32_t)
25 uint32_t tlib_read_double_word_from_port(uint16_t address)
26 {
27 return read_double_word_from_port(address);
28 }
29
EXTERNAL(void,write_byte_to_port,uint32_t,uint32_t)30 EXTERNAL(void, write_byte_to_port, uint32_t, uint32_t)
31 void tlib_write_byte_to_port(uint16_t address, uint8_t value)
32 {
33 return write_byte_to_port(address, value);
34 }
35
EXTERNAL(void,write_word_to_port,uint32_t,uint32_t)36 EXTERNAL(void, write_word_to_port, uint32_t, uint32_t)
37 void tlib_write_word_to_port(uint16_t address, uint16_t value)
38 {
39 return write_word_to_port(address, value);
40 }
41
EXTERNAL(void,write_double_word_to_port,uint32_t,uint32_t)42 EXTERNAL(void, write_double_word_to_port, uint32_t, uint32_t)
43 void tlib_write_double_word_to_port(uint16_t address, uint32_t value)
44 {
45 return write_double_word_to_port(address, value);
46 }
47
EXTERNAL(int32_t,get_pending_interrupt)48 EXTERNAL(int32_t, get_pending_interrupt)
49 int tlib_get_pending_interrupt()
50 {
51 return get_pending_interrupt();
52 }
53
EXTERNAL(uint64_t,get_instruction_count)54 EXTERNAL(uint64_t, get_instruction_count)
55 uint64_t tlib_get_instruction_count()
56 {
57 return get_instruction_count();
58 }
59