커널 2.6으로 업그레이드의 필요성
부트로더 2.0 이상 버전으로 업그레이드
변경된 부트로더 모습
2.6 커널 이미지 만들기
램디스크 이미지 만들기
2.6 커널 이미지 와 램디스크 이미지 전송

커널 2.6으로 업그레이드의 필요성

EZ-X5는 커널 2.4로 구성되어 있지만 (주)FALINUX 자료실에서 제공되는 파일을 이용하시면 커널 2.6으로 업그레이드하실 수 있습니다. EZ-X5를 커널 2.4에서 2.6으로 업그레이드하시면 업그레이드된 커널을 사용하실 수 있는 장점 뿐만 아니라,

  • 최근에 판매되는 커널 2.6인 EZ-S3C2440와 같은 부트로더를 사용하므로서 사용 방법을 통일 할 수 있습니다.
  • 2.6 커널 보드와 같은 부트로더 소스와 커널소스, 램디스크 소스를 이용하여 이미지 파일을 만들 수 있으며,
  • 커널 2.6 보드와 같은 버전의 컴파일러를 사용하여 이미지 파일을 생성할 수 있습니다.
  • 또한 커널 2.6보드와 같은 프로그램을 사용하여, 같은 방법으로 각종 이미지 파일을 EZ-X5에 전송할 수 있어서 편리합니다.
  • 이외에도 여러 가지 장점이 있습니다.

부트로더 2.0 이상 버전으로 업그레이드

EZ-X5를 커널 2.6으로 업그레이드 하기 위해서는 커널 뿐만 아니라,

  1. 제일 먼저 부트로더를 2.0 이상 버전으로 업그레이들 해야하며,
  2. 커널을 업그레이드 한 후에,
  3. 램디스크 이미지도 업그레이드 해야 합니다.

부트로더를 2.0 이상으로 업그레이드하는 방법에는 (주)FALINUX 자료실>>EZ-X5 페이지>>커널 2.6으로 업그레이드에서 ET-BOOT 다운로드 링크를 이용하여 (1) ezboot.ez-x5를 내려받아 EZ-보드로 전송하는 방법과 (2) 최신 버전의 소스인 ez_boot.src.tar.gz를 내려 받아 아래의 순서에 따라 이미지 파일을 직접 컴파일하신 후 보드로 전송하는 방법이 있습니다.

부트로더 소스를 직접 내려 받아 컴파일해 보겠습니다.

작업의 편의를 위해 루트 디렉토리에 /ez-x5 디렉토리를 생성한 후, /ez-x5에 부트로더 소스를 풀겠습니다. 압축 파일에는 부트로더 소스뿐만 아니라 각종 EZ-보드의 부트 로더를 만들기 위한 Makefile 이 보드 이름에 따라 만들어져 있습니다.

]# mkdir /ez-x5
]# cd /ez-x5
]# tar zxvf ezboot.tar.gz
]# ls -al
합계 100
drwxrwxrwx 14 nobody nfsnobody 4096  2월 27 17:52 .
drwx------ 12 jwjw   jwjw      4096  2월 27 18:25 ..
drwxrwxrwx  6 nobody nfsnobody 4096  2월 27 18:11 .svn
-rwxrwxrwx  1 nobody nfsnobody 1941  2월 27 17:52 Makefile

... 중간 생략

drwxrwxrwx  3 nobody nfsnobody 4096  2월 27 18:04 main
-rwxrwxrwx  1 nobody nfsnobody   30  2월 27 17:52 pxa255_make.sh
-rwxrwxrwx  1 nobody nfsnobody   30  2월 27 17:52 pxa270_make.sh

  // Makefile 중에 EZ-X5에 해당하는 pxa255_make.sh 파일을 이용하여
  // 부트로더 소스를 컴파일 합니다.

]# ./pxa255_make.sh distclean         // 이전 작업으로 생긴 불필요 파일을 삭제합니다.
]# ./pxa255_make.sh                   // 부트로더를 컴파일 합니다.

   // 에러없이 작업이 완료되었다면 ./image 디렉토리에 ezboot.ez-x5 파일이 생성됩니다.

]# ls -al image/
drwxrwxrwx  3 nobody nfsnobody  4096  2월 27 18:04 .
drwxrwxrwx 14 nobody nfsnobody  4096  2월 27 17:52 ..
-rwxrwxrwx  1 root   root      60276  2월 27 18:04 ezboot.ez-x5
]# 

