Armadilloフォーラム

過去に作成したインストーラでインストール後起動できない

s.sato

2025年5月28日 14時34分

==========
製品型番:A6400-U00Z
Debian/ABOSバージョン: /etc/debian_version 9.13
カーネルバージョン:Linux armadillo 4.14-at17 #9 Fri Feb 10 11:26:29 JST 2023 armv7l GNU/Linux
3G/LTE モジュール情報 (Debianのみ):なし
その他:
==========

過去に
https://manual.atmark-techno.com/armadillo-640/armadillo-640_product_ma…
を参照しインストーラを作成しました。

はっきりわかるもので2023年位までに購入したArmadillo-640ボードは、このインストールディスクでインストール後問題なく起動可能ですが、2025年に購入したボードではインストール後、正常な起動ができません。

インストールディスク内のUbootとKernelのバージョンは以下の通りです。

U-Boot : U-Boot 2018.03-at8 (Apr 10 2020 - 11:27:42 +0900)
Kernel : Linux version 4.14-at17 (atmark@atde7) (gcc version 6.3.0 20170516 (Debian 6.3.0-18)) #9 Fri Feb 10 11:26:29 JST 2023

■現象

上記インストールディスクで先日購入したArmadillo-640ボードにインストールを行うと、インストール完了後の起動時に以下のようなメッセージが繰り返し表示されます。

```
U-Boot 2020.04-at25 (Feb 25 2025 - 01:54:53 +0000)

CPU: i.MX6ULL rev1.1 at 396 MHz
Model: Atmark Techno Armadillo-600 Series
DRAM: 512 MiB
setup_rtc_disarm_alarm: Can't find bus
WDT: Started with servicing (10s timeout)
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
In: mxc_serial
Out: mxc_serial
Err: mxc_serial
switch to partitions #0, OK
mmc0(part 0) is current device
flash target is MMC:0
Net: eth0: ethernet@2188000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0(part 0) is current device
rollback() Rollback target is not ready, refusing to rollback.
could not get rtc device: invalid date will be used in logs
Saving Environment to MMC... Writing to redundant MMC(0)... OK
resetting ...
```

表示されるU-bootのバージョンがすでに異なるので、インストールがうまくできていないのは確認できます。
2023年位までに購入したArmadillo-640ボードでは問題なく起動できていたのですが、原因が分からず質問させていただきました。

もしかしたら2023までもたまたま購入時のu-bootとインストーラのu-bootのバージョンがあっていただけで、実は昔からu-bootのインストールがうまく行っていなかった可能性もあるのかと考えています。
最近デフォルトでインストールされるu-bootのバージョンが変わったりしたでしょうか?

インストール中のログを添付いたしました。

お手数をお掛けしますが、
よろしくお願いいたします。

ファイル ファイルの説明
install.log
コメント

at_dominique.m…

2025年5月28日 16時28分

お世話になっています、
マルティネです。

> 最近デフォルトでインストールされるu-bootのバージョンが変わったりしたでしょうか?

製造の変更でお手数をおかけしました。

今購入していただく Armadillo 640 には Armadillo Base OS (ABOS) がインストールされていますが、ABOS と Debian ではブートローダーを別のところに保存しているため古い Debian のインストーラーを使う場合に改造が必要です。
(今のインストーラーを実行しても、ABOS のインストーラーが削除されないままに優先されます)

その修正はちょうど 2023年(6月)の make-install-disk-image v1.3.0 で公開しましたが、タイミングが悪かったですね…

新しい make-install-disk-image でイメージを再生性していただいてもいいですが、修正は簡単ですので手元の SD カードをマウントして images/install.sh ファイルの setup_bootloader() 関数に以下の行を追加してください:

        mmc bootpart enable 0 0 ${DEV_EMMC}

改造したインストーラーで再びインストールしていただいた後は ABOS の u-boot ではなく Debian の u-boot で起動しますので、正常に起動するようになります。

お手数ですがよろしくお願いします

マルティネ様

お世話になっております。
佐藤です。

早速のご対応大変ありがとうございます。
いただいた情報の通り操作することで問題なく動作するようになりました。

大変ありがとうございました。
以下setup_bootloader()の修正部分です。

```
setup_bootloader() {
if [ ! -z "${BOOTLOADER_IMAGE_MD5}" ]; then
echo "${BOOTLOADER_IMAGE_MD5} ${BOOTLOADER_IMAGE}" | md5sum -c
[ $? -eq 0 ] || return 1
fi

if [ -f "${BOOTLOADER_IMAGE}" ]; then
# echo 0 > ${BOOTLOADER_EMMC_FORCERO_PATH}
dd if=${BOOTLOADER_IMAGE} of=${DEV_EMMC} bs=1k seek=1
sync
# echo 1 > ${BOOTLOADER_EMMC_FORCERO_PATH}
else
echo "file not found ${BOOTLOADER_IMAGE}"
return 1
fi

dd if=/dev/zero bs=1k count=${BOOTLOADER_PARM_SIZE_K} | \
tr "\000" "\377" | dd of=${BOOTLOADER_EMMC_PATH} bs=1k seek=${BOOTLOADER_PARM_OFFSET_K}
sync
mmc bootpart enable 0 0 ${DEV_EMMC} # ここに追加
}
```