기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

yaffs 관련 글도 읽어봤지만 이해가 가질 않습니다.
고수님들 좀 알려주세요..
여러문서들을 봤는데 EZ-X5 yaffs문서를 기준으로 질문좀 드리겠습니다.
일단 개념은 어느정도 이해한것 같습니다.
현재 사용하는 보드는 mds보드이구요 yaffs2패치까지는 되어있는것 같습니다.
yaffs커널패치를 해야하는데 이것은 이미 되어있었습니다.
커널소스에서 make menuconfig 들어가면 yaffs2메뉴가 체크되어있고
부팅후 cat /proc/filesystems하면 yaffs2가 보입니다.
그리고 파티션은 mtdblock1~4까지 나누어져있습니다.
mtdblock4가 userdata영역으로 표시되어 이영역을 마운트하려고
마운트를 아래와 같이 하면 세크먼트 오류가 발생합니다.
질문사항
1. 아래메시지로 봤을때 수정해야할 사항
2. 마운트할때 해당블럭이 yaffs2로 초기화해야하는지 해야한다면 방법은
  (초기화 툴에 관련된 문서도 보았는데 어디서 어떻게 실행하는지 모르겠습니다.)
3. 현재 커널패치가 잘못되어있다면 다시 패치하는 방법

모르는게 아직 많지만 위 3가지에 대해서 알려주셨으면 합니다.
맨땅에 헤딩은 너무 어렵습니다.
root@MDS:~# mount -t yaffs2 /dev/mtdblock4 /tmp
yaffs: dev is 32505860 name is "mtdblock4"
yaffs: Attempting MTD mount on 31.4, "mtdblock4"
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c30f0000
[00000000] *pgd=32e02031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1]
Modules linked in:
CPU: 0
PC is at nand_read_oob+0x74/0x210
LR is at nand_read_oob+0x68/0x210
pc : [<c01e2798>]    lr : [<c01e278c>]    Not tainted
sp : c0e3dbfc  ip : 00000000  fp : c0e3dc38
r10: c0f66000  r9 : 00000000  r8 : c3062000
r7 : c0f66180  r6 : 00000000  r5 : 00400000  r4 : 00000800
r3 : 00000040  r2 : 00000000  r1 : 00000000  r0 : 00000000
Flags: Nzcv  IRQs on  FIQs on  Mode SVC_32  Segment user
Control: C000717F  Table: 330F0000  DAC: 00000015
Process mount (pid: 784, stack limit = 0xc0e3c198)
Stack: (0xc0e3dbfc to 0xc0e3e000)
dbe0:                                                                c005e9e8
dc00: c005e368 0000003f c02ea5c8 00000040 00000000 00000000 00400000 00000000
dc20: c3062000 00000000 00000000 c0e3dc60 c0e3dc3c c01d7904 c01e2734 00000000
dc40: c0eb6be0 c0e4a400 00000000 00000000 00000000 c0e3dcc0 c0e3dc64 c0168edc
dc60: c01d7870 00000000 c0eb6be0 c01e1654 c01e5f5c c0e3dcc4 c0e3dca8 c0e3dc88
dc80: c01e3b5c c01e1634 00000000 00400000 00000000 c0e3dd50 c3062000 00000000
dca0: c0e3dd50 c0e3dd54 00000000 c30c4000 c03176c0 c0e3dd30 c0e3dcc4 c0169024
dcc0: c0168df8 00000001 a0000013 c043e5b0 c043e5a0 c043eb20 a0000013 c043e5b0
dce0: c043e5a0 c0e3dd1c c0e3dcf4 c0072964 c0072628 a0000013 c3062000 c3062000
dd00: 00000000 c03176c0 00000000 000003e0 c3062000 c3062000 00000000 00000001
dd20: 000003e0 c0e3ddc8 c0e3dd34 c01664b0 c0168f94 c045a000 c0072de4 c007287c
dd40: c305c800 00000000 c0e3dd54 c0161f64 c0072c38 c3062000 00000000 00000003
dd60: c3062000 c0e3dd88 c0e3dd74 c0161fcc c0161ffc c044c174 00000002 c0e3ddb0
dd80: c0e3dd8c c01624f0 c0042074 00000022 2b369f40 c3062000 000041b6 00000118
dda0: c2f18afc c3062000 00000118 0000000a c03176c0 00000000 000003e0 c0e3ddf0
ddc0: c0e3ddcc c0167b20 c016633c c3062000 c0e4a400 c2f18000 c03176c0 00000000
dde0: 00000002 c0e3de44 c0e3ddf4 c01606d8 c01676e0 c3066000 6264746d 6b636f6c
de00: c0e30034 c018b3dc c018acfc c0e3de44 c0e3de24 c00af988 c018b3d4 c0428058
de20: c2f18000 c0428040 00000000 c3066000 c3066000 c3066000 c0e3de54 c0e3de48
de40: c01608f0 c01601c0 c0e3de98 c0e3de58 c007e570 c01608dc 6264746d 6b636f6c
de60: c3060034 c3066000 c0e3de88 c0e3de78 c0e684c0 c04348f8 c04348a0 fffffff4
de80: c031795c c306b000 00000000 c0e3deac c0e3de9c c016091c c007e4a0 c01608cc
dea0: c0e3ded4 c0e3deb0 c007e7b8 c0160910 c3070000 00000000 c0e3df04 00000000
dec0: c0459000 c306b000 c0e3def4 c0e3ded8 c0094764 c007e76c 00000000 00000000
dee0: 00000000 c0e3df04 c0e3df70 c0e3def8 c0094d64 c0094704 c306b000 c3066000
df00: c3070000 c2f0c914 c04341a0 befabf37 00000010 c0e3df80 00000001 00000001
df20: 00000000 c0e3df78 c0ed0000 c0e3c000 befabf37 c0e3df50 c0e3df44 c005ee6c
df40: 00001000 c0e3df70 00000000 00000000 000a1060 c0459000 c0ed0000 c0e3c000
df60: befabf37 c0e3dfa4 c0e3df74 c00950c8 c0094bf4 c3066000 c3066000 c306b000
df80: c3070000 000a1050 c0ed0000 00000000 00000015 c0025ee4 00000000 c0e3dfa8
dfa0: c0025d40 c0095034 000a1050 c0ed0000 000a1060 000a3088 befabf37 c0ed0000
dfc0: 000a1050 c0ed0000 00000000 00000000 000a3088 00000000 befabf37 00000000
dfe0: 4019bb80 befabbf0 00067ca0 4019bb8c 60000010 000a1060 00000000 00000000
Backtrace:
[<c01e2724>] (nand_read_oob+0x0/0x210) from [<c01d7904>] (part_read_oob+0xa4/0xa8)
[<c01d7860>] (part_read_oob+0x0/0xa8) from [<c0168edc>] (nandmtd2_ReadChunkWithTagsFromNAND+0xf4/0x138)
r7 = 00000000  r6 = 00000000  r5 = 00000000  r4 = C0E4A400
[<c0168de8>] (nandmtd2_ReadChunkWithTagsFromNAND+0x0/0x138) from [<c0169024>] (nandmtd2_QueryNANDBlock+0xa0/0xf8)
[<c0168f84>] (nandmtd2_QueryNANDBlock+0x0/0xf8) from [<c01664b0>] (yaffs_ScanBackwards+0x184/0xc68)
[<c016632c>] (yaffs_ScanBackwards+0x0/0xc68) from [<c0167b20>] (yaffs_GutsInitialise+0x450/0x4cc)
[<c01676d0>] (yaffs_GutsInitialise+0x0/0x4cc) from [<c01606d8>] (yaffs_internal_read_super+0x528/0x6c4)
[<c01601b0>] (yaffs_internal_read_super+0x0/0x6c4) from [<c01608f0>] (yaffs2_internal_read_super_mtd+0x24/0x34)
[<c01608cc>] (yaffs2_internal_read_super_mtd+0x0/0x34) from [<c007e570>] (get_sb_bdev+0xe0/0x13c)
[<c007e490>] (get_sb_bdev+0x0/0x13c) from [<c016091c>] (yaffs2_read_super+0x1c/0x24)
r8 = 00000000  r7 = C306B000  r6 = C031795C  r5 = FFFFFFF4
r4 = C04348A0
[<c0160900>] (yaffs2_read_super+0x0/0x24) from [<c007e7b8>] (do_kern_mount+0x5c/0xf0)
[<c007e75c>] (do_kern_mount+0x0/0xf0) from [<c0094764>] (do_new_mount+0x70/0xa0)
[<c00946f4>] (do_new_mount+0x0/0xa0) from [<c0094d64>] (do_mount+0x180/0x19c)
r7 = C0E3DF04  r6 = 00000000  r5 = 00000000  r4 = 00000000
[<c0094be4>] (do_mount+0x0/0x19c) from [<c00950c8>] (sys_mount+0xa4/0xe8)
[<c0095024>] (sys_mount+0x0/0xe8) from [<c0025d40>] (ret_fast_syscall+0x0/0x2c)
r8 = C0025EE4  r7 = 00000015  r6 = 00000000  r5 = C0ED0000
r4 = 000A1050
Code: ebfe819f e59b2004 e3a0c000 e59a3014 (e582c000)
Segmentation fault
root@MDS:~#

