Armadilloフォーラム

コンソールのUART変更の方法について

maeda7690

2024年6月20日 14時49分

前田と申します。

Armadillo-640(ABOS)のコンソール変更についての質問です。

UART3コンソールのインストールディスクで環境を作成し開発を進めていましたが、
コンソールをUART1に変更したいと考えています。

そこで、BaseOS対応のブートローダだけダウンロードしてきてをSWUを作成しインストールしたのですが、
変更できませんでした。

ABOSWebからSWUインストールを行った時のログが添付のファイルなのですが、
もしかしてインストールが失敗しているのでしょうか?
失敗している場合、何が原因と考えられるでしょうか。

また、コンソールを変更するにはブートローダだけの変更ではダメでしょうか?

以上、よろしくお願いします。

ファイル ファイルの説明
boot_swuインストール時のログ.txt boot.swuインストール時のログです
コメント

at_dominique.m…

2024年6月20日 15時37分

前田さん

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

> そこで、BaseOS対応のブートローダだけダウンロードしてきてをSWUを作成しインストールしたのですが、
> 変更できませんでした。

ドキュメンテーションが足りなくて申し訳ございません。
debian版では確かにブートローダで別けていましたが、Armadillo Base OS ではブートローダは共通で u-boot の環境変数で管理しています。

uart3 のインストールディスクでインストールした場合はおそらく /boot/uboot_env.d/10_console のファイルが存在しますが、そのファイルを swupdate で削除すればデフォルトの uart1 に戻ります(問題ないと思いますが最後まで確認してないので問題あったら教えてください):

atmark@atde9:~/mkswu$ cat default_console.desc 
swdesc_option version=1
swdesc_command --extra-os "rm -f /boot/uboot_env.d/10_console"

(手動の場合は https://manual.atmark-techno.com/armadillo-640/armadillo-640_product_ma… の逆の手順になります:console=ttymxc2 に記載されているファイルを persist_file -d で削除して、fw_setenv -s /boot/uboot_env.d/00_defaults でデフォルト値に戻せます)

よろしくお願いします。

マルティネさん

早速の回答ありがとうございます。

環境変数になっているのですね。
教えていただいた手順で変更する事ができました。
ありがとうございます。

ちなみに、u-bootのプロンプトで、console=ttymxc0,115200に書き換えて、saveenvをしても書き換わりますか?

at_dominique.m…

2024年6月20日 16時52分

マルティネです。

設定できてよかったです。手順をマニュアルにも追加します。

> ちなみに、u-bootのプロンプトで、console=ttymxc0,115200に書き換えて、saveenvをしても書き換わりますか?

一時的に設定が書き換えられますが、次に swupdate で何かをインストールする際に /boot/uboot_env.d に書いてある状態に戻りますので、u-boot で setenv/saveenv で設定しても必ず /boot/uboot_env.d も更新する必要があります。

マルティネさん

> 一時的に設定が書き換えられますが、次に swupdate で何かをインストールする際に /boot/uboot_env.d に書いてある状態に戻りますので、u-boot で setenv/saveenv で設定しても必ず /boot/uboot_env.d も更新する必要があります。
>

 なるほど、swupdateのタイミングで戻ってしまうんですね。
 いつの間にか戻るので不思議に思っていました。
 
 回答ありがとうございました。