만들어진 ezboot.ez-x5를 JTAG 케이블을 이용하여 EZ-X5로 전송합니다. 부트로더를 EZ-X5에 전송하는 자세한 설명은 EZ보드 메뉴얼::"부트로더 쓰기, EZFlashW_EZFlash" 글을 참고하여 주십시오.

또한 EZ-X5와 함께 동봉된 CD에 있는 EZFlash 또는 EZFlashW 프로그램을 이용하셔도 좋습니다만, (주)FALINUX 자료실>>EZ-X5 페이지>>커널 2.6으로 업그레이드에 올려진 최근 버전의 프로그램을 이용하시면 더욱 편리합니다.

변경된 부트로더 모습

성공적으로 전송이 완료된 후 부팅을 하시면 이전 부트로더 내용이 이전과는 다른 모습으로 출력되는 것을 보실 수 있습니다. 제일 먼저 EZBOOT의 버전업된 버전 번호, 2.x.x를 확인하실 수 있습니니다.

또한 set 명령을 실행하시면 이전 set 메뉴와는 달리 많은 부분이 수정된 것을 보실 수 있습니다. 21개의 숫자메뉴와 6개의 영문메뉴로 구성되었으면 최근 버전의 EZBOOT 메뉴를 보시면 추가된 새로운 명령도 확인하실 수 있습니다.

WELCOME EZBOOT V2.2.48 (FALINUX Co.,Ltd) ..........PXA255(EZ-X5)
Program by You Young-chang, Oh Jae-Kyoung, Jang Hyung-Gi
Last Modify Feb 27 2008

  Detect AM29LV400_B Flash : vid=01 pid=22BA
  SIZE 4-Mbits [512-Kbytes]

  Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
  SIZE 64-Mbytes (page=512, block=16K)

Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar].

  CS8900 Init ......
  Mac Address  : [00 FA 07 78 65 05]
  Detect value : [3000:3000]
  Chip ID      : [0E63:000A]

EZBOOT>set
^^;
   1) mac address            : 00:FA:07:78:65:05    // 기본 네트워크 구성을
   2) local ip               : 192.168.10.182       // 모두 설정할 수 있습니다.
   3) local netmask          : 255.255.255.0
   4) local gateway          : 192.168.10.1
   5) server ip              : 192.168.10.55        // 이전 버전보다는 호스트로부터
   6) zImage      file name  : zImage.ez-x5         // 이미지 파일을 내려 받는 정보를
   7) ram disk    file name  : ramdisk-1.10-12M.gz  // 보다 일목요연하게
   8) boot loader file name  : ezboot.ez-x5         // 정리된 모습입니다.
   9) logo image  file name  : 
  10) auto execute full name : 
  11) autoboot wait time     : 3
  12) copy ramdisk [Y/N]     : Y
  13) arm kernel arch number : 785                 // arch number를 785로 
  14) nand part (B,C,L,K,R,A): 0,1,0,3,5,55        // NAND의 파티션 크기 설정
  15) watchdog  (sec, off=0) : 0
  16) KCMD 1 : mem=64M
  17) KCMD 2 : initrd=0xA0800000,5M root=/dev/ram ramdisk=12288
  18) KCMD 3 : console=ttyPXA2,115200
  19) KCMD 4 : 
  20) KCMD 5 : 
  21) KCMD 6 : 

  L)  Load default
      LF) load KCMD2 root=flash
      LR) load KCMD2 root=ramdisk
  S)  Save to flash
  P)  aPply & exit
  Q)  Quit

  Select >> 

이전과는 많이 달라진 부트로더 모습입니다. 여기서 주의하실 것은 13번의 arm kernel arch number를 785로 변경해 주셔야 합니다. arch number는 임베디드 보드의 커널 고유 번호로 자세한 설명은 [왕초보를 위한 강좌::"Arch Number란"]글을 참고하여 주십시오.

