first commit

This commit is contained in:
Dan Peori
2010-10-18 12:54:49 -03:00
commit 8a3bef9012
612 changed files with 74685 additions and 0 deletions

23
src/nand/Makefile.am Normal file
View File

@@ -0,0 +1,23 @@
libdir = @PSPSDK_LIBDIR@
CC = @PSP_CC@
CCAS = $(CC)
AR = @PSP_AR@
RANLIB = @PSP_RANLIB@
INCLUDES = -I$(top_srcdir)/src/base -I$(top_srcdir)/src/kernel
CFLAGS = @PSPSDK_CFLAGS@
CCASFLAGS = $(CFLAGS) -I$(top_srcdir)/src/base -I$(top_srcdir)/src/kernel
NAND_DRIVER_OBJS = sceNand_driver_0000.o sceNand_driver_0001.o sceNand_driver_0002.o sceNand_driver_0003.o sceNand_driver_0004.o sceNand_driver_0005.o sceNand_driver_0006.o sceNand_driver_0007.o sceNand_driver_0008.o sceNand_driver_0009.o sceNand_driver_0010.o sceNand_driver_0011.o sceNand_driver_0012.o sceNand_driver_0013.o sceNand_driver_0014.o sceNand_driver_0015.o sceNand_driver_0016.o sceNand_driver_0017.o sceNand_driver_0018.o sceNand_driver_0019.o sceNand_driver_0020.o sceNand_driver_0021.o sceNand_driver_0022.o sceNand_driver_0023.o sceNand_driver_0024.o sceNand_driver_0025.o sceNand_driver_0026.o sceNand_driver_0027.o sceNand_driver_0028.o sceNand_driver_0029.o sceNand_driver_0030.o sceNand_driver_0031.o sceNand_driver_0032.o sceNand_driver_0033.o sceNand_driver_0034.o sceNand_driver_0035.o sceNand_driver_0036.o sceNand_driver_0037.o sceNand_driver_0038.o sceNand_driver_0039.o
libpspnandincludedir = @PSPSDK_INCLUDEDIR@
libpspnandinclude_HEADERS = pspnand_driver.h
lib_LIBRARIES = libpspnand_driver.a
libpspnand_driver_a_SOURCES = sceNand_driver.S
libpspnand_driver_a_LIBADD = $(NAND_DRIVER_OBJS)
$(NAND_DRIVER_OBJS): sceNand_driver.S
$(COMPILE) -DF_$* $< -c -o $@

76
src/nand/pspnand_driver.h Normal file
View File

@@ -0,0 +1,76 @@
/*
* PSP Software Development Kit - http://www.pspdev.org
* -----------------------------------------------------------------------
* Licensed under the BSD license, see LICENSE in PSPSDK root for details.
*
* pspnand_driver.h - Definitions and interfaces to the NAND (flash) driver.
*
* Copyright (c) 2005 Marcus R. Brown <mrbrown@0xd6.org>
*
* $Id: pspnand_driver.h 1211 2005-10-24 06:36:00Z mrbrown $
*/
#ifndef PSPNAND_DRIVER_H
#define PSPNAND_DRIVER_H
#include <pspkerneltypes.h>
#ifdef __cplusplus
extern "C" {
#endif
int sceNandSetWriteProtect(int protectFlag);
int sceNandLock(int writeFlag);
void sceNandUnlock(void);
int sceNandReadStatus(void);
int sceNandReset(int flag);
int sceNandReadId(void *buf, SceSize size);
int sceNandReadPages(u32 ppn, void *buf, void *buf2, u32 count);
/*
// sceNandWritePages
// sceNandReadAccess
// sceNandWriteAccess
// sceNandEraseBlock
// sceNandReadExtraOnly
// sceNandCalcEcc
// sceNandVerifyEcc
// sceNandCollectEcc
*/
int sceNandGetPageSize(void);
int sceNandGetPagesPerBlock(void);
int sceNandGetTotalBlocks(void);
/*
// sceNandWriteBlock
// sceNandWriteBlockWithVerify
*/
int sceNandReadBlockWithRetry(u32 ppn, void *buf, void *buf2);
/*
// sceNandVerifyBlockWithRetry
// sceNandEraseBlockWithRetry
*/
int sceNandIsBadBlock(u32 ppn);
/*
// sceNandEraseAllBlock
// sceNandTestBlock
*/
#ifdef __cplusplus
}
#endif
#endif /* PSPNAND_DRIVER_H */

124
src/nand/sceNand_driver.S Normal file
View File