고현철

2007.12.07 23:45:26
*.70.26.87

/tmp 하지 마시고

mkdir /aa
mount -t yaffs2 /dev/mtdblock4 /aa

해보세요...
안되면..........커널을 고쳐야 합니다.

김우겸

2007.12.11 03:17:36
*.203.122.78

해보니 안되는군요...^^
어느쪽을 고쳐야하나요?
커널에서 mtd패치와 yaffs2패치를 같이 해야한다고 하던데
mtd는 현재 커널에서 램디스크이미지가 nand에 구워진 상태에서 램에 정상적으로 마운트되면 되는것 아닌지요..
커널의 어디를 수정해야하는지 힌트좀 부탁드립니다.
좀 자세하게 질문드리고 싶지만 아는게 너무없네요..죄송

고현철

2007.12.11 19:38:07
*.187.47.245

커널은 yaffs 패치만 하면 됩니다. 2.6.x일 경우는

nand_read_oob에서 죽은 것으로 보아서, nand쪽의 접근 번지가 틀린 듯 하네요.

아마도 nand쪽 번지 매핑이 잘 못 된 듯....

김우겸

2007.12.12 04:24:35
*.203.122.78

아 정말 감사합니다. 찾아보겠습니다.
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
5328 [완료]Windows CE Platform Builder 5.0 설치 방법 [4] 이헌상 2007-12-04 1626
5327 nfs서버 질문입니다. [2] 문철민 2007-12-04 1432
5326 SD/MMC mount 관련 조언 부탁드립니다.. [4] 김상수 2007-12-05 1036
5325 window ce에서 이미지를 타켓보드에 download하는 방법 [5] 이헌상 2007-12-05 1207
» 안녕하세요 첨 글올립니다. yaffs 올리려고 하는데 도무지 모르겠습니... [4] 김우겸 2007-12-05 936
5323 [완료]SD card를 인식시키려면 어떻게 해야... [2] 이세종 2007-12-06 711
5322 SD 카드 인식 관련. [3] 김도형 2007-12-06 812
5321 SD카드 인식관련 [6] 권회경 2007-12-08 1281
5320 FW) Power Inductor 구할 수 있는 곳은? [1] 임장욱 2007-12-08 2236
5319 window ce 이미지 부팅 성공... [3] 이헌상 2007-12-08 1009
5318 ActiveSync/USB host 동작 관련 [5] 백상은 2007-12-09 1759
5317 [완료]LCD - framebuffer 관련 질문 이요 ^^; [1] 박준영 2007-12-09 1695
5316 [완료]window ce에서 test program 실행? [3] 이헌상 2007-12-10 1088
5315 Bios에 관해서... [4] 박찬규 2007-12-10 3110
5314 [완료] 삼성 NAND Flash 제어 질문입니다. ^^ [4] 김태현 2007-12-10 1651
5313 [완료]yaffs2커널 패치 실행이 안되는것 같습니다. 함봐주세요 [6] 김우겸 2007-12-11 925
5312 리눅스 2.4.20에서 DM9000B 문제 [5] 김충헌 2007-12-12 1319
5311 ezjtag-aesop-win -f 화일명 할때... crc에러 납니다.. [3] 김용태 2007-12-12 1140
5310 Orcad 회로도 구할 수 없을까요? [3] 조준동 2007-12-12 1258
5309 [해결]SD data read 문의 [11] 윤영진 2007-12-14 851

사용자 로그인