또한 785라는 번호는 커널 소스가 풀린 디렉토에서 arch/arm/tools/mach-types 파일 내용을 보시면 아실 수 있습니다.

]# cd [커널소스가 풀린 디렉토리]/arch/arm/tools
]# vi mach-types


# machine_is_xxx        CONFIG_xxxx             MACH_TYPE_xxx           number
#
ebsa110                 ARCH_EBSA110            EBSA110                 0
riscpc                  ARCH_RPC                RISCPC                  1
nexuspci                ARCH_NEXUSPCI           NEXUSPCI                3

               .... 중간 생략 ...

ez_ixp42x               MACH_EZ_IXP42X          EZ_IXP42X               778

               .... 중간 생략 ...

ez_x5                   MACH_EZ_X5              EZ_X5                   785
ez_s2410                MACH_EZ_S2410           EZ_S2410                1309
ez_s2440                MACH_EZ_S2440           EZ_S2440                1310
ez_ep9312               MACH_EZ_EP9312          EZ_EP9312               1311
ez_ep9315               MACH_EZ_EP9315          EZ_EP9315               1312
ez_x7                   MACH_EZ_X7              EZ_X7                   1313

               .... 중간 생략 ...

2.6 커널 이미지 만들기

(주)FALINUX 자료실>>EZ-X5 페이지>>커널 2.6으로 업그레이드에서 Kernel 다운로드 링크를 이용하여, 이미 만들어진 zImage.ez-x5를 보드로 전송하시거나 아래의 방법에 따라 직접 이미지를 생성하십시오.

최근 커널 소스를 내려 받습니다. 이 글을 작성할 때의 파일 이름은 linux-2.6.21.tar.gz 입니다. 파일 이름에 버전번호가 있어서 구별하시기 편하실 것입니다. 내려 받은 소스 파일을 아래의 순서에 따라 컴파일합니다.

  1. 커널을 컴파일하기 위해서는 /project/falinux/kernel에 압축을 풉니다.
  2. 압축해제가 끝나면 커널 소스 디렉토리가 생성됩니다.
  3. 생성된 디렉토리를 작업의 편리를 위해 /linux 로 링크를 생성합니다.
  4. 커널을 컴파일 합니다.

작업의 편의를 위해 /project/falinux/kernel 디렉토리를 생성하고, 이 디렉토리에 커널 소스를 풀겠습니다.

   // 작업할 디렉토리를 생성합니다.
  
]# mkdir kernel
]# cd kernel/                               //  생성한 디렉토리로 이동

]# tar zxvf /download/linux-2.6.21.tar.gz   // 커널 소스를 풀기를 합니다.

// linux-2.6.21 디렉토리가 생성됩니다.

]# cd linux-2.6.21                 // 커널 소스 디렉토리로 이동합니다.
]# make distclean                  // 모든 환경 설정 및 컴파일 결과를 삭제
]# make ezx5_defconfig             // 미리 준비된 기본 값을 환경값을 생성

왜 make 다음에 ezx5_defconfig 인지 설명해 드리겠습니다. ^^

앞서 말씀드린바와 같이 최근에 나오는 EZ보드는 하나의 통합된 소스를 이용하여 보드별로 필요한 이미지 파일을 생성합니다. 커널이미지도 마찬가지여서 통합 소스를 이용하여, 보드별로 Makefile의 환경만 변경하여 커널 이미지를 만들 수 있기 때문에, 이제는 보드 제품에 따라 커널 소스를 구하고, 서로 다른 제작 방법에 따라 이미지를 만드는 불편함을 해소할 수 있게 되었습니다.

물론 말씀드린바와 같이 서로 다른 특성을 가지고 있는 타겟 보드를 하나의 Makefile로 해결할 수 없으므로, 타겟 보드의 특징에 따라 커널을 만들어 주는 설정값을 만들어 주어야 하는데, 빈 파일로 설정값을 생성한다면 매우 불편할 것입니다. 이런 불편을 피하기 위해 미리 EZ-보드별로 기본 설정값을 가지고 있는 디폴트 파일을 커널 소스와 함게 제공하고 있습니다.

(1) 이 디폴트 값을 가지고 있는 파일을 이용하여 보드별로 기본 설정값을 만든 후에, (2) make menuconfig나 직접 파일을 수정하여 타겟 보드의 특성에 맞게 커널 이미지를 제작할 수 있습니다.

