VIA Technologies VT1632(A) DVI transmitter device support officially added to OpenChrome DRM

As promised, VIA Technologies VT1632(A) DVI transmitter support was finally added to OpenChrome DRM. Here is the commit. VT1632(A) was the biggest missing device support that OpenChrome DRM had, and now that it is finally supported, this event will make the eventual Linux kernel tree mainlining closer to a reality. By adding VT1632(A) device support, I will say that OpenChrome DRM now handles almost all typical user display usage.

That being said, there are still several missing display devices for OpenChrome DRM.

  • Silicon Image SiI 164 DVI transmitter
  • VIA Technologies VT1622(A) TV encoder
  • VIA Technologies VT1623 TV encoder
  • VIA Technologies VT1625 TV encoder
  • VIA Technologies VT1631 LVDS transmitter
  • VIA Technologies VT1636 LVDS transmitter
  • Analog Devices AD9389B HDMI transmitter
  • VX900 chipset integrated DVI / HDMI transmitter
  • VX900 chipset integrated DisplayPort transmitter

Since VT1632(A) is a largely pin and register compatible clone of Silicon Image SiI 164, adding support for it should be fairly easy. In fact, OpenChrome DDX UMS code already supports it. The only problem is that I do not own a box that has SiI 164 in it. For TV encoders, even the existing OpenChrome DDX UMS code for them are broken, so I will need to fix them first before the code is ported over to OpenChrome DRM. VT1631 and VT1636 are I2C bus configurable LVDS transmitters for flat panel, but OpenChrome DDX UMS code never supported them in the first place. Analog Devices AD9389B comes soldered on VIA EPIA-P720 and P820 Pico-ITX boards. I recently purchased EPIA-P720 on eBay, but later realized that it did not come with a power cord in order to power it, so I cannot use it for now. While OpenChrome DRM currently supports VX900 chipset’s integrated DVI / HDMI transmitter, the code has some issues that it is not at Linux kernel tree mainlining quality. I have not tried to even support VX900 chipset’s integrated DisplayPort transmitter so far although register programming information is in the VX900 chipset technical documentation.

Furthermore, there were some hardware that used Chrontel transmitters / encoders in the past, but I do not own copies of them. I do not mind adding support for them to OpenChrome DDX / DRM someday.

Anyway, adding VT1632(A) support to OpenChrome DRM was a lot harder than I anticipated. It took a lot longer time than I would have wanted to spend on it. If you feel like I deserve some financial rewards for my 8 weeks of hard work, here is my PayPal donation page. Thanks.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s