本機能は、OpenBlocksの機能の一部として実装されているものですが、当社の提供する標準のパッケージ構成ではないため、動作の保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
<検証環境>
Debian 7.1 Wheezy
OpenBlocks AX3/4 kernel: 3.2.40
OpenBlocks A7 Ketnel 3.2.40
OpenBlocks A6 kernel: 3.2.40
OpenBlocks AX3/4 kernel: 3.2.40
OpenBlocks A7 Ketnel 3.2.40
OpenBlocks A6 kernel: 3.2.40
<使用機器>
OpenBlocks AX3 DPパッケージ (もしくは、SSD搭載モデル)
OpenBlocks A7 DPパッケージ (もしくは、SSD搭載モデル)
OpenBlocks A6 DPパッケージ (もしくは、SSD搭載モデル)
OpenBlocks A7 DPパッケージ (もしくは、SSD搭載モデル)
OpenBlocks A6 DPパッケージ (もしくは、SSD搭載モデル)
1. SSDの準備
SSDを用意します。もし、標準構成でDEBIANのラベルを設定済みでしたら、ラベルを削除し、本体を再起動してください。
# e2label /dev/sda1 ""
再起動後、ラベルを/に変更します。
を再起動してください。
# e2label /dev/sda1 /
ファイルシステムは、現在のAシリーズはすべてext4を採用していますが、ubootがカーネルの起動を行うドライブは、ext3までしか対応していません。
再フォーマットが必要な場合は、以下の通り、ext3などを使用してください。
# mke2fs -j -L "/" /dev/sda1
2. debootstrapによるrootfsの作成と修正
rootfs は、以下の記事と同様に、debootstrapで作成しました。詳細については、以下の記事を参考にしてください。
3. SSDブート用のファームウェアの作成
SSDブート用ファームウェアは、LinuxであればPCでもAシリーズでも作成することができます。
- FTPサイトよりSSDブート用のラムディスクイメージを取ってきます。
A6/A7 : ftp://ftp.plathome.co.jp/pub/ssdlinux/1.0.0-LATEST/arm-obsa6/installation/ramdisk.image-extboot.obsa6.gz
AX3 : ftp://ftp.plathome.co.jp/pub/ssdlinux/1.1.0-LATEST/arm-obsax3/installation/ramdisk.image-extboot.obsax3.gz
- FTPサイトよりカーネルを取ってきます。
A6 : ftp://ftp.plathome.co.jp/pub/OBSA6/wheezy/3.2.40-3/zImage
A7 : ftp://ftp.plathome.co.jp/pub/OBSA7/wheezy/3.2.40-4/zImage
AX3 : ftp://ftp.plathome.co.jp/pub/OBSAX3/wheezy/3.2.40-4/zImage - uboot-mkimageパッケージをインストールします。
# apt-get install uboot-mkimage
- mkimageコマンドでSSDブート用ファームウェアを作成します。
AX3の場合(A6/A7ではラムディスク名とファームウェア名を変更します)
# mkimage -n "コメント(日付やバージョンなど)" -A arm -O linux -T multi -C none -a 0x8000 -e 0x8000 -d zImage:ramdisk.image-extboot.obsax3.gz uImage.initrd-extboot.obsax3
- rootfsの/bootにSSDブート用ファームウェアをコピーします。
AX3でSSDがsda1の場合
# mount /dev/sda1 /mnt
# cp uImage.initrd-extboot.obsax3 /mnt/boot
# umount /mnt
- rootfsとするパーティションのラベルを"/"にします。
rootfsが/dev/sda1の場合
# e2label /dev/sda1 /
ユーザーズマニュアルを参考に、本体のDIP SW3をONにして立ち上げます。(SATA起動)
SATA起動に切り替えた場合のconsoleメッセージは以下の通りです。
U-Boot 1.1.4 (Feb 5 2014 - 12:38:30) Plat'Home version: 1.2.13 A7 (Base: Marvell version: 3.5.9) U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CF480 Soc: 88F6282 A1CPU running @ 600Mhz L2 running @ 300Mhz SysClock = 300Mhz , TClock = 200Mhz DRAM (DDR3) CAS Latency = 6 tRP = 5 tRAS = 15 tRCD=5 DRAM CS[0] base 0x00000000 size 256MB DRAM CS[1] base 0x10000000 size 256MB DRAM CS[2] base 0x20000000 size 256MB DRAM CS[3] base 0x30000000 size 256MB DRAM Total size 1GB 16bit width Addresses 8M - 0M are saved for the U-Boot usage. Mem malloc Initialization (8M - 7M): Done NAND:256 MB POST: mac verify Eth0 PASSED Eth1 PASSED CPU : Marvell Feroceon (Rev 1) Streaming disabled Write allocate disabled Module 0 is RGMII USB 0: host mode USB 1: host mode USB 2: host mode USB 3: host mode Net: egiga0, egiga1 Hit any key to stop autoboot: 0 Run Boot Selection Script *** SW 1 IS OFF *** *** SW 2 IS OFF *** *** SW 3 IS ON, Boot from SATA *** Reset IDE: Marvell Serial ATA Adapter Integrated Sata device found [0 0 0]: Enable DMA mode (6) Device 0 @ 0 0: Model: ADATA SSD S396 30GB Firm: 3.3.2 Ser#: 02501132500100000227 Type: Hard Disk Supports 48-bit addressing Capacity: 30533.8 MB = 29.8 GB (62533296 x 512) Loading ... 2926770 bytes read Bootargs: ramdisk_size=8192 root=LABEL=/ vmalloc=200M rootdelay=7 mtdparts=nand_mtd:0x1c0000@0x0(uboot) ro,0x2c0000@0x1c0000(env),0x160000@0x480000(test)ro,0x540000@0x5e0000(conf),0x3d40000@0xb20000(linux),0x9660000@0x4860000 (user),0x2140000@0xdec0000(opt) console=ttyS0,115200 ## Booting image at 02000000 ... Image Name: OBS-A7-3.2.40-4 Created: 2014-04-18 2:37:42 UTC Image Type: ARM Linux Multi-File Image (uncompressed) Data Size: 2926706 Bytes = 2.8 MB Load Address: 00008000 Entry Point: 00008000 Contents: Image 0: 2542808 Bytes = 2.4 MB Image 1: 383886 Bytes = 374.9 kB Verifying Checksum ... OK OK Starting kernel ... Uncompressing Linux... done, booting the kernel. Initializing cgroup subsys cpuset Initializing cgroup subsys cpu Linux version 3.2.40 (root@release-firmware) (gcc version 4.7.2 (Debian 4.7.2-4) ) #1 Fri Mar 7 16:24:48 JST 2014 CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977 CPU: VIVT data cache, VIVT instruction cache Machine: Plat'Home OpenBlocks A7 Memory policy: ECC disabled, Data cache writeback BUG: mapping for 0xf4000000 at 0xf4000000 overlaps vmalloc space Built 1 zonelists in Zone order, mobility grouping on. Total pages: 260096 Kernel command line: ramdisk_size=8192 root=LABEL=/ vmalloc=200M rootdelay=7 mtdparts=nand_mtd:0x1c0000@0x0(uboot) ro,0x2c0000@0x1c0000(env),0x160000@0x480000(test)ro,0x540000@0x5e0000(conf),0x3d40000@0xb20000(linux),0x9660000@0x4860000 (user),0x2140000@0xdec0000(opt) console=ttyS0,115200 PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Memory: 1024MB = 1024MB total Memory: 1033400k/1033400k available, 15176k reserved, 229376K highmem
電源を入れ直すか、bootと入力して起動してください。
4. 補足
SATA起動は、ext3以前のファイルシステムをサポートしており、現状では、ext4でフォーマットされたドライブからの起動が出来ません。
rootfsをext4で使用したい場合は、起動用のパーティションとして、/dev/sda1を、rootfs用のパーティションとして/dev/sda2を別に作成して使用してください。
0 件のコメント:
コメントを投稿