커널 소스의 압축이 풀린 곳을 보시면 arch 디렉토리가 있으며, arch 디렉토리 안에는 다시 cpu 타입별로 디렉토리가 존재합니다. 이 cpu 디렉토리 안의 configs 디렉토리에 EZ-보드별로 기본 설정 파일이 준비되어 있습니다.

]$ ls arch/arm/configs/
assabet_defconfig        ezx5_defconfig        mainstone_defconfig
at91rm9200dk_defconfig   footbridge_defconfig  mx1ads_defconfig
at91rm9200ek_defconfig   fortunet_defconfig    neponset_defconfig
at91sam9260ek_defconfig  h3600_defconfig       netwinder_defconfig
at91sam9261ek_defconfig  h7201_defconfig       netx_defconfig
at91sam9263ek_defconfig  h7202_defconfig       ns9xxx_defconfig
ateb9200_defconfig       hackkit_defconfig     omap_h2_1610_defconfig
badge4_defconfig         integrator_defconfig  onearm_defconfig
carmeva_defconfig        iop13xx_defconfig     pleb_defconfig
cerfcube_defconfig       iop32x_defconfig      pnx4008_defconfig
clps7500_defconfig       iop33x_defconfig      pxa255-idp_defconfig
collie_defconfig         ixp2000_defconfig     realview-smp_defconfig
corgi_defconfig          ixp23xx_defconfig     realview_defconfig
csb337_defconfig         ixp4xx_defconfig      rpc_defconfig
csb637_defconfig         jornada720_defconfig  s3c2410_defconfig
ebsa110_defconfig        kafa_defconfig        shannon_defconfig
edb7211_defconfig        kb9202_defconfig      shark_defconfig
edks3c2440_defconfig     lart_defconfig        simpad_defconfig
emx7_defconfig           lpd270_defconfig      spitz_defconfig
ep93xx_defconfig         lpd7a400_defconfig    trizeps4_defconfig
espns_defconfig          lpd7a404_defconfig    versatile_defconfig
ezixp42x_defconfig       lubbock_defconfig
ezs3c2440_defconfig      lusl7200_defconfig
]$ 

정리해서 말씀드리면,

EZ-보드 기본 설정 파일
EZ-S3C2440 arch/arm/configs/ezs3c2440_defconfig
EZ-X5 arch/arm/configs/ezx5_defconfig

그러므로 make 를 실행할 때, EZ-보드에 따라 기본설정을 이용하시면 됩니다.

]# make distclean                  // 모든 환경 설정 및 컴파일 결과를 삭제
]# make ezx5_defconfig             // 미리 준비된 기본 설정 파일로 환경값을 생성

   ** 기본 값 이외에 보드 특성을 설정하려면 make menuconfig 를 실행합니다. **

]# make zImage                     // 커널 이미지 파일을 생성합니다.

   // 시간이 조금 소요됩니다. 제 PC에서는 15분 정도 걸리네요. ^^

                        :
               .... 컴파일 중 ....
                        :
  AS      arch/arm/boot/compressed/head-xscale.o
  LD      arch/arm/boot/compressed/vmlinux
  OBJCOPY arch/arm/boot/zImage
  Kernel: arch/arm/boot/zImage is ready <-- 이 문장이 나오면 성공적으로
                                            작업이 끝난 것입니다.
]#
   // make가 성공적으로 실행되면 ./arch/arm/boot 에 zImage가 생성됩니다.

]# ls -al ./arch/arm/boot/
합계 5728
drwxr-xr-x  4 1004 1001    4096  3월  2 21:00 .
drwxr-xr-x 50 1004 1001    4096  1월 25 11:14 ..
-rw-r--r--  1 root root     108  3월  2 21:00 .Image.cmd
-rw-r--r--  1 1004 1001      13  1월 24 17:28 .gitignore
-rw-r--r--  1 root root     135  3월  2 21:00 .zImage.cmd
-rwxr-xr-x  1 root root 3921112  3월  2 21:00 Image
-rw-r--r--  1 1004 1001    2549  1월 24 17:28 Makefile
drwxr-xr-x  2 1004 1001    4096  1월 25 11:14 bootp
drwxr-xr-x  2 1004 1001    4096  3월  2 21:00 compressed
-rw-r--r--  1 1004 1001    1326  1월 24 17:28 install.sh
-rwxr-xr-x  1 root root 1899652  3월  2 21:00 zImage
]# 

