Armadilloフォーラム

HDMIの解像度設定

tsuchiya

2014年10月8日 11時48分

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

土屋と申します。以前にHDMI関連で質問させて頂きましたが、今回もよろしくお願いいたします。

Armadollo840 の HDMIのディテクト信号が取得できないけど、modedb.cにある物を強制的に設定したいのですが、何かコマンド等御座いますでしょうか。

echo 設定 > /sys/class/graphics/fb0/mode では取得した信号しか受け付けないようです。

コマンドまたはソースの修正箇所などご教授願えると助かります。

コメント

at_daisuke.sasaki

2014年10月8日 17時31分

佐々木大輔です。

> Armadollo840 の HDMIのディテクト信号が取得できないけど、modedb.cにある物を強制的に設定したいのですが、何かコマンド等御座いますでしょうか。

「 HDMIのディテクト信号が取得できないけど、modedb.cにある物を強制的に設定したい」
というのはEDIDで取得できない信号を出力したいという認識で正しいですか?

認識が正しいとすると、fbsetを使用する事で実現できます。
fbset - show and modify frame buffer device settings

1440×480iの信号を設定する例を以下に記載します。
設定する値は、moddeb.cの以下を使っています。
(modedb.cには https://armadillo.atmark-techno.com/forum/armadillo/945 のパッチを当てています)

     /* #6/7: 720(1440)x480iH@59.94/60Hz */
     [6] = {
        NULL, 60, 1440, 480, 37037, 114, 38, 30, 8, 124, 6, 0,
         FB_VMODE_INTERLACED, 0,
     },

コマンドは以下のようになります。オプションの詳細は以下URLを参照してください。
http://linux.die.net/man/8/fbset

[armadillo ~]# fbset -xres 1440 -yres 480 -t 37037 114 38 30 8 124 6

正しく値が設定されているかについてもfbsetコマンドで確認できます。

[armadillo ~]# fbset
 
mode "1440x480-30"
        # D: 27.000 MHz, H: 15.734 kHz, V: 30.027 Hz
        geometry 1440 480 1920 1920 32
        timings 37037 114 38 30 8 124 6
        accel false
        rgba 8/16,8/8,8/0,8/24
endmode

尚、ArmadilloがHDMIに出力する事ができるピクセルクロックは、594MHzを分周したクロックとなります。
ピクセルクロックが作れない値を選択すると、HDMIのディスプレイに正しく表示できないので注意してください。

また、当然ですが、HDMIディスプレイがサポートしていないモードでは表示できません。

tsuchiya

2014年10月9日 12時23分

佐々木様

ありがとうございます。大変助かりました。

> 佐々木大輔です。
>
> > Armadollo840 の HDMIのディテクト信号が取得できないけど、modedb.cにある物を強制的に設定したいのですが、何かコマンド等御座いますでしょうか。
>
> 「 HDMIのディテクト信号が取得できないけど、modedb.cにある物を強制的に設定したい」
> というのはEDIDで取得できない信号を出力したいという認識で正しいですか?
>
> 認識が正しいとすると、fbsetを使用する事で実現できます。
> fbset - show and modify frame buffer device settings
>
> 1440×480iの信号を設定する例を以下に記載します。
> 設定する値は、moddeb.cの以下を使っています。
> (modedb.cには https://armadillo.atmark-techno.com/forum/armadillo/945 のパッチを当てています)
>
>

>      /* #6/7: 720(1440)x480iH@59.94/60Hz */
>      [6] = {
>         NULL, 60, 1440, 480, 37037, 114, 38, 30, 8, 124, 6, 0,
>          FB_VMODE_INTERLACED, 0,
>      },
> 

>
> コマンドは以下のようになります。オプションの詳細は以下URLを参照してください。
> http://linux.die.net/man/8/fbset
>
>

> [armadillo ~]# fbset -xres 1440 -yres 480 -t 37037 114 38 30 8 124 6
> 

>
> 正しく値が設定されているかについてもfbsetコマンドで確認できます。
>
>

> [armadillo ~]# fbset
> 
> mode "1440x480-30"
>         # D: 27.000 MHz, H: 15.734 kHz, V: 30.027 Hz
>         geometry 1440 480 1920 1920 32
>         timings 37037 114 38 30 8 124 6
>         accel false
>         rgba 8/16,8/8,8/0,8/24
> endmode
> 

>
> 尚、ArmadilloがHDMIに出力する事ができるピクセルクロックは、594MHzを分周したクロックとなります。
> ピクセルクロックが作れない値を選択すると、HDMIのディスプレイに正しく表示できないので注意してください。
>
> また、当然ですが、HDMIディスプレイがサポートしていないモードでは表示できません。