Armadilloフォーラム

SDブート時の動作について

docomo_iot_33

2016年12月22日 10時15分

お世話になります。

「armadillo-iotg-g3_product_manual_ja-1.5.0.pdf」のP151以降を参考に、
SDブートディスクの作成を行っております。

質問としては、SDブートディスクをCON4スロットに挿入し、
JP1をショートさせてACアダプタを挿入してもシリアルコンソールおよび、
LEDランプの点灯などが一切なく、SDブート出来ていない?ように思います。

SDHC 4GBのカードはATDE6上で確認すると以下のような構成で作成されたものを使っています。

【SD構成】
サイズ:4GB
ボリューム:
①:128MB(W95 FAT32)→/dev/sdb1
②:3.9GB(Ext4)のrootfs→/dev/sdb2

ファイル構成は以下です。(G3のHP上から取得した最新のものです。)
/dev/sdb1→armadillo_iotg_g3.dtb、uImage
/dev/sdb2→Linuxのファイル(bin、boot、、、、etc)

SDブートが成功した際は、シリアルコンソールに何か表示されたりするのでしょうか?
※u-boot-x1-sd[version] .binのファイルが見当たらないので、そのあたりなのでしょうか?
→sudo dd if=u-boot-x1-sd[version] .bin of=/dev/sdb bs=1k seek=1と syncは実行していますが・・・

よろしくお願いいたします。

コメント

at_ohsawa

2016年12月22日 10時39分

> SDブートが成功した際は、シリアルコンソールに何か表示されたりするのでしょうか?

通常のブートと変りなく、U-Bootのバージョン表記とボード情報が表示され
(USBシリアル変換アダプタのスイッチがUSBコネクタ側に設定されていれば)
続けてLinuxカーネルのブートメッセージが表示され、ログインプロンプトに至ります。

起動ログ参考: 製品マニュアル 第5章 起動と終了
http://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_prod…

> ※u-boot-x1-sd[version] .binのファイルが見当たらないので、そのあたりなのでしょうか?

こちらのファイルをご利用になっているでしょうか?
http://armadillo.atmark-techno.com/files/downloads/armadillo-iot-g3/ima…

上記ファイルは現在の最新版のSDブート向けブートローダーイメージです。

尚、最新版へのリンクは常に下記ページに提示しております。

Armadillo-IoT G3 ドキュメント・ダウンロード 内 ブートローダー(SDカード用)
http://armadillo.atmark-techno.com/armadillo-iot-g3/downloads

> →sudo dd if=u-boot-x1-sd[version] .bin of=/dev/sdb bs=1k seek=1と syncは実行していますが

今一度、上記のURLに有るファイルを使ってddを実行されているかご確認ください。

解決しない場合は、ATDEで実行したコマンド(ddを含め、SDカードのデバイスファイルの
確認とbinファイルの取得等)とコマンドの実行結果を抜粋せず、そのままフォーラムに
書き込んでいただけると、適切な回答ができると思います。

docomo_iot_33

2016年12月22日 13時34分

ご教示ありがとうございます。
情報が不足しており、失礼いたしました。
再度実行しましたが、現象変わらないので以下にコマンドを記載いたします。

【使用したファイル】
armadillo_iotg_g3-v8.00.dtb
debian-jessie-armhf_aiotg3_20161207.tar.gz
u-boot-x1-sd-at6.bin
uImage-x1-v8.00

【実行コマンド】
※時系列に記載します。■部分が入力したコマンドです。
■mount
■umount /dev/sdb
■sudo fdisk /dev/sdb
■sudo fdisk -l /dev/sdb
Disk /dev/sdb: 3.8 GiB, 4011851776 bytes, 7835648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb254f417

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 264191 262144 128M b W95 FAT32
/dev/sdb2 264192 7835647 7571456 3.6G 83 Linux

■sudo mkfs.vfat -F 32 /dev/sdb1
■sudo mkfs.ext4 -L rootfs /dev/sdb2
mke2fs 1.42.12 (29-Aug-2014)
/dev/sdb2 contains a ext4 file system labelled 'rootfs'
last mounted on /home/atmark/win_files/sd on Thu Dec 22 12:00:27 2016
Proceed anyway? (y,n) y
Creating filesystem with 946432 4k blocks and 236640 inodes
Filesystem UUID: 89edd634-88c3-49ce-b4bf-5da9509c311a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

■sudo dd if=u-boot-x1-sd-at6.bin of=/dev/sdb bs=1k seek=1
403+0 レコード入力
403+0 レコード出力
412672 バイト (413 kB) コピーされました、 0.256838 秒、 1.6 MB/秒

■sync
■mkdir sd
■sudo mount -t ext4 /dev/sdb2 sd
■sudo tar zxf debian-jessie-armhf_aiotg3_20161207.tar.gz -C sd
■sudo umount sd
■rmdir sd

■sudo umount sd
■rmdir sd
■mkdir sd
■sudo mount -t vfat /dev/sdb1 sd
■sudo cp uImage-x1-v8.00 sd/uImage
■sudo cp armadillo_iotg_g3-v8.00.dtb sd/armadillo_iotg_g3.dtb
■sudo umount sd
■rmdir sd

※以上です。
以降は、SDカードをG3へ挿入、JP1をショート後にACアダプタを挿入しております。
TeraTerm上は何も反応がありません。

よろしくお願いいたします。

docomo_iot_33

2016年12月22日 14時23分