만들어진 zImage를 타겟 보드로 전송하기 위해 zImage.ez-x5 이름으로 /tftpboot/ 디렉토리로 복사합니다. 루트 디렉토리에 /tftpboot 디렉토리가 없다면 tftp가 설치되어 있지 않은 것입니다. tftp를 EZ보드 메뉴얼::"TFTP 환경 구축"의 내용을 참고하셔서 설치하신 후 /tftpboot/로 복사합니다.

   // 부트로더를 이용하여 커널 이미지를 보드로 전송하기 위해 /tftpboot 디렉토리로
   // 커널 이미지를 복사 또는 이동합니다.

]# mv arch/arm/boot/zImage /tftpboot/zImage.ez-x5
]# ls -al /tftpboot/
합계 1872
drwxr-xr-x  2 root root    4096  3월  6 19:13 .
drwxr-xr-x 26 root root    4096  3월  6 16:18 ..
-rwxrwxr-x  1 jwjw jwjw 1899660  3월  6 19:08 zImage.ez-x5
]# 

램디스크 이미지 만들기

커널을 보드에 전송하기 전에 램디스크 이미지도 함께 준비해서 커널 이미지와 함께 전송하겠습니다.

부트로더와 커널 뿐만 아니라 램디스크도 커널 2.6맞추어서 새로 작성해야 합니다. (주)FALINUX 자료실>>EZ-X5 페이지에서 [ToolChain & RamDisk] 링크를 이용하여 최신 버전의 램디스크 압축 파일을 내려 받으십시오. 이글을 작성할 때의 압축 파일 이름은 arm-toolchain-3.4.3-ramdisk-base-12M.tar.gz 입니다.

주의

압축파일을 바로 풀기를 하시면 디렉토리 생성없이 풀리기 때문에 기존 디렉토리와 혼동이 생길 수 있습니다. 디렉토리를 새로 생성하신 후 그 안에 압축 풀기를 하십시오.

압축을 풀어 놓으시면 이미 만들어진 램디스크 이미지 ramdisk-1.10-12M.gz이 있습니다. 이 파일을 바로 보드로 전송하셔도 좋으며, 또는 아래의 설명에 따라 파일과 디렉토리를 재 구성하신 후 이미지 파일을 제작하여 보드로 전송하십시오.

새로운 RamDisk 이미지를 만들기 위해 작업 디렉토리에 ramdisk 디렉토리를 생성한 후, 그 디렉토리에 스크립트를 포함한 램디스크 압축파일을 풀어 놓습니다.

램디스크를 만드는 순서는 아래와 같습니다.

  1. 루트에 ramdisk 디렉토리를 생성합니다.
  2. /ramdisk로 이동합니다.
  3. 램디스크 이미지를 /ramdisk에 풀기를 합니다.
  4. /ramdisk/target_ramdiskroot 디렉토리로 이동합니다.
  5. 램디스크로 구성될 디렉토리와 파일들이 들어 있습니다. 이 곳에 필요한 파일을 복사하거나 필요 없는 파일을 제거합니다.
  6. /ramdisk로 이동합니다.
  7. 스크립트 ach.sh를 실행하여 RamDisk를 생성합니다.
  8. 생성된 RamDisk를 타켓보드로 전송하여 작업을 완료합니다.
]# mkdir /ramdisk                  // 루트 디렉토리에 ramdisk를 생성합니다.
]# cd /ramdisk                     // ramdisk 로 이동합니다.
]# tar zxvf /download/arm-toolchain-3.4.3-ramdisk-base-12M.tar.gz
]# cd target_ramdiskroot

   // 디렉토리 별로 파일을 추가 또는 삭제합니다.

]# cd ..                          // /ramdisk로 이동합니다.
]# ./ach.sh                       // 램디스크를 만들어 주는 스크립트를 실행합니다.
]# ls -al
합계 4112
drwxr-xr-x 4 root root 4096 2월 29 11:46 .
drwx------ 13 jwjw jwjw 4096 2월 29 11:36 ..
-rwxr-xr-x 1 1007 1001 6577 11월 6 12:56 ach.sh
drwxr-xr-x 2 1007 1001 4096 12월 3 22:44 dir_ramdisk
-rwxrwxrwx 1 root root 4173829 2월 29 11:46 ramdisk-1.10-12M.gz --> 생성된 램디스크
drwxr-xr-x 16 1007 1001 4096 2월 29 11:46 target_ramdiskroot
]# // 생성된 램디스크를 타겟 보드로 전송합니다. ]# mv ramdisk-1.10-12M.gz /tftpboot/ // 타겟보드로 전송하기 위해 tftpboot로 이동

