[Armadillo:04046] Re: Armadillo-300 MTD

Takenoshita Koyo email@hidden
2009年 2月 16日 (月) 12:29:48 JST


竹之下です。

フラッシュメモリのパーティションを変更するには、hermitのブートオプションで
mtdpartsを指定することで、できます。

例えば、userland領域の後ろに64KBの領域を確保するには以下のようにします。
hermit> b console=ttyAM0 mtdparts=armadillo3x0-nor:0x2000(ipl)ro,0xe000(bootloader)ro,0x200000(kernel),0x5d0000(userland),0x10000(storage),-(config)

すると、以下のようなパーティションになります。
[email@hidden (ttyAM0) ~]# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00002000 00002000 "ipl"
mtd1: 0000e000 00002000 "bootloader"
mtd2: 00200000 00010000 "kernel"
mtd3: 005d0000 00010000 "userland"
mtd4: 00010000 00010000 "storage"
mtd5: 00010000 00002000 "config"

注意点
1. パーティションのサイズ
パーティションのサイズは、フラッシュメモリのイレースブロックと同じ境界にしてください。
Armadillo-300に使われているフラッシュメモリだと、
8KB × 8block
64KB × 126block
8KB × 8block
になっています。

2. /dev/flash/config
/dev/flash/configは、メジャ番号90、マイナ番号8として作成されるので、
/dev/mtd4 = "storage"領域と同じになります。
flatfsdは/dev/flash/configにデータを保存しますので、flatfsdを使う場合は別途修正が必要です。

3. hermit
hermitでフラッシュメモリ領域を書き換える場合は、hermitにも修正が必要です。
hermit-at/src/target/armadillo3x0/memregions.[ch]
が修正箇所になります。

-- 
Koyo Takenoshita



armadillo メーリングリストの案内