tic-hirano
2017年6月23日 16時42分
平野と申します.
Armadillo-840液晶モデル開発セットを利用しています.
ユーザアプリケーションが動作するまでの間にLCDに画像を表示したいと思いアットマークテクノ様のサイトで検索をしたところ,過去にメーリングリストで「[Armadillo:08660] Armadillo-440ブートローダー処理中の液晶表示について」という内容がありました.
(http://lists.atmark-techno.com/pipermail/armadillo/2013-March/008663.ht…)
hermitにLCD出力をするコードを追加しているようですが,440と840はプロセッサが異なるためどのコードを参考に変更すればよいかわかりません.
「linux-3.x/drivers/video/sh_mobile_lcdcfb.c」を参考に手を加えていけばよいのでしょうか?
以上,よろしくお願いします.
コメント
tic-hirano
平野です.
KES)小西さん,返信ありがとうございます.
> 表示したいタイミング(範囲)が不明なため、ブートローダー(hermit)での表示ではなく、
> ブートローダからカーネルを起動してからアプリケーションが起動して
> 画面を更新するまでの画面表示とのことで回答します。
440ではhermitに手を加えてLCDへの表示ができているようだったので,可能であれば「ブートローダ」の段階で表示ができればと思いました.
> 単純に静止画を出すのであれば、
> カーネルのメニューコンフィグで指定しているCONFIG_LOGO_LINUX_XXXXを有効にして、
> カーネル内のLOGOビットマップを差し替えるのが早いです。
> ソースはdrivers/video/logo/logo.cですね。
下記の手順で試してみましたがLCDにもHDMI出力にもペンギン ロゴもしくは置き換えたロゴが出ませんでした.
・「Device Drivers」-「Graphics support」-「Bootup logo」-「Standard black and white Linux logo」を有効にする
・「atmark-dist/linux-3.x/drivers/video/logo/logo_linux_mono.pbm」を置き換える
「System Type」-「Armadillo-840 System Configuration」の「Primary framebuffer」がLCDC1になっているためかとLCDC0に変更してみましたがLCDとHDMIが入れ替わるのみでした.
何か見直すべき場所はありますでしょうか?
# # Graphics support # # CONFIG_DRM is not set # CONFIG_VGASTATE is not set # CONFIG_VIDEO_OUTPUT_CONTROL is not set CONFIG_FB=y # CONFIG_FIRMWARE_EDID is not set # CONFIG_FB_DDC is not set # CONFIG_FB_BOOT_VESA_SUPPORT is not set # CONFIG_FB_CFB_FILLRECT is not set # CONFIG_FB_CFB_COPYAREA is not set # CONFIG_FB_CFB_IMAGEBLIT is not set # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set CONFIG_FB_SYS_FILLRECT=y CONFIG_FB_SYS_COPYAREA=y CONFIG_FB_SYS_IMAGEBLIT=y # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=y # CONFIG_FB_WMT_GE_ROPS is not set CONFIG_FB_DEFERRED_IO=y # CONFIG_FB_SVGALIB is not set # CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y # CONFIG_FB_TILEBLITTING is not set # # Frame buffer hardware drivers # # CONFIG_FB_S1D13XXX is not set CONFIG_FB_SH_MOBILE_LCDC=y CONFIG_FB_SH_MOBILE_HDMI=y # CONFIG_FB_SH_MOBILE_SDENC is not set # CONFIG_FB_SMSCUFX is not set # CONFIG_FB_UDL is not set # CONFIG_FB_VIRTUAL is not set # CONFIG_FB_METRONOME is not set # CONFIG_FB_BROADSHEET is not set # CONFIG_EXYNOS_VIDEO is not set CONFIG_BACKLIGHT_LCD_SUPPORT=y # CONFIG_LCD_CLASS_DEVICE is not set CONFIG_BACKLIGHT_CLASS_DEVICE=y # CONFIG_BACKLIGHT_GENERIC is not set CONFIG_BACKLIGHT_PWM=y # CONFIG_BACKLIGHT_ADP8860 is not set # CONFIG_BACKLIGHT_ADP8870 is not set # CONFIG_BACKLIGHT_LP855X is not set # # Console display driver support # CONFIG_DUMMY_CONSOLE=y # CONFIG_FRAMEBUFFER_CONSOLE is not set CONFIG_LOGO=y CONFIG_LOGO_LINUX_MONO=y # CONFIG_LOGO_LINUX_VGA16 is not set # CONFIG_LOGO_LINUX_CLUT224 is not set CONFIG_FB_SH_MOBILE_MERAM=y
・開発環境
ATDE5:20161130
atmark-dist:20160927
カーネル:linux-3.4-at20
tic-hirano
平野です.
自己解決しました.
下記を参考に起動ログを表示することを確認できました.
http://armadillo.atmark-techno.com/faq/bootlog-on-lcd
画像のみを表示したい場合はhermitの起動オプションを指定しないことで実現できました.
kes-konishi
2017年6月23日 17時23分
KES)小西です。
表示したいタイミング(範囲)が不明なため、ブートローダー(hermit)での表示ではなく、
ブートローダからカーネルを起動してからアプリケーションが起動して
画面を更新するまでの画面表示とのことで回答します。
単純に静止画を出すのであれば、
カーネルのメニューコンフィグで指定しているCONFIG_LOGO_LINUX_XXXXを有効にして、
カーネル内のLOGOビットマップを差し替えるのが早いです。
ソースはdrivers/video/logo/logo.cですね。
起動までの進捗状況の表示が必要であれば
psplashのパッケージを使用してカスタム化するのが早いと思います。