2.6 커널 이미지 와 램디스크 이미지 전송

WELCOME EZBOOT V2.2.48 (FALINUX Co.,Ltd) ..........PXA255(EZ-X5)
Program by You Young-chang, Oh Jae-Kyoung, Jang Hyung-Gi
Last Modify Feb 27 2008

  Detect AM29LV400_B Flash : vid=01 pid=22BA
  SIZE 4-Mbits [512-Kbytes]

  Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
  SIZE 64-Mbytes (page=512, block=16K)

Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar].....

  CS8900 Init ......
  Mac Address  : [00 FA 07 78 65 05]
  Detect value : [3000:3000]
  Chip ID      : [0E63:000A]

EZBOOT>set
^^;
   1) mac address            : 00:FA:07:78:65:05
   2) local ip               : 192.168.10.182
   3) local netmask          : 255.255.255.0
   4) local gateway          : 192.168.10.1
   5) server ip              : 192.168.10.105   --> 개발 호스트와 다르다면 변경해 줍니다.
   6) zImage      file name  : zImage.ez-x5        --> /tftpboot/zImage.ez-x5로 준비
   7) ram disk    file name  : ramdisk-1.10-12M.gz --> /tftpboot/ramdisk-1.10-12M.gz로 준비
   8) boot loader file name  : ezboot.ez-x5
   9) logo image  file name  : 
  10) auto execute full name : 
  11) autoboot wait time     : 3
  12) copy ramdisk [Y/N]     : Y
  13) arm kernel arch number : 785
  14) nand part (B,C,L,K,R,A): 0,1,0,3,5,55
  15) watchdog  (sec, off=0) : 0
  16) KCMD 1 : mem=64M
  17) KCMD 2 : initrd=0xA0800000,5M root=/dev/ram ramdisk=12288
  18) KCMD 3 : console=ttyPXA2,115200
  19) KCMD 4 : 
  20) KCMD 5 : 
  21) KCMD 6 : 

  L)  Load default
      LF) load KCMD2 root=flash
      LR) load KCMD2 root=ramdisk
  S)  Save to flash
  P)  aPply & exit
  Q)  Quit

  Select >> 5            ---> 개발 호스트 IP를 수정하기 위해 5를 누르고 엔터키를 누릅니다.
  05. server ip              : 192.168.10.105
  new value : 192.168.10.55   ---> 호스트 IP를 입력 후 엔터키를 누릅니다.
