Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
serial.h
Go to the documentation of this file.
1#ifndef __LIBK_SERIAL_H__
2#define __LIBK_SERIAL_H__
3
4#include <type.h>
5
6#define SERIAL_COM1 0x3f8
7#define SERIAL_COM2 0x2f8
8#define SERIAL_COM3 0x3e8
9#define SERIAL_COM4 0x2e8
10
12void serial_send_string(char* str);
13void serial_send_number(int64_t num, int base);
14void serial_printf(const char* fmt, ...);
15void serial_putc(char c);
16void serial_clear();
17void serial_setup();
18
19#define serial_trace(...) serial2_printf(__VA_ARGS__)
20#define LOG_INFO(mod, fmt, ...) \
21 serial2_printf("[INFO][%s] " fmt "\n", mod, ##__VA_ARGS__)
22#define LOG_DEBUG(mod, fmt, ...) \
23 serial2_printf("[DEBUG][%s][%s:%d] " fmt "\n", mod, __FILE__, \
24 __LINE__, ##__VA_ARGS__)
25#define LOG_ERROR(mod, fmt, ...) \
26 serial2_printf("[ERROR][%s] " fmt "\n", mod, ##__VA_ARGS__)
27#define LOG_WARN(mod, fmt, ...) \
28 serial2_printf("[WARN][%s] " fmt "\n", mod, ##__VA_ARGS__)
29
30void serial2_printf(const char* fmt, ...);
31void serial2_flush();
32
33#define LOG2_INFO(mod, fmt, ...) \
34 serial2_printf("[INFO][%s] " fmt "\n", mod, ##__VA_ARGS__)
35#define LOG2_DEBUG(mod, fmt, ...) \
36 serial2_printf("[DEBUG][%s][%s:%d] " fmt "\n", mod, __FILE__, \
37 __LINE__, ##__VA_ARGS__)
38#define LOG2_ERROR(mod, fmt, ...) \
39 serial2_printf("[ERROR][%s] " fmt "\n", mod, ##__VA_ARGS__)
40#define LOG2_WARN(mod, fmt, ...) \
41 serial2_printf("[WARN][%s] " fmt "\n", mod, ##__VA_ARGS__)
42
43void parse_multicore(__builtin_va_list args, const char* fmt);
44#endif /* __LIBK_SERIAL_H__ */
elf_section_map uintptr_t base
Definition elf.h:296
void serial2_flush()
Definition serial.c:359
int serial_is_transmit_empty(void)
Definition serial.c:56
void serial_printf(const char *fmt,...)
void parse_multicore(__builtin_va_list args, const char *fmt)
Definition serial.c:271
void serial2_printf(const char *fmt,...)
void serial_putc(char c)
Definition serial.c:60
void serial_send_string(char *str)
Definition serial.c:67
void serial_clear()
Definition serial.c:105
void serial_setup()
Definition serial.c:46
void serial_send_number(int64_t num, int base)
Definition serial.c:72
kstring str(const char *str)
signed long int64_t
Definition type.h:49