summaryrefslogtreecommitdiff
path: root/src/os/__osEPiRawReadIo.c
blob: 134c6b7569bb29daad867e6d18c61384c249cea9 (plain)
1
2
3
4
5
6
7
8
9
10
11
#include "libultra_internal.h"
#include "hardware.h"

s32 __osEPiRawReadIo(OSPiHandle* arg0, u32 devAddr, u32* data) {
    register s32 stat;
    while (stat = HW_REG(PI_STATUS_REG, s32), stat & (PI_STATUS_BUSY | PI_STATUS_IOBUSY | PI_STATUS_ERROR)) {
        ;
    }
    *data = HW_REG(arg0->baseAddress | devAddr, s32);
    return 0;
}