Armadilloフォーラム

電源投入時の起動画面について

ma2013

2014年2月14日 10時54分

 MCSの馬です。
 いつも大変お世話になっております。

 弊社ではArmadillo840の液晶版を使ってQtでのアプリ開発を行っております。

 良ければ下記のことをお願いいたします。
 「Linuxの起動画面はデフォルトのシリアル向け表示を維持したまま,電源投入した時点で,液晶画面でも何かカスタマイズした画像を表示したい。」

コメント

今、簡単な方法が思い付かないので、現状の説明だけ...。

LCDコントローラーの初期化は、現状カーネルで行っています。ですので電源が
投入されて、ブートローダーからカーネルに遷移するまで LCDは動作しない状
態です。

電源投入時からLCDになにか表示したい場合は、

1) ブートローダーで、LCDコントローラーを初期化
2) ブートローダーで、画像を表示
3) カーネルがLCDコントローラーを再初期化する時に、再度画像を表示

となります。

> 今、簡単な方法が思い付かないので、現状の説明だけ...。
>
> LCDコントローラーの初期化は、現状カーネルで行っています。ですので電源が
> 投入されて、ブートローダーからカーネルに遷移するまで LCDは動作しない状
> 態です。
>
> 電源投入時からLCDになにか表示したい場合は、
>
> 1) ブートローダーで、LCDコントローラーを初期化
> 2) ブートローダーで、画像を表示
> 3) カーネルがLCDコントローラーを再初期化する時に、再度画像を表示
>
> となります。

mcsのmaです。
デフォルトの起動ログを全部液晶へ変換できますか?
マニュアル読んだところ,操作方法は分かりませんでいた。
ご存知の方いれば,お願いいたします。

yashi 様

 MCSの馬です。
 いつも大変お世話になっております。

 最近LCDドライバに関するソースを調べておりますが,
LCDコントローラの初期化をしているソースの場所は分かりませんでした。
良ければ,教えてくださると助かります。

linux/drivers/video/sh_mobile_lcdcfb.c がメインのドライバーです。
それ以外に、pin mux の変更などを
linux/arch/arm/mach-shmobile/board-armadillo840.c で行っています。

中村です。

横から失礼ます。
馬さんの質問からかけ離れてしまいますが、
ここに書かせてもらいます。

> FAQ : 液晶画面(LCD)、またはHDMIモニターに起動ログを表示するには?
> http://armadillo.atmark-techno.com/faq/bootlog-on-lcd

起動ログ表示だけでなくて、ログインできるコンソールとしても使えますね。

A440+LCDを使って420用のカーネル+ユーザランドで試してみました。
420用のカーネル+ユーザランドを使ったのは、440用のソースで
Xをdisableする方法がすぐにわからなかったためです。

440も420も、標準状態で、

Device Drivers --->
  Graphics support --->
    Console display driver support --->
      <*> Framebuffer Console support
      [*]   Map the console to the primary display device

このようになってました。

でもって、

hermit> setenv console=tty1

を設定すると420のカーネル+ユーザランドでもLCDに
起動メッセージを表示してくれました。

そこで、USBキーボードをつなぎ、
/etc/inittabに次の行を追加して"init -q"を実行。

::respawn:/sbin/getty -L 115200 tty1 vt102

これでUSBキーボードを使ってLCDをコンソールにして
ログインすることができました。

シリアルやLANが使えないとき、メンテなどに使えそうです。

それから、最新のソース(カーネルとユーザランド)の他に、
2~3年くらい前のソース(カーネルとユーザランド)が
ベースになっているバイナリでも試しましたが、
setenv console=tty1 するだけで動いてくれました。

このLCDをconsoleにする機能は、実はずいぶん前から
入っていたということなんですね。

--
なかむら

中村です。

自己レスです。

> このLCDをconsoleにする機能は、実はずいぶん前から
> 入っていたということなんですね。

440のスタートアップガイドにちゃんと書いてありました。
http://manual.atmark-techno.com/armadillo-4x0/armadillo-440_startup_gui…

 コンソールを液晶パネルにする場合
  hermit> setenv console=tty1,115200

--
なかむら

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

> 電源投入時からLCDになにか表示したい場合は、
>
> 1) ブートローダーで、LCDコントローラーを初期化
> 2) ブートローダーで、画像を表示

このようなカスタマイズされた(A840での)ブートローダーの例が有りましたらお知らせください。

at_ohsawaです。

> カスタマイズされた(A840での)ブートローダーの例
ごめんなさい。
今のところそういった事例は聞いたことがありません。

藁をも掴む気持ちでWEB検索したら下記のリンクが見つかりました。

「Armadillo-440ブートローダー処理中の液晶表示について」
http://lists.atmark-techno.com/pipermail/armadillo/2013-March/008663.ht…

また、パッチもありました。
http://lists.atmark-techno.com/pipermail/armadillo/attachments/20130313…

これを参考にしたらA840でも可能でしょうか?(Linux初心者なので実作業に入る前に色々調べているところです)

ブートローダーカスタマイズセミナとかカーネルカスタマイズセミナとは有るといいのですが。

MCSのmaです。
皆様の貴重な情報,誠にお礼申し上げます。
今時間が取れませんが,ぜひ試してみたいと思っております。