スプラッシュ画面の無効化設定について

Torizon OS上で動作するQtアプリケーション(GUIアプリケーション)を開発しております。
コンテナ起動時のスプラッシュ画面(Torizonロゴ画面)について、
無効化する方法をご教示いただけますでしょうか。

元々は、TorizonCoreBuilderの書き込みイメージを生成する際に
tcbuild.yamlを以下のように記載しスプラッシュ画面を設定しておりました。
※抜粋

customization:
  # >> Splash screen:
  splash-screen: splash/splash_image.png

開発の都合により、
スプラッシュ画面を無効化し、起動直後にGUIアプリケーションを表示する必要があります。
以下のようにスプラッシュ画面の指定をコメントアウトしたところ
画面が無効化されずTorizonロゴが表示されるようになりました。

customization:
  # >> Splash screen:
  #splash-screen: splash/splash_image.png

お手数をおかけして申し訳ありませんが
スプラッシュ画面を無効するための具体的な設定方法をご教示いただけますでしょうか。

1 Like

Hi, I’m the Toradex AI Assistant.

I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.

Did you like my answer? :+1: :-1:


こんにちは、ご質問ありがとうございます。

Torizon OSの起動時スプラッシュ画面(Torizonロゴなど)を完全に無効化するには、コメントアウトではなく、tcbuild.yamlからsplash-screenの指定行を「完全に削除」してください。コメントアウトのみだとデフォルト動作としてTorizonのスプラッシュ画面が表示されてしまいます。

併せて、ブート時のPlymouth(スプラッシュを管理している仕組み)も無効化するには、kernel(U-Boot)のコマンドラインパラメータからsplashplymouth.ignore-serial-consolesを削除し、代わりにlogo.nologoを追加してください。

手順の概要:

  1. tcbuild.yamlからsplash-screenセクションを完全に削除(コメントアウトではなく、行ごと削除)。

  2. U-Bootの環境変数bootargsを編集して、

  3. 変更後、TorizonCore Builderで新しいイメージを作成・書き込みください。

公式手順も下記を参考にしてください:

この設定により、起動時にスプラッシュ画面が表示されず、直接GUIアプリケーションが立ち上がる環境となります。

Best regards, Toradex AI Assistant.

2. U-Bootの環境変数`bootargs`を編集して、
  * `splash` および `plymouth.ignore-serial-consoles` を除外
  * 代わりに `logo.nologo` を追加
ブートローダのコマンドライン編集については下記が参考になります。
https://community.toradex.com/t/imx8mm-splash-screen/27011

こちらについて数点、質問なのですが

①Argsの指定はtcbuild.yamlの

customization:
  # kernel:
    # >> Custom kernel arguments.
    # arguments:
      # - key1=val1
      # - key2=val2

こちらで設定する認識で間違いありませんでしょうか

②Kernelの引数設定において、
引数の差分だけ設定するような方法はありますでしょうか
例えば、現状指定している引数をすべて設定するのではなく
・引数から splash および plymouth.ignore-serial-consolesを除外
・引数に `logo.nologo‘の追加
を後から指定

お手数をおかけして申し訳ありませんが、
ご確認の程よろしくお願いいたします

@h-ysk

ご連絡ありがとうございます。ご回答遅くなり申し訳ございません。ご確認させていただきます。

Torizon OSのバージョンを教えていただけますでしょうか?
Torizonのデバイスで次のコマンドの実行の上、アウトプットの情報を教えてください。

$ tdx-info

後は、恐れ入りますが完全にご理解のため、操作(Boot)のVideoを送っていただけますか。どれのロゴはいつ出るか完全理解させて頂きたいと思います。

アルバロ。

ご連絡遅くなり申し訳ありません

TorizonOSのバージョンについては以下の通りになります。

Software summary
------------------------------------------------------------
Bootloader: U-Boot
Kernel version: 5.15.129-6.5.0+git.6f8fd49366db #1-TorizonCore SMP PREEMPT Fri Dec 22 11:15:52 UTC 2023
Kernel command line: root=LABEL=otaroot rootfstype=ext4 quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:3 ostree=/ostree/boot.1/torizon/025a241ec405fcd55b657ad81df8e1de913f5dfcdd8da248020912d6e0ac9ea2/0
Distro name: NAME="TorizonCore"
Distro version: VERSION_ID=6.5.0-build.8
Distro variant: VARIANT="Docker"
Hostname: verdin-imx8mm-14756411
------------------------------------------------------------

Hardware info
------------------------------------------------------------
HW model: Toradex Verdin iMX8M Mini on Dahlia Board
Toradex version: 0060 V1.1C
Serial number: 14756411
Processor arch: aarch64
-----------------------------------------------------------

操作(Boot)のVideoについては、情報展開できる内容について調整しておりますので
時間を要します、何か進展ありましたらご連絡させていただきます。

お手数をおかけして申し訳ありませんが、
ご確認の程よろしくお願いいたします。

@h-ysk

いつもお世話になっております。
Toradex Japanのアルバロです。

詳細をいただきありがとうございます。返信が遅くなり申し訳ございません。

ご質問について回答いたします。

  1. Kernel arguments の設定場所について
    ご認識の通り、tcbuild.yaml の以下のセクションで設定可能です。

    customization:
      kernel:
        arguments:
          - key=value
    
    

    TorizonCore Builderではこちらが正式な方法となります。

  2. 既存の引数の削除について
    現状、TorizonCore Builderでは既存の引数を削除することはできず、新しい引数を追加する形となります。
    そのため現在の bootargs に splashplymouth.ignore-serial-consoles が残ったまま、logo.nologo が追加されている状態になっています。

    もし引数を完全に削除したい場合は、tcbuild.yaml で bootargs 全体を上書きする必要があります。
    具体的には、現在の引数をすべてコピーし、不要なもの(splash, plymouth.ignore-serial-consoles)を取り除いた上で、logo.nologo を追加してください。
    ただしこの方法では、今後Torizonのデフォルト設定が変わった場合に手動で更新が必要になる点にご注意ください。

  3. Splash screen の設定について
    スプラッシュ画面を完全に無効化したい場合は、tcbuild.yamlsplash-screen セクションを空白にせず、完全に削除してください。
    空白やコメントアウトだけでは、デフォルトのTorizonスプラッシュ画面が表示されてしまいます。

以下に、例として tcbuild.yaml のサンプルを記載いたします。

version: "3"

customization:
  kernel:
    arguments:
      # Please note: This is an AI-generated example.
      # You must adapt it to your current bootargs manually.
      # Copy the existing bootargs and remove 'splash' and 'plymouth.ignore-serial-consoles',
      # then add 'logo.nologo'
      - root=LABEL=otaroot
      - rootfstype=ext4
      - quiet
      - logo.nologo
      - vt.global_cursor_default=0
      - fbcon=map:3
      - ostree=/ostree/boot.1/torizon/025a241ec405fcd55b657ad81df8e1de913f5dfcdd8da248020912d6e0ac9ea2/0

ご注意:
上記はAIによる生成例であり、そのままでは動作しない可能性があります。
実際に使用する際には、お使いのシステムの tdx-info などから取得した既存の bootargs をベースに調整してください。

まとめますと:

  • tcbuild.yaml → customization.kernel.arguments で新しい引数を追加できます。

  • 引数の削除は直接サポートされておらず、bootargs 全体を上書きする必要があります。

  • splash-screen セクションは削除することで、スプラッシュ画面を無効化できます。

ぜひこちらをお試しいただき、改善があったかどうかお知らせいただければ幸いです。

以上、引き続きよろしくお願いいたします。
アルバロ。