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

안녕하십니까! 현재 AU1200에 리눅스를 올릴러고 하는 초보입니다.

아무리 해도 NAND FLASH에 PID와 VID가 읽혀지지 않아 이렇게 질문을 올립니다.

현재 ezboot코드를 사용 하여 제 보드에 맞게 수정을 하고 있습니다.

ezboot는 AU1250이나 저는 AU1200 인 관계로 CPU클럭 및 버스클럭설정을 바꾼후 시리얼

통신이 정상적으로 되었습니다.

NOR부분도 제가 가진 보드에 맞게 수정하였습니다.

그런데 NAND가 VID, PID가 전혀 읽혀지지 않습니다.

3일동안 삽질해도 도저히 감이 오지 않아 이렇게 질문을 올립니다.

현재  NAND 의 Chip Select의 경우 R_CS2에 연결이 되어 있으며

NOR 플래쉬가 R_CS0에 연결이 되어 있습니다. (플래쉬 - K9K8G08U0A)

일단 제가 PID를 읽어온 코드는..

#define KSEG1_MEM_STNDCTRL             __REG(0xB4001100)
#define KSEG1_MEM_STADDR2              __REG(0xB4001028)

#define nCS0_PHYS       0xBE000000    // 0x1E000000 - 0x1FFFFFFF  (32M)
#define nCS1_PHYS       0xBC000000    // 0x1C000000 - 0x1DFFFFFF  (32M)
#define nCS2_PHYS       0xBA000000    // 0x1A000000 - 0x1BFFFFFF  (32M)
#define nCS3_PHYS       0xB8000000    // 0x18000000 - 0x19FFFFFF  (32M)

#define NAND_BASE                    nCS2_PHYS

#define OFFSET_STNDCMD              0x00
#define OFFSET_STNDADDR             0x04
#define OFFSET_STNDDATA             0x20


// disable nand boot mode
KSEG1_MEM_STNDCTRL=0;

// Enable the NAND chip select
KSEG1_MEM_STADDR2= 0x11A03F80;

// Reset NAND
hwnand_CLE( 0xff );        
busy_wait()

hwnand_CLE( 0x90);                // read-id cmd
hwnand_ALE( 0x00 );                 //address

vid = *((volatile unsigned char *)(NAND_BASE+OFFSET_STNDDATA ));
pid = *((volatile unsigned char *)(NAND_BASE+OFFSET_STNDDATA ));
dumy = *((volatile unsigned char *)(NAND_BASE+OFFSET_STNDDATA ));
size_flag = *((volatile unsigned char *)(NAND_BASE+OFFSET_STNDDATA ));

이러한 형식으로 프로그램 하였습니다.
오실로 스코프 상으로 보았을때 칩셀렉트 핀은 뜨는것 같았으나 정확히 저 타이밍에
뜨는지는 확인 되지 않았습니다.
Busy 체크도 정상적으로 되는것 같습니다.
왜 VID와 PID가 안읽혀 지는지 알수가 없습니다.
하드웨어는 다른 OS를 올렸을 경우 모두다 정상 동작한것을 확인 하였습니다.
또한 타이밍 래치라던지 칩셀렉터 타이밍은 기본 소스에서 따로 수정하지는 않았습니다.

또한가지 궁금한것이 있습니다.
AU1200의 mem_stndctrl 이라는 레니스터에서 CS0O, CS1O, CS2O, CS3O의 하는 기능이
궁금합니다. 제가 이해하기로는 부트를 할 플래쉬에 칩셀이 어디에 연결되어 있는지
선택하는것 같은데 정확한 가르침 부탁 드립니다.
완전 초보라 이리저리 삽질 투성이네요

즐거운 하루 되세요 ^^





유형목

2008.08.08 02:11:31
*.41.109.56

아쉽게도 여기에는 ezboot 를 다루시는 분이 없네요.

다들 u-boot 를 사용하고 있어서 말이죠.

http://kelp.or.kr 이나 http://www.falinux.com 에 문의하시는게 빠를겁니다.

고현철

2008.08.08 23:45:22
*.32.117.22

음......au1200은 본지가 넘 오래되어서.......기억도.....ㅠ.ㅠ
List of Articles
번호 제목 글쓴이 날짜 조회 수
308 LTE480WV-F01(TFT TOUCH LCD) 구할 수 있을가요? [2] 홍성관 2008-09-12 1327
307 [완료] wear leveling 영역의 크기에 대해 문의드립니다. [4] 이세종 2008-09-11 756
306 S3C6400 도움좀 부탁 드릴께요.. [7] 홍성관 2008-09-07 1328
305 [완료]udev는 무엇인가요?? [4] 서종범 2008-09-04 1010
304 [질문]uda1341 음성출력에 관한 질문 [3] 문철민 2008-09-04 738
303 [완료] yaffs 이미지 압축에 대해 궁금 합니다. [1] 석헌영 2008-09-04 1090
302 [도움요청] S3C6400 [7] 이준호 2008-09-02 1525
301 [도움요청]QT로 짠 프로그램을 타겟 보드에 실행 시키려고 합니다. [4] 김기범 2008-08-26 888
300 [도움요쳥]mplayer 포팅관련 도움을 요청합니다 [2] 한주영 2008-08-19 907
299 (질문) mplayer 포팅시 문제입니다. [1] 한주영 2008-08-19 899
298 [질문] Linux에서 사용할만한 SDIO WLAN카드 문의 [2] 박종석 2008-08-18 1090
297 [질문] 밑에 질문 유현목님 댓글 토대로... ㅡ_ㅡ;; [7] 김용진 2008-08-18 801
296 [질문] 염치 없이 또 질문.. ㅡ_ㅡ; [3] 김용진 2008-08-16 918
295 [질문]sata_promise 오류 이거 어떻게 처리를 해야될지.. ㅡ.ㅡ;; [3] 김용진 2008-08-15 806
294 S3C6400 NDA 관련 Contact Point 아시나요? [3] 홍성관 2008-08-11 929
293 [완료] ECC 코드에서 Syndrome의 뜻에 대해서.. [1] 이세종 2008-08-09 1304
292 [완료] SiRFprima CPU의 ECC 알고리즘에 대해 문의드립니다. [2] 이세종 2008-08-08 851
» [질문]ezboot 에서 au1200 Nand 플래쉬 vid, pid Read관련.. [2] 김기범 2008-08-07 921
290 리눅스 서버 관련 질문입니다. [1] 정원 2008-08-07 510
289 [질문] 이미지 효과 라이브러리 [1] 한기태 2008-08-06 917

사용자 로그인