8c2952457
김태훈
응용 프로그램 추가
|
1
2
3
|
/**
@file mtd-nand.h
@date 2010/05/27
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
4
5
|
@author 오재경 freefrug@falinux.com FALinux.Co.,Ltd.
@brief mtd를 통해 nand 플래시를 제어한ㄷ.ㅏ
|
8c2952457
김태훈
응용 프로그램 추가
|
6
|
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
7
|
@todo 테스트 함수를 아직 만들지 않았다.
|
8c2952457
김태훈
응용 프로그램 추가
|
8
9
10
11
12
|
@bug
@remark
@warning
*/
//
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
13
14
|
// 저작권 에프에이리눅스(주)
// 외부공개 금지
|
8c2952457
김태훈
응용 프로그램 추가
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
//
//----------------------------------------------------------------------------
#ifndef _MTD_NAND_HEADER_
#define _MTD_NAND_HEADER_
#define MAX_BADBLOCK_COUNT 100
#define RDERR_MANY_BADBLOCK -10000
typedef enum {
EZP_NONE = 0,
EZP_V1 = 1,
EZP_V2 = 2,
EZP_S5PV210_HEADER = 210
} ezboot_ver_t;
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
32
|
/// mtd 를 위한 개별 관리 구조체
|
8c2952457
김태훈
응용 프로그램 추가
|
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
typedef struct {
char node_name[128];
int fd;
int pos;
struct mtd_info_user info;
} mtdnand_t;
#ifdef __cplusplus
extern "C" {
#endif
/// @{
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
48
49
50
|
/// @brief mtd-nand.c 에서 제공하는 함수 리스트
extern mtdnand_t *mtdnand_create( char *fname ); /// mtd-nand 생성함수
extern void mtdnand_free( mtdnand_t *mtd ); /// mtd-nand 해제함수
|
8c2952457
김태훈
응용 프로그램 추가
|
51
|
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
52
53
54
55
56
|
extern int mtdnand_is_bad( mtdnand_t *mtd ); /// 배드블럭확인
extern int mtdnand_read ( mtdnand_t *mtd, unsigned char *buf, int count ); /// mtd-nand 에서 데이타를 읽는다.
extern int mtdnand_write( mtdnand_t *mtd, unsigned char *buf, int count ); /// mtd-nand 에 데이타를 쓴다.
extern int mtdnand_read_oob( mtdnand_t *mtd, unsigned char *buf, int count ); /// mtd-nand 의 oob 영역을 읽는다.
extern int mtdnand_read_skip_bad( mtdnand_t *mtd, unsigned char *buf, int count ); // mtd-nand 에서 배드블럭을 스킵하여 데이타를 읽는다.
|
8c2952457
김태훈
응용 프로그램 추가
|
57
|
|
3061c73f6
김태훈
인코딩 변경 EUC-KR -> ...
|
58
59
|
extern int mtdnand_seek ( mtdnand_t *mtd, int offset, int origin ); /// mtd-nand 의 엑세스 위치를 이동한다
extern int mtdnand_erase( mtdnand_t *mtd ); /// mtd-nand 의 한블럭을 지운다.
|
8c2952457
김태훈
응용 프로그램 추가
|
60
61
62
63
64
65
66
67
68
|
/// @}
#ifdef __cplusplus
}
#endif
#endif //
|