輪舞ラボラトリー

このサイトは50%の妄想と30%の勘違い、20%の偏見でできています。

2000年01月04日

AndroidでUSBディスプレイを使用するためのメモです。


USBディスプレイを使用するためにDisplayLinkドライバを「ビーグル板の冒険」さんから取得します。

$ git clone git://github.com/magoroku15/DisplayLink-driver-for-android.git

今回は、カーネルに組み込んで使用します。

まずは、DisplayLinkドライバをカーネルソースがあるディレクトリにコピーします。

$ cp -a DisplayLink-driver-for-android/displaylink/ <カーネルディレクトリ>/drivers/video

このままでは、コンパイル対象にならないので以下の2つのファイルを修正します。

<カーネルディレクトリ>/drivers/video/Kconfig
  source "drivers/video/backlight/Kconfig"
  source "drivers/video/display/Kconfig"
 +source "drivers/video/displaylink/Kconfig"
 
  if VT
         source "drivers/video/console/Kconfig"
  endif

<カーネルディレクトリ>/drivers/video/Makefile
  obj-$(CONFIG_VIDEO_OUTPUT_CONTROL) += output.o
  
 +obj-$(CONFIG_FB_DISPLAYLINK)    += displaylink/

最後に、カーネルコンフィグを変更します。

Location:
-> Device Drivers
  -> Graphics support 
    -> OMAP2/3 Display Subsystem support  <- 無効にする
    -> Displaylink frame buffer support   <- 有効にする

これでコンパイルすると起動時にUSBディスプレイが認識されます。


ちなみに、起動時にUSBディスプレイが緑色に表示されますが、私は黒色にして使っています。

起動時の色は以下の個所で変更可能です。

<カーネルディレクトリ>/drivers/video/displaylink/displaylink-main.c
          displaylink_draw_rect(dev, 0, 0, dev->fb_info->var.xres,
 -                dev->fb_info->var.yres, 0x30, 0xff, 0x30);
 +                dev->fb_info->var.yres, 0x00, 0x00, 0x00);
          
          return 0;