본문 바로가기

Job Notes/Linux & Android

[펌] [Mango64 매뉴얼] 망고64에 Bootload(uboot.bin) 올리는 방법

<출처: http://cafe.naver.com/embeddedcrazyboys.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=2957>

1.u-boot
  - nor 상태에서 u-boot를 올린다(0x57E00000).
    - DNW 실행 후 "Configuration"->"Options" 선택 후 아래와 같이 셋팅함.
      Baud Rate : 115200
      COM Port : 현재 케이블이 연결된 포트 선택
      Download Address : 0x57e00000
    - USB, Serial 연결한 후 NOR로 부팅
    - 모니터 프로그램 메뉴에서 "0: Download & Run" 선택
    - DNW의 "USB Port"->"Transmit"->Transmt" 클릭하고, u-boot.bin 선택
  - u-boot prompt 상태(3초가 지나기 전 아무키나 누른 상태)
    # nand scrub <== nand 전체 지우기
  - window에 tftp daemon 필요(tftpd32 파일 포함됨)

    tftpd32.exe 실행(Current Directory 는 u-boot,jffs2,zImage 경로를 넣어주세요)

    (IP는 컴퓨터의 IP입력)

   - u-boot network 세팅
    # setenv ipaddr 192.168.0.230;setenv serverip 192.168.0.14;setenv gatewayip 192.168.0.1

     (ip는 network상황에 따라 다르게)
  - u-boot를  nand에 쓰기
    # tftp 51000000 u-boot.bin (network 연결 필요)
    # nand erase 0 40000 <== u-boot 써질 영역 지우기
    # nand write 51000000 0 40000 <== u-boot 쓰기
  - nand mode로 바꾼후 부팅
  - u-boot 화면이 나오지 않는 경우 반복
2.kernel
  - u-boot network 세팅 후 nand 저장
   - setenv ipaddr 192.168.124.200;setenv serverip 192.168.124.10;setenv gatewayip 192.168.124.1 (ip는 network상황에 따라 다르게)
   - save (2번 반복, 처음 save 하는경우 error 메세지가 나옴)
  - 커널 저장
   - tftp 51000000 zImage
   - nand erase 40000 200000
   - nand write 51000000 40000 200000
   - setenv bootcmd "nand read 50008000 40000 200000;bootm 50008000"
   - save
  - 재부팅(커널 Test)
   - bootargs에 consol=ttySAC1이 세팅 안되어 있으므로 Uncompresssing Linux 이후에 아무 메세지 안나옴
   - setenv bootargs rootfstype=jffs2 root=/dev/mtdblock2 init=/init console=ttySAC1,115200
   - save 후 재부팅하면 커널 부팅 메세지 나옴
3.file system
  - tftp 0x51000000 6410_android_new.jffs2
   - nand erase 0x400000 0x4000000 (<== 파티션2 부분 지우기)
   - nand write.jffs2 0x51000000 0x400000 $filesize ($filesize 부분은 align에 맞게 파일 크기보다 크게)
  - setenv bootargs rootfstype=jffs2 root=/dev/mtdblock2 init=/init console=ttySAC1,115200
  - 재부팅하면 안드로이드 올라옴. 처음엔 파일시스템 초기화 및 압축 이미지 올리기 때문에 시간이 오래 걸림.
  - 넷트웍이 안되면 터미널을 통해 다음 명령 입력함.
    # mkdir /data/misc/dhcp
    # dhcpcd eth0



* Nor, Nand boot 설정

http://cafe.naver.com/embeddedcrazyboys.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=2189

-Nor: 1,3,5 ON

-Nand: 1,2,5 ON