타깃 보드에 부트로더가 없고 JTAG 도 없을 떄!?
DNW 와 USB 케이블을 이용하여 손쉽게 U-boot 를 포팅해보자!
===================================================================
* u-boot 빌드 및 퓨징
필요환경1 윈도우, DNW USB driver/
필요환경2 리눅스(우분투), U-boot 소스
1. 리눅스 환경에 U-boot 소스 압축을 풀어 U-boot를 빌드해준다.
* U-boot 빌드
#] cd U-bootDIR
#] make clobber
#] make aesop6410_config
#] make
#] ls -al /tftpboot 로 u-boot.bin 파일 확인
2. 윈도우에서는 보드에 케이블 연결후 USB 드라이버 설치,
* DNW 실행
* DNW 설정, 115200/COM1, 다운로드 주소 0x57e00000 설정
(0x00 의 경우 USB OTG 가 올라가 있으므로 이와 겹치지 않는 영역을 base addr 로 설정한 것임)
* 점퍼 셋팅 -> NOR 모드 설정(default NAND 모드), NAND = DUUDDU, NOR = DUDUDU
* 하이퍼 터미널 실행
3. USB OTG 에서 Download and run 선택
* Download and run 선택 후, DNW 트랜스미트 실행
** 다운로드 실행 후 재빨리 터미널로 이동하여 U-boot 로 진입
(이 타이밍이 중요하다. 시간이 초과하면 그냥 부팅해 버리는 데, 여기서 u-boot로 진입 못하면?! 당연히 커널도 없고 뭐도 없으니 "GOTO 2" 로 돌아가 처음부터 다시 수행해야한다 )
* 서버 및 타깃 보드 IP 설정
** 주의 사항 : 보드 LAN 케이블은 반드시 ETHERNET0 에 연결(이걸로 삽펏음;)
* tftp c0000000 u-boot.bin ; 메모리의 c0000000 로 u-boot.bin 파일을 다운로드
* nand erase 0 30000 ; NAND 에서 u-boot 를 write 해줄 부분 erase
* nand write c0000000 0 30000 ; 메모리의 c0000000 영역의 내용을 NAND의 0 ~ 30000 까지 write
* 타깃 보드 전원 내린 후 NAND 모드로 점퍼 설정, 재부팅
* U-boot 확인 :-)
===================================================================
참고 : DNW 프로그램, USB OTG, 점퍼 설정 방법 등은 http://www.aesop-embedded.org/ 참조
촐처 : http://www.aesop-embedded.org/
댓글