sori_001
2023年11月7日 17時41分
お世話になっております。﨤町です。
初回アップデート(initial_setup.swu)で、「アットマークテクノが作成したイメージをインストール可能 : no」を選択したため、
この機会にOSアップデート用のSWUの自作を試みておりますが、下記のエラーが発生します。
原因分かりますでしょうか。
Jan 1 09:30:08 armadillo kern.info kernel: [ 1808.552330] usb 1-1: new high-speed USB device number 5 using ci_hdrc Jan 1 09:30:08 armadillo kern.info kernel: [ 1808.759622] usb-storage 1-1:1.0: USB Mass Storage device detected Jan 1 09:30:08 armadillo kern.info kernel: [ 1808.766407] scsi host0: usb-storage 1-1:1.0 Jan 1 09:30:09 armadillo kern.notice kernel: [ 1809.918851] scsi 0:0:0:0: Direct-Access Imation USB Mass Storage PMAP PQ: 0 ANSI: 4 Jan 1 09:30:10 armadillo kern.notice kernel: [ 1810.883270] sd 0:0:0:0: [sda] 7581696 512-byte logical blocks: (3.88 GB/3.62 GiB) Jan 1 09:30:10 armadillo kern.notice kernel: [ 1810.884598] sd 0:0:0:0: [sda] Write Protect is off Jan 1 09:30:10 armadillo kern.debug kernel: [ 1810.884620] sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00 Jan 1 09:30:10 armadillo kern.err kernel: [ 1810.885844] sd 0:0:0:0: [sda] No Caching mode page found Jan 1 09:30:10 armadillo kern.err kernel: [ 1810.891214] sd 0:0:0:0: [sda] Assuming drive cache: write through Jan 1 09:30:10 armadillo kern.info kernel: [ 1810.929445] sda: sda1 Jan 1 09:30:10 armadillo kern.notice kernel: [ 1810.936132] sd 0:0:0:0: [sda] Attached SCSI removable disk Jan 1 09:30:11 armadillo user.notice swupdate-auto-update: Mounting sda1 on /mnt in private namespace Jan 1 09:30:11 armadillo user.notice swupdate-auto-update: Trying update /mnt/osupdate.swu Jan 1 09:30:11 armadillo user.info swupdate: START Software Update started ! Jan 1 09:30:11 armadillo user.err swupdate: FAILURE ERROR : HW compatibility not found Jan 1 09:30:11 armadillo user.err swupdate: FAILURE ERROR : Found nothing to install Jan 1 09:30:11 armadillo user.err swupdate: FAILURE ERROR : JSON File corrupted Jan 1 09:30:11 armadillo user.err swupdate: FAILURE ERROR : no parser available to parse sw-description! Jan 1 09:30:11 armadillo user.err swupdate: FAILURE ERROR : Compatible SW not found
update-baseos-6e-3.18.4-at.5.desc
# boot image can be generated with atmark imx-boot script swdesc_boot --install-if different \ --version boot 2020.4-at20 \ --description u-boot \ --board iot-a6e-es2 \ u-boot-aiotg-a6e-v2020.04-at20.imx # base OS is a tar that will be extracted on a blank filesystem, # after copying just a few key config files. # # OS updates are only installed if version is greater than previous update # so if you install your own updates atmark-techno provided Armadillo Base OS # updates might not get installed swdesc_tar --description baseos-6e-3.18.4-at.5 \ --version base_os 3.18.4-at.5 \ --preserve-attributes baseos-6e-3.18.4-at.5.tar.zst
各OS、ubootの更新ファイルは下記からローカル(ATDE上)にダウンロードして、同ディレクトリに格納しております。
https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/b…
https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/b…
コメント
at_mitsuhiro.yoshida
吉田です。
ATDE の /usr/share/mkswu/examples/OS_update.desc をベースに、
swdesc_boot の部分を u-boot-aiotg-a6e-v2020.04-at20.imx のみにするといかがでしょうか。
# boot image can be generated with atmark imx-boot script swdesc_boot u-boot-aiotg-a6e-v2020.04-at20.imx # base OS is a tar that will be extracted on a blank filesystem, # after copying just a few key config files. # # OS updates are only installed if version is greater than previous update # so if you install your own updates atmark-techno provided Armadillo Base OS # updates might not get installed swdesc_tar "baseos-6e-3.18.4-at.5.tar.zst" \ --version base_os 3.18.4-at.5 \ --preserve-attributes
製品マニュアルにも記載しておりますが、swdesc_boot だけはバージョンが自動的に設定されます。
ご確認よろしくお願いします。
at_dominique.m…
﨤町さん
お世話になっています、
マルティネです。
吉田さんはすでに解決方法を提供してくれましたが、よこから一言を追加させていただきます。
> [ERROR] : SWUPDATE failed [0] ERROR : HW compatibility not found
この行は今回のエラーです。--board でしていしているハードウェアが /etc/hwrevision の内容と一致しないとインストールできないようになっています(例えば、Armadillo IoT A6E のアップデートを Armadillo G4 にインストールできないために使用ています。あまりお客さんに使うメリットがないので製品マニュアルにも説明のないオプションです)。
おそらくarmadillo.atmark-techno.com の swu の mkswu --show を元にして、--board iot-a6e-es2 をそのままコピーしましたが、mkswu --show のシンプルな構成で実際に複数の 「swdesc_boot --board xxx」のうちに最初の行だけが残っていて、混乱を招きましたね。申し訳ございません。
吉田さんの言う通りに、「swdesc_boot u-boot...」だけにすれば問題なくインストールできるようになります。(バージョンはしていしてもいいですが、自動的に取得されるためそれも不要です)
mkswu --show を改善して、FAQ にも追加しておきます。
> ※指定オプションは -d ではなく -c でしょうか。
> https://armadillo.atmark-techno.com/faq/swupdate-troubleshooting-abos
指摘ありがとうございます! -v のつもりでよくある --debug オプションの -d と混ざって、swupdate での -d は違いますね。-v に修正しました。
よろしくお願いします。
sori_001
吉田さん、マルティネさん
お世話になっております。﨤町です。
ご回答いただき、ありがとうございます。
> ATDE の /usr/share/mkswu/examples/OS_update.desc をベースに、
> swdesc_boot の部分を u-boot-aiotg-a6e-v2020.04-at20.imx のみにするといかがでしょうか。
> 製品マニュアルにも記載しておりますが、swdesc_boot だけはバージョンが自動的に設定されます。
ご教示いただいた内容で試したところ、問題なくバージョンアップが成功しました。
ありがとうございます!
> この行は今回のエラーです。--board でしていしているハードウェアが /etc/hwrevision の内容と一致しないとインストールできないようになっています(例えば、Armadillo IoT A6E のアップデートを Armadillo G4 にインストールできないために使用ています。あまりお客さんに使うメリットがないので製品マニュアルにも説明のないオプションです)。
エラーの原因についてご教示いただきありがとうございます。
詳しく理解できました。
> おそらくarmadillo.atmark-techno.com の swu の mkswu --show を元にして、--board iot-a6e-es2 をそのままコピーしましたが、mkswu --show のシンプルな構成で実際に複数の 「swdesc_boot --board xxx」のうちに最初の行だけが残っていて、混乱を招きましたね。申し訳ございません。
はい、ご推測の通り、貴社配布のswuを --showオプションで参考にしていました。
他には製品マニュアル、OS_update.descも参考にしておりました。
以上です。ありがとうございました。
sori_001
2023年11月7日 18時28分
お世話になっております。﨤町です。
下記ページの一番最後の情報も提供いたします。(messageログとほぼ同じですが)
※指定オプションは -d ではなく -c でしょうか。
https://armadillo.atmark-techno.com/faq/swupdate-troubleshooting-abos