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

안녕하세요.

처음으로 질문을 올리네요
날씨가 점점 더워지고 있네요... 건강 조심들 하시구요.

다름이 아니라. 6410에 MLC NAND를 붙이고 있는 작업을 진행중입니다.

개발환경은 아래와 같습니다.
Board : 자체 제작 보드.
kernel : 2.6.29(자료실에 올라와 있는 커널입니다.)
NAND : K8G8G08U0A
Partition : 5 Partition
Bootloader
Kernel
RootFs(Yaffs2)
Ssytem
userdata

이렇게 나눴고,

Kernal CMDLINE :  root=/dev/mtdblock2 rootfstype=yaffs2 init=/linuxrc console0

이렇게 설정하였습니다.

mkyaffs2image로 Yaffs2 이미지로 만들어 이미지를 WRITE 했을때 아래와 같은 Kernel panic 현상이 나타납니다.

...............
logger: created 64K log 'log_radio'                                            
oprofile: using arm/armv6                                                      
TCP cubic registered                                                           
VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5        
s3c2410-rtc s3c2410-rtc: hctosys: invalid date/time                            
yaffs: dev is 32505858 name is "mtdblock2"                                     
yaffs: passed flags ""                                                         
yaffs: Attempting MTD mount on 31.2, "mtdblock2"                               
yaffs: auto selecting yaffs2                                                   
yaffs_read_super: isCheckpointed 0                                             
VFS: Mounted root (yaffs2 filesystem) on device 31:2.                           
err = 0                                                                        
Freeing init memory: 136K                                                      
Warning: unable to open an initial console.                                    
Failed to execute /linuxrc.  Attempting defaults...                            
Kernel panic - not syncing: No init found.  Try passing init= option to kernel.

여러 글들을 읽어봤습니다만,
아래와 같이 여러가지의 케이스가 있는것 같습니다.

1) mtdblock2가 제대로 마운트 되지 않음.
2) yaffs2 image가 잘못 만들어짐.

이중에 제가 의심이 되는 부분이 2)번인것 같습니다.

제가 사용하고 있는 NAND는 2K Page에 64 Spare를 갖고 있는 놈인데요. 현재 8bit ECC(H/W)를 사용하고 있습니다.
eccbyte가 13으로 설정이 되어 있고, total 52byte를 사용하게 되더군요.

이렇게 되면, total 64 byte중 52 byte를 사용하게 되고, yaffs2 image의 tag 정보가 28byte라서, oob 영역에 겹쳐져서 써지는게 맞는것 같은데, 기존의 mkyaffs2image라는 놈으로 만들어서는 안될것같고 수정이 되어야 할것 같은데, 당췌 어떻게 해야 할지 감이 오지 않습니다.

두번째 질문입니다.

ECC를 8BIT로 사용하게 되면, error가 발생하지 않습니다만, 4bit로 하게 되면 uncorrectabe error가 발생을 합니다.
제가 사용하고 있는 NAND는 꼭 8BIT ECC를 사용하여야만 하는지 궁금합니다.

그럼 잘 부탁드립니다.






고현철

2009.05.28 02:16:19
*.32.117.22

MLC NAND에서 yaffs2를 못쓸겁니다. hw ECC를 지원하는 않아서요.......

물론 수정하면 되긴 할겁니다....^^

MLC nand는 결국 hw에 sw를 두들겨 맞춰야 하는 구조입니다.

우한규

2009.05.28 03:18:42
*.170.120.67

안녕하세요 고현철님...
눈팅만으로 보다가 글로나마 직접 인사드리게 되네요. ^^
사용하고 있는  NAND(MLC Type)에서  4bit/512Byte ECC라고 명시되어 있는데 지원하는게 아닐까요?
오전에 질문올리고나서 잠시 보다가 Manual을 보고 잘못 세팅되어 있는것을 보고, 수정하여
booting 까지 되는것을 확인하였습니다.
Shell prompt까지 떨어지고  Android 까지 동작하는것을 확인 하였습니다.(lcd가 없는 관계로 Log상으로만 확인을 하였고요...)
8Bit ECC로 설정하면 52Byte가 필요해서 4Bit로 사용하니 부팅이 되네요.
물론 yaffs2로 사용을 하였습니다.
수정사항은 별로 없고 기존 24 Kernel을 올렸습니다. ^^
어쨌든 기본적인 동작은 되니, 세부적으로 더 봐야겠네요.

답변 감사드립니다.

즐거운 하루 되세요.

고현철

2009.05.28 08:05:28
*.32.117.22

안녕하세요...^^

음....삼성거면 그 부분을 피해갔을 수도 있겠네요........ㅎ

oob 영역에서 yaffs2가 쓰는 영역을 피해가면 가능할거라고는 생각합니다만....대용량으로 간다면 yaffs2는 부팅속도에
좀 문제가 있을 듯 합니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6188 안드로이드 마이크 입력이 끊어집니다. [25] GloomyDay 2014-04-03 2976
6187 [ODROID] MediaPlayer RTSP 테스트 중입니다. [1] 규야 2010-03-12 2968
6186 SDRAM 설계변경 [2] 조정근 2008-09-19 2960
6185 Android 단말에서 Rndis Host Driver를 사용할 수 있나요? acedon 2013-05-10 2946
6184 Android nand에 포팅시 kernel panic에 대한 질문입니다. [3] 최종환 2009-03-21 2942
6183 S3C2440 보드에 삼성 CCD 카메라 포팅 질문입니다..[완료] [11] 김창연 2006-09-27 2940
6182 6410 jffs2 사용시 erase block의 의미가 무엇인지요? [3] 윤인성 2009-03-04 2939
6181 [arndale][origen] 커널 2.6이 돌아가는 리눅스 [3] monad 2013-05-02 2931
6180 LX800에 사용할만한 3.5인치 LCD가 [5] 황민순 2008-09-17 2922
6179 S3C6410의 USB 2.0 OTG 질문입니다. [4] 여정휘 2009-02-14 2913
6178 ODROID-T의 App. Heap Memory 부족 문제. [6] 최가이버 2010-07-07 2911
6177 핼프미 VGA칩 TDA8771질문좀 부디 [2] 노상혁 2007-10-31 2905
6176 [완료] xp설치중 usb 주변기기사용불가한가요? [5] 황철진 2007-05-11 2905
6175 [질문]AESOP-LX800 용 네비게이션 선택? [2] 윤덕배 2007-05-25 2902
6174 [u-boot] 1.1.6 에서의 NAND 부트 관련 [2] 황인용 2009-04-11 2899
» S3C6410 MLC NAND 질문입니다. [3] 우한규 2009-05-27 2894
6172 [완료] USB DMB 모듈 추천좀 해주세요 [2] 한영민 2007-05-11 2891
6171 7인치 LCD 관련 문의 및 도움 요청 [3] 차준호 2008-05-22 2886
6170 mknod 메이저 마이너 번호에 대해서 궁금한게 있는데요 [1] biokk 2014-02-17 2881
6169 [질문] LAN카드와 해상도 질문드립니다. [2] 김증일 2007-05-09 2880

사용자 로그인