안녕하세요??
매일 좋은 정보를 얻어가기만해서 저도 하나 올려봅니다.
아래보면 별것 아니지만 자료가 거의 없어서..
2주동안 삽질한 내용입니다. ^^;
android system 이미지를 ubifs로 ..
uboot : u-boot-2010.03 버전 사용.
kernel : 2.6.29 smdk 제공커널
board :S3C6410을 이용한 회사 자체 제작 보드.
DDR : K4X1G163PE - FGC6 * 2
NAND : K9F4G08U0A
LAN : DM9000
// 커널 ubifs 설정 및 bootargs는 아래 링크 참조했습니다.
include/configs/smdk6400.h
// ubifs를 사용하기 위한 define
#define CONFIG_CMD_UBI
#define CONFIG_CMD_UBIFS
#define CONFIG_MTD_PARTITIONS 1
#define CONFIG_RBTREE 1
#define CONFIG_LZO 1
#define CONFIG_CMD_MTDPARTS
#define CONFIG_MTD_DEVICE 1
#define MTD_WRITEABLE_CMD 1
// 아래와 같이 default mtd영역을 상황에 맞게 설정합니다.
#define MTDIDS_DEFAULT "nand0=nand"
#define MTDPARTS_DEFAULT "mtdparts=nand:"
"1m(u-boot),"
"3m(kernel),"
"1m(ramdisk),"
"100m(system),"
"10m(cache),"
"200m(userdata),"
u-boot 부팅후
SMDK6400 # mtdparts default
SMDK6400 # mtdparts
device nand0 <nand>, # parts = 6
#: name size offset mask_flags
0: u-boot 0x00100000 0x00000000 0
1: kernel 0x00300000 0x00100000 0
2: ramdisk 0x00100000 0x00400000 0
3: system 0x06400000 0x00500000 0
4: cache 0x00a00000 0x06900000 0
5: data 0x0c800000 0x07300000 0
//위에서 설정한 값을 저장합니다.
SMDK6400 # save
// system 이미지만 다운로드 하는 방법이며 나머지는 동일합니다.
// system파티션을 지웁니다.
SMDK6400 # nand erase system
// system 이미지를 다운로드합니다.
SMDK6400 # tftp 0x51000000 system_ubifs.img
// ubifs를 만들기위하 system 파티션을 선택합니다.
SMDK6400 # ubi part system
// ubifs 볼륨을 system으로 만듭니다.
SMDK6400 # ubi create system
// tftp로 다운로드 했던 이미지를 nand에 ubifs포맷으로 write합니다.
SMDK6400 # ubi write $fileaddr system $filesize
bootargs=console=ttySAC0,115200n81 root=/dev/ram0 rw rootfstype=ramdisk init=/init ubi.mtd=3,2048 ubi.mtd=4,2048 ubi.mtd=5,2048 ==> 상황에 맞게 설정합니다.
끝.
도움되길 바랍니다.
우왕~ 완전 좋은 자료네요~^^
감사합니당~