すみません。投稿を見直したらコピーで連続してしまっている箇所がありますね。。。
以下に改めて記載させてください。

【使用したファイル】
armadillo_iotg_g3-v8.00.dtb
debian-jessie-armhf_aiotg3_20161207.tar.gz
u-boot-x1-sd-at6.bin
uImage-x1-v8.00

【実行コマンド】
※時系列に記載します。■部分が入力したコマンドです。
■mount
■umount /dev/sdb
■sudo fdisk -l /dev/sdb
Disk /dev/sdb: 3.8 GiB, 4011851776 bytes, 7835648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb254f417
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 264191 262144 128M b W95 FAT32
/dev/sdb2 264192 7835647 7571456 3.6G 83 Linux

■sudo mkfs.vfat -F 32 /dev/sdb1
■sudo mkfs.ext4 -L rootfs /dev/sdb2
mke2fs 1.42.12 (29-Aug-2014)
/dev/sdb2 contains a ext4 file system labelled 'rootfs'
 last mounted on /home/atmark/win_files/sd on Thu Dec 22 12:00:27 2016
Proceed anyway? (y,n) y
Creating filesystem with 946432 4k blocks and 236640 inodes
Filesystem UUID: 89edd634-88c3-49ce-b4bf-5da9509c311a
Superblock backups stored on blocks:
 32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

■sudo dd if=u-boot-x1-sd-at6.bin of=/dev/sdb bs=1k seek=1
403+0 レコード入力
403+0 レコード出力
412672 バイト (413 kB) コピーされました、 0.256838 秒、 1.6 MB/秒

■sync
■mkdir sd
■sudo mount -t ext4 /dev/sdb2 sd
■sudo tar zxf debian-jessie-armhf_aiotg3_20161207.tar.gz -C sd
■sudo umount sd
■rmdir sd

■mkdir sd
■sudo mount -t vfat /dev/sdb1 sd
■sudo cp uImage-x1-v8.00 sd/uImage
■sudo cp armadillo_iotg_g3-v8.00.dtb sd/armadillo_iotg_g3.dtb
■sudo umount sd
■rmdir sd

シリアルはPCへ繋がっており、JP1をオープンにすれば通常起動ログが表示されておりログインも可能です。
LEDが点灯しないので電源が入っているかは分かっていません。。

よろしくお願いいたします。

at_ohsawa

2016年12月22日 19時26分

詳細なログのご提供ありがとうございます。
作成手順とddで書き込んでいるバイト数から手順に問題は無いように思えます。

尚、LEDの点灯処理はブートローダーで実施しているので、U-Bootの起動メッセージが
表示されない(= SDブートできない)事と矛盾はしないのですが、
手順に誤りが無いため、SDカードの問題かHWの問題かを切り分けたいです。

一旦、SDカードインターフェース自体が正常に動作するか、JP1をオープンにして
eMMCブートしてからSDカードをmountして読む事で確認して頂けるでしょうか。

docomo_iot_33

2016年12月26日 10時10分

返信ありがとうございます。

確認方法があっているか分からないのですが、通常にブートしてSDカードを挿入すると、
/dev以下にmmcblk0、mmcblk0p1,mmcblk0p2が作成されました。

抜き差しすると以下のようなログが出ています。

■挿入時
mmc0: new high speed SDHC card at address 0001
mmcblk0: mmc0:0001 00000 3.73 GiB
mmcblk0: p1 p2

■抜去時
mmc0: card 0001 removed

■dmesgでのsdhcが関係しそうな部分も抜粋します。
[ 1.910998] usbcore: registered new interface driver bcm203x
[ 1.915462] usbcore: registered new interface driver btusb
[ 1.919731] usbcore: registered new interface driver ath3k
[ 1.924157] sdhci: Secure Digital Host Controller Interface driver
[ 1.929059] sdhci: Copyright(c) Pierre Ossman
[ 1.932119] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.939204] mmc0: no vqmmc regulator found
[ 1.984507] mmc0: SDHCI controller on 30b40000.usdhc [30b40000.usdhc] using ADMA
[ 1.991583] sdhci-esdhc-imx 30b60000.usdhc: could not get ultra high speed state, work on normal mode
[ 1.999733] mmc2: no vqmmc regulator found
[ 2.002541] mmc2: no vmmc regulator found
[ 2.044506] mmc2: SDHCI controller on 30b60000.usdhc [30b60000.usdhc] using ADMA
[ 2.047707] mmc0: new high speed SDHC card at address 0001
[ 2.048320] mmcblk0: mmc0:0001 00000 3.73 GiB
[ 2.058080] usb 2-1: new high-speed USB device number 2 using ci_hdrc
[ 2.064441] mmcblk0: p1 p2
[ 2.068453] caam 30900000.caam: Instantiated RNG4 SH0
[ 2.127861] caam 30900000.caam: Instantiated RNG4 SH1
[ 2.131626] caam 30900000.caam: device ID = 0x0a160300 (Era 8)
[ 2.136553] caam 30900000.caam: job rings = 3, qi = 0

上記のような確認でご指摘いただいた確認になっているか自信がありませんが、、
恐縮ですが、ご確認頂けますでしょうか。

よろしくお願いいたします。

docomo_iot_33

2017年1月4日 10時38分

お世話になっております。

年明け早々で恐縮ですが、再度手順を確認して実施しておりますが
事象が変わらずで、恥ずかしながら対処・確認が取れておりません。

上記手順で確認出来ているかも含めまして、ご教示いただけますでしょうか?

よろしくお願いいたします。