^^;
   1) mac address            : 00:FA:07:78:65:05
   2) local ip               : 192.168.10.182
   3) local netmask          : 255.255.255.0
   4) local gateway          : 192.168.10.1
   5) server ip              : 192.168.10.55   ---> IP가 옳바르게 변경되었습니다.
   6) zImage      file name  : zImage.ez-x5
   7) ram disk    file name  : ramdisk-1.10-12M.gz
   8) boot loader file name  : ezboot.ez-x5
   9) logo image  file name  : 
  10) auto execute full name : 
  11) autoboot wait time     : 3
  12) copy ramdisk [Y/N]     : Y
  13) arm kernel arch number : 785
  14) nand part (B,C,L,K,R,A): 0,1,0,3,5,55
  15) watchdog  (sec, off=0) : 0
  16) KCMD 1 : mem=64M
  17) KCMD 2 : initrd=0xA0800000,5M root=/dev/ram ramdisk=12288
  18) KCMD 3 : console=ttyPXA2,115200
  19) KCMD 4 : 
  20) KCMD 5 : 
  21) KCMD 6 : 

  L)  Load default
      LF) load KCMD2 root=flash
      LR) load KCMD2 root=ramdisk
  S)  Save to flash
  P)  aPply & exit
  Q)  Quit

  Select >> s     <--- s 로 변경된 내용을 저장합니다.

 ...write 32768  complete
 ...verify complete


  ...Saved^^;
   1) mac address            : 00:FA:07:78:65:05
   2) local ip               : 192.168.10.182
   3) local netmask          : 255.255.255.0
   4) local gateway          : 192.168.10.1
   5) server ip              : 192.168.10.55
   6) zImage      file name  : zImage.ez-x5
   7) ram disk    file name  : ramdisk-1.10-12M.gz
   8) boot loader file name  : ezboot.ez-x5
   9) logo image  file name  : 
  10) auto execute full name : 
  11) autoboot wait time     : 3
  12) copy ramdisk [Y/N]     : Y
  13) arm kernel arch number : 785
  14) nand part (B,C,L,K,R,A): 0,1,0,3,5,55
  15) watchdog  (sec, off=0) : 0
  16) KCMD 1 : mem=64M
  17) KCMD 2 : initrd=0xA0800000,5M root=/dev/ram ramdisk=12288
  18) KCMD 3 : console=ttyPXA2,115200
  19) KCMD 4 : 
  20) KCMD 5 : 
  21) KCMD 6 : 

  L)  Load default
      LF) load KCMD2 root=flash
      LR) load KCMD2 root=ramdisk
  S)  Save to flash
  P)  aPply & exit
  Q)  Quit
  
  Select >> q        <--- Q 로 set 모드에서 빠져 나갑니다.


EZBOOT>tfk           <--- tfk 명령으로 개발 호스트로부터 커널 이미지를 내려 받습니다.
 receive zImage.ez-x5
 tx ARP
Miss RX
 rx ARP
 HOST MAC : 00:0C:29:27:1D:60
 HOST  IP : 192.168.10.55
 LOCAL IP : 192.168.10.182
 option [timeout 120 tsize 1899660]
 size = 1894400
size = 1899660

 ...write 1899660  complete
 ...verify complete

EZBOOT>tfr             // 플래시 메모리 영역으로 램디스크 이미지를 전송 받습니다.
 receive ramdisk-1.10-12M.gz
 tx ARP
 rx ARP
 HOST MAC : 00:0C:29:27:1D:60
 HOST  IP : 192.168.10.55
 LOCAL IP : 192.168.10.183
 option [timeout 120 tsize 4173829]
 size = 4173898

 ...write 4173898  complete
 ...verify complete

EZBOOT>rst      <--- rst 명령으로 보드를 재부팅합니다.
System Soft Reset.......
EZBOOT>


WELCOME EZBOOT V2.2.48 (FALINUX Co.,Ltd) ..........PXA255(EZ-X5)
Program by You Young-chang, Oh Jae-Kyoung, Jang Hyung-Gi
Last Modify Feb 27 2008

  Detect AM29LV400_B Flash : vid=01 pid=22BA
  SIZE 4-Mbits [512-Kbytes]

  Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
  SIZE 64-Mbytes (page=512, block=16K)

                                                              ...
Copy Kernel Image .....
Copy Ramdisk Image .....
Starting kernel [MARCH 785]...
kernel command [EZBOOT mem=64M initrd=0xA0800000,5M root=/dev/ram ramdisk=12288
console=ttyPXA2,115200 ip0=192.168.10.182 mac=00:FA:07:78:65:05 netmask=255.255.255.0
gw=192.168.10.1 host=192.168.10.55 nandparts=1,8,55 ]
Uncompressing Linux................

                  ... 중간 생략 ...

yaffs: block 711 is marked bad
block 712 is bad
yaffs: block 2951 is marked bad
block 2952 is bad
Starting system logger: [  OK  ]
Starting INET services: [  OK  ]


Welcome to FALinux (www.falinux.com)
Linux Kernel 2.6.21-falinux
falinux login:                   <--- 이렇게 로그인 메시지가 출력되면 성공한 것입니다.