Files
mm/src/boot/O2/sleep.c
T
Derek Hensley 190b78549e Non libultra Boot Cleanup (#1370)
* reorganize

* math64

* rcp_utils

* osSyncPrintfUnused

* comment spacing
2023-09-12 10:38:31 +10:00

28 lines
546 B
C

#include "global.h"
void Sleep_Cycles(u64 time) {
OSMesgQueue mq;
OSMesg msg[1];
OSTimer timer;
osCreateMesgQueue(&mq, msg, ARRAY_COUNT(msg));
osSetTimer(&timer, time, 0, &mq, NULL);
osRecvMesg(&mq, NULL, OS_MESG_BLOCK);
}
void Sleep_Nsec(u32 nsec) {
Sleep_Cycles(OS_NSEC_TO_CYCLES(nsec));
}
void Sleep_Usec(u32 usec) {
Sleep_Cycles(OS_USEC_TO_CYCLES(usec));
}
void Sleep_Msec(u32 ms) {
Sleep_Cycles((ms * OS_CPU_COUNTER) / 1000ULL);
}
void Sleep_Sec(u32 sec) {
Sleep_Cycles(sec * OS_CPU_COUNTER);
}