1/* @title: DMAR */
2#pragma once
3#include <console/panic.h>
4#include <console/printf.h>
5#include <log.h>
6#include <math/bit.h>
7#include <uacpi/tables.h>
8
9LOG_HANDLE_EXTERN(dmar);
10LOG_SITE_EXTERN(dmar);
11#define dmar_log(lvl, fmt, ...) \
12 log(LOG_SITE(dmar), LOG_HANDLE(dmar), lvl, fmt, ##__VA_ARGS__)
13
14#define dmar_err(fmt, ...) dmar_log(LOG_ERROR, fmt, ##__VA_ARGS__)
15#define dmar_warn(fmt, ...) dmar_log(LOG_WARN, fmt, ##__VA_ARGS__)
16#define dmar_info(fmt, ...) dmar_log(LOG_INFO, fmt, ##__VA_ARGS__)
17#define dmar_debug(fmt, ...) dmar_log(LOG_DEBUG, fmt, ##__VA_ARGS__)
18#define dmar_trace(fmt, ...) dmar_log(LOG_TRACE, fmt, ##__VA_ARGS__)
19
20bool dmar_init();
21