'blob'에 해당되는 글 1건

  1. 2009.12.11 [PXA255-pro3/Linux] Kernel 2.4에서 2.6으로 업데이트하기

편의상 Huins에서 제공하는 CD 6.0을 기준으로 동봉된 이미 컴파일 된 파일로 하겠다.

기존 2.4에서는 부트로더로 BLOB를 사용하였고 tftp를 이용하여 zImage파일을 로드하여 flash메모리에 적재했다.
하지만 2.6에서는 부트로더는 u-boot라는 먼가 생소한(아직 정확하게 무엇인지는 모른다)부트로더를 사용한다.
사용법은 비슷한듯 하지만 BLOB에서 2.6커널을 zImage로 올리려고하니 커널 영역으로 할당된 플래시 메모리가 작아 올라가지 않는것~!!!

집에 패러럴포트도 없는 지라 JTAG을 이용하여 부트로더를 새로 올리는 것도 불가능....
고민 끝에 이미 올라와 있는 BLOB를 이용하여 u-boot를 올려보기로 했다.

생각보다 blob로 부트로더를 올리는 것은 어렵지 않았다.

 boot>tftp u-boot.bin blob
 ...
 boot>flash blob
 ...
 boot>reboot
(이 작업을 위해선 당연히 호스트의 tftpboot디렉터리에 u-boot.bin파일을 올려두어야 한다.)

리부트시키면... 너무 간단히도 새로운 부트로더가 실행됨을 알수 있다.

기존의 ip설정으로 맞추기 위해,
 PRO3>set serverip 192.168.1.100     // 호스트 IP설정
 PRO3>set ipaddr 192.168.1.99     // 타겟 IP설정
 PRO3>setenv     // 설정값 기록

시디의 Image디렉터리의 내용을 /tftpboot/pxa255_pro3 에 복사해두고 , 각각 kernel과 파일시스템을 올린다.
 PRO3>run linuxf
 ...
 PRO3>run rootf
 ...

파일시스템의 경우 꽤 긴시간이 걸리므로 여유있게 기다리는 것이 좋다.

run 명령으로 위와같은 인자값을 주면 자동적으로 /tftpboot/pxa255_pro3 에서 해당 파일을 찾아 다운로드하고,
플래시에 기록까지 하게 된다.

여기 까지 완료 되었다면 마지막으로 다음 명령을 입력하여 kernel로 진입한다. 
 PRO3>boot
Posted by Hugh.Kim