기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
이 NAND를 다루고 싶은데 어플리케이션은 어떻게 만들어야 하나여?
현재 파일 시스템과 커널은 micro sd card에 있고요 데모 보드 커널에 NAND 컨트롤러가 있는데
보드에 붙어 있는 NAND를 사용하기 위해서는 어떻게 해야 하나여 ^^; 가이드 라인은 못 잡고 있어서여..
그리고 붙어 있는 NAND가 정상 동작하는지도 테스트 해보고 싶어서여 ^^;
2012.11.01 01:08:43 *.94.94.132
헉...질문범위가 너무 넓네요..답변을 해도 왠지 뜬구름 잡는 답변이 될 듯 ....
우선 nand를 사용하기위해서는 디바이스 드라이버를 짜야겠죠.
무지 골아픈 부분인데.. read, write 등등은 그냥 여기저기 소스 참조해서 공부하면 될테지만
bad block, ECC 부분이 좀 골아 플겁니다. 이런 부분들도 역시 다른 소스 참조해서 공부하신
다음 수정하셔야 될거고요.
그리고 리눅스라면 kernel 보다는 uboot 에서 일차적으로 작업을 하시는게 좋을 겁니다.
uboot에서 작업을 한 후 커널에 드라이버를 이식하고 MTD 설정하고 하면 될겁니다.
참고로 초기 보드를 받았을 때 1차적인 device 검증은 uboot에서 많이 합니다. 일단 uboot
가 돌아가야 커널이 돌수 있기 때문도 있지만 소스를 새로짜거나 수정하기에 uboot가
더 편한 부분이 있어서 그렇습니다.
그리고 드라이버 다 짜면 테스트를 해야 하는데 uboot 커멘드에 보면 기본적으로 nand 관련
명령어들이 있습니다. erase, write , dump 등등 많은데 드라이버 다 짠후에 write 해보고 정상적
으로 되었는디 dump 떠서 확인하고 하는 등등으로 테스트를 많이 하죠.
아니면 대량으로 쓰고 dump 떠서 파일로 저장하는 등의 프로그램을 짜기도 합니다.
nand 같은 경우는 타이밍 문제나 기타 hw 적인 부분도 같이 봐야 해서 처음 하시는 분은 정말
손도 못델 정도입니다. 그래서 이부분은 혼자 독학하려면 꽤 오랜 시간이 걸리죠.
가장 좋은 방법은 일단 nand 로 동작하는 보드의 소스를 꼼꼼히 분석후 새로운 보드에 직접
올려보는 거죠. 이때 모르는 것은 물어서든, 책을 보든 어떻게해서든 한번 올려보면 아마 다음
부터는 수월해 지실겁니다.
헉...질문범위가 너무 넓네요..답변을 해도 왠지 뜬구름 잡는 답변이 될 듯 ....
우선 nand를 사용하기위해서는 디바이스 드라이버를 짜야겠죠.
무지 골아픈 부분인데.. read, write 등등은 그냥 여기저기 소스 참조해서 공부하면 될테지만
bad block, ECC 부분이 좀 골아 플겁니다. 이런 부분들도 역시 다른 소스 참조해서 공부하신
다음 수정하셔야 될거고요.
그리고 리눅스라면 kernel 보다는 uboot 에서 일차적으로 작업을 하시는게 좋을 겁니다.
uboot에서 작업을 한 후 커널에 드라이버를 이식하고 MTD 설정하고 하면 될겁니다.
참고로 초기 보드를 받았을 때 1차적인 device 검증은 uboot에서 많이 합니다. 일단 uboot
가 돌아가야 커널이 돌수 있기 때문도 있지만 소스를 새로짜거나 수정하기에 uboot가
더 편한 부분이 있어서 그렇습니다.
그리고 드라이버 다 짜면 테스트를 해야 하는데 uboot 커멘드에 보면 기본적으로 nand 관련
명령어들이 있습니다. erase, write , dump 등등 많은데 드라이버 다 짠후에 write 해보고 정상적
으로 되었는디 dump 떠서 확인하고 하는 등등으로 테스트를 많이 하죠.
아니면 대량으로 쓰고 dump 떠서 파일로 저장하는 등의 프로그램을 짜기도 합니다.
nand 같은 경우는 타이밍 문제나 기타 hw 적인 부분도 같이 봐야 해서 처음 하시는 분은 정말
손도 못델 정도입니다. 그래서 이부분은 혼자 독학하려면 꽤 오랜 시간이 걸리죠.
가장 좋은 방법은 일단 nand 로 동작하는 보드의 소스를 꼼꼼히 분석후 새로운 보드에 직접
올려보는 거죠. 이때 모르는 것은 물어서든, 책을 보든 어떻게해서든 한번 올려보면 아마 다음
부터는 수월해 지실겁니다.