本機能は、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 件のコメント:
コメントを投稿