이솝 임베디드 포럼 WiKi 페이지는 이솝 임베디드 포럼 공동제작 보드를 사용하시는 회원님들이 자유롭게 업데이트 하실 수 있습니다.

editUBIFS를 이용한 Android RFS Flash 기록 방법

UBIFS를 이용한 Android RFS를 Flash에 기록하는 방법은 다음과 같습니다.


UBIFS를 이용한 Android RFS를 기록하기 위해서는 기록하고자 하는 TAR로 묶인(GZ로 압축되지 않아야 합니다.)

Android RFS 파일과, 이솝 GPE X-Windows Filesystem이 필요 합니다.


1. Linux에서 UBIFS를 위한 커널 환경 설정


UBIFS를 사용하기 위해서는 커널에서 다음과 같은 항목이 활성화 되어 있어야 합니다.


- Device Drivers -> Memory Technology Device (MTD) Support -> UBI - Unsorted block images - Enable UBI 활성화


1-1.png


- File Systems -> Miscellaneous filesystems -> UBIFS file system support 활성화


1-2.png


- 이제 make zImage로 리눅스 커널을 다시 컴파일 하신 후, 컴파일 된 리눅스 커널 이미지로 부팅합니다.

   이솝 GPE X-Windows Filesystem을 NFS로 마운트 하여 부팅할 수 있도록 U-Boot에서 환경 설정을 해주셔야 합니다.

   (위키 페이지의 U-Boot 부분을 참고하시면 GPE X-Windows Filesystem으로 부팅하는 방법이 나와 있습니다.)


  부팅이 잘 되시면 다음과 같이 GPE X-Windows Filesystem의 로그인 화면이 나오며, "root"를 입력하시면 프롬포트로 진입 합니다.


1-3.png


- GPE X-Windows에서 UBIFS로 Google Android RFS 이미지 기록 방법


UBIFS를 방식으로 NAND Flash에 안드로이드 이미지를 기록하기 위해서는 다음과 같은 형식으로 순서대로 입력해 주시면 됩니다.

이전에 TAR 형식으로 압축된 기록하시길 원하시는 안드로이드 이미지가 미리 있으셔야 합니다.

여기에서는 Android.tar 형식으로 미리 만들어 놓았습니다.


$> flash_eraseall /dev/mtd2
$> ubiattach /dev/ubi_ctrl -m 2 -O 2048
$> ubimkvol /dev/ubi0 -N rootfs -s 100MiB
$> mount -t ubifs ubi0_0 /mnt
$> tar -C /mnt -xf /aa.tar
$> umount /mnt
$> reboot


- UBIFS로 부팅하기 위한 U-Boot의 부트 아규먼트 설정


커널에서 부팅시에 UBIFS로 마운트하기 위해 U-Boot에서 다음과 같이 환경설정을 해주셔야 합니다.


$> setenv bootargs init=/init root=ubi0:rootfs rootfstype=ubifs console=ttySAC1,115200n81 ubi.mtd=2,2048


이제, NAND Flash에 기록된 Android로 단독 부팅이 가능할 것 입니다.


사용자 로그인