00001 /* 00002 * PSP Software Development Kit - http://www.pspdev.org 00003 * ----------------------------------------------------------------------- 00004 * Licensed under the BSD license, see LICENSE in PSPSDK root for details. 00005 * 00006 * pspnand_driver.h - Definitions and interfaces to the NAND (flash) driver. 00007 * 00008 * Copyright (c) 2005 Marcus R. Brown <mrbrown@0xd6.org> 00009 * 00010 * $Id: pspnand_driver.h 1211 2005-10-24 06:36:00Z mrbrown $ 00011 */ 00012 00013 #ifndef PSPNAND_DRIVER_H 00014 #define PSPNAND_DRIVER_H 00015 00016 #include <pspkerneltypes.h> 00017 00018 #ifdef __cplusplus 00019 extern "C" { 00020 #endif 00021 00022 int sceNandSetWriteProtect(int protectFlag); 00023 00024 int sceNandLock(int writeFlag); 00025 00026 void sceNandUnlock(void); 00027 00028 int sceNandReadStatus(void); 00029 00030 int sceNandReset(int flag); 00031 00032 int sceNandReadId(void *buf, SceSize size); 00033 00034 int sceNandReadPages(u32 ppn, void *buf, void *buf2, u32 count); 00035 00036 /* 00037 // sceNandWritePages 00038 // sceNandReadAccess 00039 // sceNandWriteAccess 00040 // sceNandEraseBlock 00041 // sceNandReadExtraOnly 00042 // sceNandCalcEcc 00043 // sceNandVerifyEcc 00044 // sceNandCollectEcc 00045 */ 00046 00047 int sceNandGetPageSize(void); 00048 00049 int sceNandGetPagesPerBlock(void); 00050 00051 int sceNandGetTotalBlocks(void); 00052 00053 /* 00054 // sceNandWriteBlock 00055 // sceNandWriteBlockWithVerify 00056 */ 00057 00058 int sceNandReadBlockWithRetry(u32 ppn, void *buf, void *buf2); 00059 00060 /* 00061 // sceNandVerifyBlockWithRetry 00062 // sceNandEraseBlockWithRetry 00063 */ 00064 00065 int sceNandIsBadBlock(u32 ppn); 00066 00067 /* 00068 // sceNandEraseAllBlock 00069 // sceNandTestBlock 00070 */ 00071 00072 #ifdef __cplusplus 00073 } 00074 #endif 00075 00076 #endif /* PSPNAND_DRIVER_H */