Android 2.3.1 を実行しているDevKit7000を使用しています。TV Out (コンポジット) インターフェイスを使用したいのですが、TV Out で出力 (信号) が得られません。カーネルで TV Out を有効にしましたが。これは、TV Out とビデオ関連を扱うカーネルの構成ファイル (.config) ファイルの一部です。
config VIDEO_TV20=y
config HDMI_CEC=y
config HDMI_HPD=y
config TV_FB=y
CONFIG_VIDEO_SAMSUNG=y
CONFIG_VIDEO_SAMSUNG_V4L2=y
そして、これがボード起動時のハイパーターミナルの出力の一部です ( 2 回目の更新を参照してください) 。
[ 2.007845] FIMC0 registered successfully
[ 2.011670] FIMC1 registered successfully
[ 2.015652] FIMC2 registered successfully
[ 2.018470] <6>S5PC1XX TVOUT Driver, (c) 2009 Samsung Electronics
[ 2.025187] s5p-tvout s5p-tvout: hpd status is cable removed
[ 2.036115] DBUG_PORT must not use AFC!
[ 2.038533] Freeing init memory: 152K
これは、TVOUT ドライバーが正常にインクルードされ、ロードされたことを示していますが、 hpd ステータスがケーブルが取り外されているという意味がわかりません。
「AndroidでTV OUTを有効にする」に関してWebで見つけた唯一の関連リンクはこれでしたが、これはOMAPベースのデバイス用ですが、ARMを使用しています。
TV Out は、利用可能なデバイスのリストにも表示されます。これは、adb シェルでのls /dev/devices/platformコマンドの出力です。
# ls sys/devices/platofrm
uevent
power
power.0
s5pv210-nand
smdkc110-rtc
devkit7000-keypad
s3c-g2d
s5p-tvout
s5p-cec
s5p-hpd
pvrsrvkm
どうやらすべて問題ないようですが、まだ TV OUT が機能していません。では、TV OUT を使用 (有効化) する方法を教えてください。
更新:の出力/sys/module/
は(簡潔にするために編集されています):
cd /sys/module
# ls
s3cfb pvrsrvkm scsi_mod sg dm9000
usbcore ehci_hcd usb_storage u_ether
tuner_xc2028 tuner_simple mt20xx tda8290
tea5767 tea5761 tda9887 xc5000 v4l1_compat
mmc_core sdhci hid usbhid usbserialbinder
snd snd_timer snd_pcm sch_htb
2 回目の更新:
起動時のログを詳しく調べると、考えられる問題が明らかになります。起動時のハイパーターミナルの出力は次のとおりです (テレビ出力に関連する出力の一部のみ)。
[ 2.043158] <6>s5p_tv_init
[ 2.046943] <6>S5PC1XX TVOUT Driver, (c) 2009 Samsung Electronics [Screwed]!
[ 2.053992] <6> __devinit s5p_tv_probe
[ 2.058895] <6> __devinit tv_clk_get
[ 2.063516] <6> s5p_tv_base_clk_gate
[ 2.068191] <6> s5p_hpd_get_state
[ 2.072152] s5p-tvout s5p-tvout: hpd status is cable removed
[ 2.077964] <6> s5p_tv_if_init_param
[ 2.082293] <6> s5ptvfb_set_lcd_info
[ 2.086796] <6> s5ptvfb_alloc_framebuffer
[ 2.091825] <6> s5ptvfb_init_fbinfo
[ 2.096239] <6> s5ptvfb_set_bitfield
[ 2.100747] <6> s5ptvfb_set_alpha_info
[ 2.105424] <6> s5ptvfb_register_framebuffer
[ 2.116337] <6> s5p_tv_base_clk_gate
[ 2.119670] DBUG_PORT must not use AFC!
[ 13.997353] s5p_vlayer_stop::s5p_vp_stop() fail
したがって、s5p_vlayer_stop:: s5p_vp_stop()は失敗します。これにより、tv を初期化/正常に動作させる責任を負う他のメソッドの呼び出しが明らかに停止します。しかし、私はドライバーの専門家ではなく、すべての関数呼び出しを把握/バックトラックすることはできません。経験があり、s5p_vp_stop() の失敗を防ぐのに役立つ場合
ありがとう !
よろしく
うさま