OpenChrome Version 0.5 Release Note (July 6th, 2016)
----------------------------------------------------

OpenChrome is an open source implementation of X.Org Server 
DDX (Device Dependent X) graphics device driver for VIA Technologies 
UniChrome and Chrome9 IGPs. (Integrated Graphics Processor)
Please note that OpenChrome does not support VIA Technologies IGPs 
that are related to Trident Microsystems (i.e., Apollo MVP4, PLE133, 
and KLE133) or S3 Graphics (i.e., KM266). Here is the project home 
page for OpenChrome.

http://www.freedesktop.org/wiki/Openchrome/

Please note that VIA Technologies does not support OpenChrome in any way.



Supported Chipsets
------------------

- CLE266
- KM400 / KM400A / KN400 / P4M800
- K8M800 / K8N800
- PM800 / PN800 / PM880 / CN333 / CN400
- P4M800 Pro / VN800 / CN700
- CX700 / VX700
- P4M890 / VN890 / CN800
- K8M890 / K8N890
- P4M900 / VN896 / CN896
- VX800 / VX820
- VX855 / VX875
- VX900



Supported Features
------------------

- VGA
- DVI from an integrated TMDS transmitter (CX700, VX700, and 
  VX900 chipsets)
- DVI from VIA Technologies VT1632A TMDS transmitter
- LVDS flat panel (i.e., laptop LCD flat panel)
- EXA acceleration (RENDER acceleration)
- Xv and XvMC
- Multiple display output (i.e., RandR)



Unproven Features
-----------------

- Standby (ACPI S1 and S3 State) resume
- TV out
- KMS support (Kernel Mode Setting; requires the use of VIA 
  Technologies IGP DRM module supporting KMS. See "Where to Obtain 
  OpenChrome Source Code" chapter for more details.)



Unimplemented Features
----------------------

- Hardware cursor support for CLE266, KM400, KM400A, KN400, and 
  P4M800 chipsets
- DVI via Silicon Image SiI 164 TMDS transmitter or Chrontel TMDS 
  transmitter
- LVDS via VT1631 / VT1636 LVDS transmitter
- External HDMI transmitter (i.e., Jetway J7F5M-VHE-LF motherboard, 
  VIA Embedded EPIA-P720 motherboard, etc.)
- DisplayPort and HDMI support for VX900 chipset (Might work with 
  the experimental DRM module that supports KMS. See "Where to Obtain 
  OpenChrome Source Code" chapter for more details.)



OS Support
----------

- X.Org Server Version 1.7 or later
  (It might not work correctly if it is compiled against an older 
  X.Org Server.)
- Linux Version 2.6.32 or later
  (Note: For Linux Version 4.5 or later, you may have to blacklist 
  vesafb. This is a bug that has not been fixed so far.)



What's New for OpenChrome Version 0.5
-------------------------------------

Based on OpenChrome Version 0.4.0 code, OpenChrome Version 0.5 fixes 
several bugs while adding two new features. 

- Major code cleanup
- Removal of more manual options (BusWidth, ForcePanel, and AccelMethod)
- Fix for runtime screen resolution change X.Org Server crash bug
- Fix for CLE266 chipset not being able to function correctly if 
  "CRT + TV" option was chosen in BIOS setup
- Initial support for VIA Technologies VT1632A TMDS transmitter for DVI
- Initial support for multiple display output (i.e., RandR)



How to Contact OpenChrome Developers
------------------------------------

Please visit these OpenChrome mailing lists.

http://lists.freedesktop.org/mailman/listinfo/openchrome-users
http://lists.freedesktop.org/mailman/listinfo/openchrome-devel

openchrome-users mailing list is meant for non-technical users asking 
questions about how to use OpenChrome, etc. openchrome-devel mailing 
list is for discussing OpenChrome development issues.



Support for Older Versions
--------------------------

As a general rule, the older version OpenChrome will not be supported 
once a new version is out. It is sometimes useful to try out the 
older version, in order to see if a regression has occurred, but 
generally speaking, there will be no fixes for the older versions.
OpenChrome is written so that it can be compiled against X.Org Server 
Version 1.7 or later and Linux Version 2.6.32 or later. We will likely 
maintain this minimum platform requirement for the foreseeable future. 
What this means is that if the user wanted to try the latest OpenChrome, 
it can do so with an OS that was released around Year 2010. OpenChrome 
might still compile for anything older than that, but it might not be 
stable enough to be useful.



Where to File a Bug Report
--------------------------

In order to file a bug report, please visit http://bugs.freedesktop.org. 
When you file the bug, file it against "xorg." When specifying the 
component, please select "Driver/openchrome." This allows a message to 
be sent to openchrome-devel mailing list, so that developers can be 
notified of the bug.
    It is highly recommended to file the bug report over at 
http://bugs.freedesktop.org rather than sending a message to 
openchrome-devel mailing list. Also, filing a bug report against the 
Linux / BSD distribution you are using (i.e., Debian, Ubuntu, Fedora, 
etc.) will likely be a waste of your time since the developers for those 
distributions do not directly work on developing OpenChrome.



Where to Submit a Patch
-----------------------

In order to submit a patch to improve OpenChrome, please visit 
http://bugs.freedesktop.org. Open a bug report and upload the patch there.
When you file the bug, file it against "xorg." When specifying the 
component, please select "Driver/openchrome." This allows a message to 
be sent to openchrome-devel mailing list, so that developers can be 
notified of the bug.



Where to Obtain OpenChrome Source Code
--------------------------------------

The OpenChrome source code repository is located at.

http://cgit.freedesktop.org/openchrome/xf86-video-openchrome/


The experimental DRM (Direct Rendering Manager) module that supports 
KMS (Kernel Mode Setting) is located at.

https://cgit.freedesktop.org/openchrome/drm-openchrome/tree/drivers/gpu/drm/via



If You See a Bug
----------------

If you see a bug, please don't be surprised. OpenChrome has been in 
development for more than 10 years. In that process, there were many 
different developers that wrote the code in varying ways. OpenChrome 
is a unified graphics device driver that supports 12 generations of 
VIA Technologies IGP starting from CLE266 chipset all the way to 
VX900 chipset. Even the VIA Technoloiges in house unified graphics 
device driver does not support the number of devices OpenChrome does. 
Furthermore, VIA Technologies IGPs tend to rely heavily on many 
different kinds of external encoders and transmitters to get the 
desired functionality. As a result, it is very difficult to get the 
code right for every possible configuration you can think of.
    Starting with OpenChrome Version 0.4.0, the project is under new 
management, and moving forward, the emphasis will be on device driver 
reliability, and code maintainability.

(End of this document.)
