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;