기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

테스트중인 시스템에 c110의 onrNAND외에 moviNAND가 추가되어 있습니다.

 

빌드한 바이너리 이미지를 다운로드 할 때 fastboot를 사용하고 있는데

현재 uboot로 부팅한 상태에서 fastboot 모드로 진입시키면

c110의 oneNAND의 파티션이 아래처럼 인식되고 있습니다.

 

[Partition table on OneNAND]
ptn 0 name='bootloader' start=0x... len=0x...(~...KB)
ptn 1 name='recovery' start=0x... len=0x...(~...KB)
ptn 2 name='kernel' start=0x... len=0x...(~...KB)
ptn 3 name='ramdisk' start=0x... len=0x...(~...KB)
ptn 4 name='system' start=0x... len=0x...(~...KB) (Yaffs)
ptn 5 name='cache' start=0x... len=0x...(~...KB) (Yaffs)
ptn 6 name='userdata' start=0x... len=0x... (Yaffs)


 

현재 시도하고자 하는 것은 안드로이드 사용자 어플이 설치되는 용량을 크게 확보하기 위해서

/data 경로인 userdata 영역을 oneNAND가 아닌 moviNAND로 설정해 보려고 시도중입니다.

 

안드로이드 부팅할 때 init.rc에서 /data를 마운트 하는 부분이 아래와 같이 되어있는데

mount yaffs2 mtd@userdata /data nosuid nodev

이 부분을 아래처럼 moviNAND의 Ext2 파티션으로 설정해 주니

저장공간 -> 내부 저장소 -> 사용 가능한 저장공간이 moviNAND로 연결되고

moviNAND로 어플들이 설치되는걸 확인할 수 있었습니다.

mount ext2 /dev/block/mmcblk0p1 /data nosuid nodev

 

그런데 문제는 fastboot로 바이너리를 다운로드 할 때 userdata를 moviNAND에 write 해야하는데

아직 fastboot 소스를 고치지 않았기 때문에 userdata가 예전의 yaffs2인 oneNAND로 write 되고

moviNAND에는 write 되지 못하여 새 바이너리를 다운로드 해도 안드로이드 userdata가 초기화되지 못하고 있습니다.

 

보통 userdata를 다운로드 하면 안드로이드 환경이 초기화 되는데

이게 안되니 예전에 사용하던 moviNAND의 userdata가 계속 살아있고,

새 바이너리에 맞는 userdata도 적용이 안되는 상황입니다.

 

 

이 문제를 해결하기 위해 uboot에서 fastboot로 userdata를 다운로드 하는걸

moviNAND의 mmcblk0p1 파티션에 write 되도록 수정할 수 있는건가요?

어디까지 손대야 하는지 혼자서는 도통 갈피가 안잡혀서 헤메다가 질문을 드립니다.

 

위에 언급한 /dev/block/mmcblk0p1 경로도 커널에서 인식하는 mmc의 partition인데

이게 uboot상에서도 인식되고, fastboot 다운로드 할때 연결할 수 있는지 조언 부탁드립니다.


고도리

2011.05.19 09:38:22
*.200.239.234

언제 소스를 사용하시는지 모르겠네요....


일단 간단하게 말씀 드리면........됩니다. 저희가 현재 이런환경에서 쓰고 있습니다(v210)

List of Articles
번호 제목 글쓴이 날짜 조회 수
2 uboot에서 yaffs랑 MoviNAND에 동시에 write 하려면? [2] 텡구 2011-07-06 1011
» uboot에서 fastboot로 userdata 다운로드 할 때 movinand로 가능? [1] 텡구 2011-05-19 1179

사용자 로그인