@@ -0,0 +1,124 @@
.set noreorder
#include "pspimport.s"
#ifdef F_sceNand_driver_0000
IMPORT_START "sceNand_driver",0x00010000
#endif
#ifdef F_sceNand_driver_0001
IMPORT_FUNC "sceNand_driver",0xA513BB12,sceNandInit
#endif
#ifdef F_sceNand_driver_0002
IMPORT_FUNC "sceNand_driver",0xD305870E,sceNandEnd
#endif
#ifdef F_sceNand_driver_0003
IMPORT_FUNC "sceNand_driver",0x73A68408,sceNandSuspend
#endif
#ifdef F_sceNand_driver_0004
IMPORT_FUNC "sceNand_driver",0x0F9BBBBD,sceNandResume
#endif
#ifdef F_sceNand_driver_0005
IMPORT_FUNC "sceNand_driver",0x84EE5D76,sceNandSetWriteProtect
#endif
#ifdef F_sceNand_driver_0006
IMPORT_FUNC "sceNand_driver",0xAE4438C7,sceNandLock
#endif
#ifdef F_sceNand_driver_0007
IMPORT_FUNC "sceNand_driver",0x41FFA822,sceNandUnlock
#endif
#ifdef F_sceNand_driver_0008
IMPORT_FUNC "sceNand_driver",0xE41A11DE,sceNandReadStatus
#endif
#ifdef F_sceNand_driver_0009
IMPORT_FUNC "sceNand_driver",0x7AF7B77A,sceNandReset
#endif
#ifdef F_sceNand_driver_0010
IMPORT_FUNC "sceNand_driver",0xFCDF7610,sceNandReadId
#endif
#ifdef F_sceNand_driver_0011
IMPORT_FUNC "sceNand_driver",0x89BDCA08,sceNandReadPages
#endif
#ifdef F_sceNand_driver_0012
IMPORT_FUNC "sceNand_driver",0x8AF0AB9F,sceNandWritePages
#endif
#ifdef F_sceNand_driver_0013
IMPORT_FUNC "sceNand_driver",0xE05AE88D,sceNand_driver_E05AE88D
#endif
#ifdef F_sceNand_driver_0014
IMPORT_FUNC "sceNand_driver",0x8932166A,sceNand_driver_8932166A
#endif
#ifdef F_sceNand_driver_0015
IMPORT_FUNC "sceNand_driver",0xC478C1DE,sceNand_driver_C478C1DE
#endif
#ifdef F_sceNand_driver_0016
IMPORT_FUNC "sceNand_driver",0xBADD5D46,sceNand_driver_BADD5D46
#endif
#ifdef F_sceNand_driver_0017
IMPORT_FUNC "sceNand_driver",0x766756EF,sceNandReadAccess
#endif
#ifdef F_sceNand_driver_0018
IMPORT_FUNC "sceNand_driver",0x0ADC8686,sceNandWriteAccess
#endif
#ifdef F_sceNand_driver_0019
IMPORT_FUNC "sceNand_driver",0xEB0A0022,sceNandEraseBlock
#endif
#ifdef F_sceNand_driver_0020
IMPORT_FUNC "sceNand_driver",0x5182C394,sceNandReadExtraOnly
#endif
#ifdef F_sceNand_driver_0021
IMPORT_FUNC "sceNand_driver",0xEF55F193,sceNandCalcEcc
#endif
#ifdef F_sceNand_driver_0022
IMPORT_FUNC "sceNand_driver",0x18B78661,sceNandVerifyEcc
#endif
#ifdef F_sceNand_driver_0023
IMPORT_FUNC "sceNand_driver",0xB795D2ED,sceNandCollectEcc
#endif
#ifdef F_sceNand_driver_0024
IMPORT_FUNC "sceNand_driver",0xD897C343,sceNand_driver_D897C343
#endif
#ifdef F_sceNand_driver_0025
IMPORT_FUNC "sceNand_driver",0xCE9843E6,sceNandGetPageSize
#endif
#ifdef F_sceNand_driver_0026
IMPORT_FUNC "sceNand_driver",0xB07C41D4,sceNandGetPagesPerBlock
#endif
#ifdef F_sceNand_driver_0027
IMPORT_FUNC "sceNand_driver",0xC1376222,sceNandGetTotalBlocks
#endif
#ifdef F_sceNand_driver_0028
IMPORT_FUNC "sceNand_driver",0x716CD2B2,sceNandWriteBlock
#endif
#ifdef F_sceNand_driver_0029
IMPORT_FUNC "sceNand_driver",0xB2B021E5,sceNandWriteBlockWithVerify
#endif
#ifdef F_sceNand_driver_0030
IMPORT_FUNC "sceNand_driver",0xC32EA051,sceNandReadBlockWithRetry
#endif
#ifdef F_sceNand_driver_0031
IMPORT_FUNC "sceNand_driver",0x5AC02755,sceNandVerifyBlockWithRetry
#endif
#ifdef F_sceNand_driver_0032
IMPORT_FUNC "sceNand_driver",0x8933B2E0,sceNandEraseBlockWithRetry
#endif
#ifdef F_sceNand_driver_0033
IMPORT_FUNC "sceNand_driver",0x01F09203,sceNandIsBadBlock
#endif
#ifdef F_sceNand_driver_0034
IMPORT_FUNC "sceNand_driver",0xC29DA136,sceNand_driver_C29DA136
#endif
#ifdef F_sceNand_driver_0035
IMPORT_FUNC "sceNand_driver",0x3F76BC21,sceNand_driver_3F76BC21
#endif
#ifdef F_sceNand_driver_0036
IMPORT_FUNC "sceNand_driver",0xEBA0E6C6,sceNand_driver_EBA0E6C6
#endif
#ifdef F_sceNand_driver_0037
IMPORT_FUNC "sceNand_driver",0x2FF6081B,sceNand_driver_2FF6081B
#endif
#ifdef F_sceNand_driver_0038
IMPORT_FUNC "sceNand_driver",0x2674CFFE,sceNandEraseAllBlock
#endif
#ifdef F_sceNand_driver_0039
IMPORT_FUNC "sceNand_driver",0x9B2AC433,sceNandTestBlock
#endif