mm/include/sys_flashrom.h

29 lines
751 B
C

#ifndef SYS_FLASHROM_H
#define SYS_FLASHROM_H
#include "ultra64.h"
typedef struct FlashromRequest {
/* 0x00 */ s32 type;
/* 0x04 */ s32 response;
/* 0x08 */ void* addr;
/* 0x0C */ u32 pageNum;
/* 0x10 */ u32 pageCount;
/* 0x14 */ OSMesgQueue queue;
/* 0x2C */ OSMesg msgBuf[1];
} FlashromRequest; // size = 0x30
#define FLASHROM_REQUEST_WRITE 1
#define FLASHROM_REQUEST_READ 2
#define FLASH_TYPE_MAGIC 0x11118001
s32 SysFlashrom_InitFlash(void);
s32 SysFlashrom_Read(void* addr, u32 pageNum, u32 pageCount);
void SysFlashrom_WriteAsync(void* addr, u32 pageNum, u32 pageCount);
s32 SysFlashrom_IsBusy(void);
s32 SysFlashrom_AwaitResult(void);
void SysFlashrom_WriteSync(void* addr, u32 pageNum, u32 pageCount);
#endif