blob: e242cc2bc08fee2c33fbe7b4a93b222950577027 [file] [log] [blame]
#ifndef _MSR_H
#define _MSR_H
#include <stddef.h>
#define read_msr(name) \
__extension__({ \
size_t __v; \
__asm volatile("mrs %0, " #name : "=r" (__v)); \
__v; \
})
#define write_msr(name, value) \
do { \
__asm volatile("msr " #name ", %x0" \
: : "rZ" ((size_t)value)); \
} while (0)
#endif /* _MSR_H */