MNRS-BM-BSP/include/ehrenberg/devices/aclint.h

29 lines
860 B
C
Raw Normal View History

2024-05-30 18:32:23 +02:00
#ifndef _DEVICES_ACLINT_H
#define _DEVICES_ACLINT_H
2024-02-22 17:09:35 +01:00
#include <stdint.h>
2024-05-30 18:32:23 +02:00
#include "gen/aclint.h"
2024-02-22 17:09:35 +01:00
static void set_aclint_mtime(volatile aclint_t* reg, uint64_t value){
set_aclint_mtime_hi(reg, (uint32_t)(value >> 32));
set_aclint_mtime_lo(reg, (uint32_t)value);
}
static uint64_t get_aclint_mtime(volatile aclint_t* reg){
uint64_t value = ((uint64_t)get_aclint_mtime_hi(reg) << 32) | (uint64_t)get_aclint_mtime_lo(reg);
return value;
}
static void set_aclint_mtimecmp(volatile aclint_t* reg, uint64_t value){
set_aclint_mtimecmp0hi(reg, (uint32_t)(value >> 32));
set_aclint_mtimecmp0lo(reg, (uint32_t)value);
}
static uint64_t get_aclint_mtimecmp(volatile aclint_t* reg){
uint64_t value = ((uint64_t)get_aclint_mtimecmp0hi(reg) << 32) | (uint64_t)get_aclint_mtimecmp0lo(reg);
return value;
}
2024-05-30 18:32:23 +02:00
#endif /* _DEVICES_ACLINT_H */