[Armadillo:01444] Re: 220でConfig領域を2重化する方法について
Makoto Nakamura
email@hidden
2006年 12月 20日 (水) 18:46:37 JST
いつもお世話になっています。TNN@中村です。
先日教えていただいた情報にて試してみましたが
起動時にエラーが出てしまい、Config領域が作成されなくなりました。
64kのConfig領域を2つに分ける設定を行ってみました。
ミスしている点がありましたら教えてください。
以下、kernel起動ログ(★がエラー)
----------------------
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
5 cmdlinepart partitions found on MTD device armadillo2x0-nor
parse_mtd_partitions:5
Creating 5 MTD partitions on "armadillo2x0-nor":
0x00000000-0x00010000 : "bootloader"
0x00010000-0x00180000 : "kernel"
0x00180000-0x007f0000 : "userland"
★0x007f0000-0x007f5000 : "config"
★mtd: partition "config" doesn't end on an erase block -- force read-only
★0x007f5000-0x00800000 : "config2"
★mtd: partition "config2" doesn't start on an erase block boundary -- force read-only
No NAND device found!!!
ep93xxusb ep93xxusb.0: EP93xx OHCI
ep93xxusb ep93xxusb.0: new USB bus registered, assigned bus number 1
ep93xxusb ep93xxusb.0: irq 56, io base 0xff020000
hub 1-0:1.0: USB hub found
----------------------
対応ですが、
http://armadillo.atmark-techno.com/armadillo-9/howto/change_of_partition
を参考に、ヘッダファイル設定(memregions.h)を以下(★)のように修正しています。
#define FLASH_CONFIG_START (FLASH_USERLAND_START + FLASH_USERLAND_SIZE)
#define FLASH_CONFIG_START8MB (FLASH_USERLAND_START + FLASH_USERLAND_SIZE8MB)
★//#define FLASH_CONFIG_SIZE 0x10000
★#define FLASH_CONFIG_SIZE 0x5000
★// Add
★#define FLASH_CONFIG2_START (FLASH_CONFIG_START + FLASH_CONFIG_SIZE)
★#define FLASH_CONFIG2_SIZE 0x5000
:<略>
#define FLASH_BOOTLOADER_NAME "bootloader"
#define FLASH_KERNEL_NAME "kernel"
#define FLASH_USERLAND_NAME "userland"
#define FLASH_CONFIG_NAME "config"
★// Add
★#define FLASH_CONFIG2_NAME "config2"
#define FLASH_BOOTLOADER_BLOCK "8x8K/l"
#define FLASH_KERNEL_BLOCK "23x64K"
#define FLASH_USERLAND_BLOCK4MB "39x64K"
#define FLASH_USERLAND_BLOCK8MB "103x64K"
#define FLASH_USERLAND_BLOCK (board_info.flash == FLASH_8MiB ? \
FLASH_USERLAND_BLOCK8MB : \
FLASH_USERLAND_BLOCK4MB)
★#define FLASH_CONFIG_BLOCK "4x8K" // "8x8K"
★#define FLASH_CONFIG2_BLOCK "4x8K"
★//#define MTDPARTS2X0 "mtdparts=armadillo2x0-nor:0x10000(bootloader)ro,0x170000(kernel),0x670000(userland),-(config)"
★#define MTDPARTS2X0 "mtdparts=armadillo2x0-nor:0x10000(bootloader)ro,0x170000(kernel),0x670000(userland),0x5000(config),-(config2)"
:<略>
#define SECTOR_IDX_BOOTLOADER 0
#define SECTOR_IDX_KERNEL 8
#define SECTOR_IDX_USERLAND 31
#define SECTOR_IDX_CONFIG 70
★// Add
★#define SECTOR_IDX_CONFIG2 74
armadillo メーリングリストの案内