OpenChrome DDX Version 0.6 (March 7th, 2017)
--------------------------------------------

OpenChrome DDX Version 0.6 is an improved version of OpenChrome DDX 
Version 0.5 with a number of improvements made to the code. OpenChrome 
DDX Version 0.6 is written in a way to completely replace Version 
0.2.904 through 0.5.

OpenChrome DDX Version 0.6 has added the following new features.

- First official support for CX700, VX700, and VX800 chipsets 
  integrated TMDS transmitter (i.e., DVI support)
- Initial support for Silicon Image SiI 164 TMDS transmitter


OpenChrome DDX Version 0.6 has the following improvements.

- Improved FP reinitialization when resuming from standby
  (HP 2133 Mini-Note, FIC CE260 / CE261 based netbooks like 
   Everex CloudBook and Sylvania g netbook)
- Improved automatic detection of display resources
- Improved X Server stability in dual monitor mode
- Automatic active steering of the display controller channel to the 
  correct display output device


OpenChrome DDX Version 0.6 fixes the following bugs.

- Fix for the disruption of the VT (Virtual Terminal) screen bug 
  introduced in Version 0.5
- Fix for HP 2133 Mini-Note's PCIe WLAN getting turned off 
  inadvertently bug introduced in Version 0.5


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

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)


OpenChrome Version 0.4.0 (March 31st, 2016)
-------------------------------------------

OpenChrome Version 0.4.0 is a major break from the past versions where 
configuring the display resources were done manually. Now the displays 
are detected mostly automatically, although a few manual options still 
remain. These will be retired in the near future. Besides that, two 
alternative mode setting options were discontinued (VBE mode setting 
and "legacy" mode setting), in order to simplify the code. A regression 
affecting those with a DVI to VGA adapter, which appeared in OpenChrome 
Version 0.3.x, is now fixed. More importantly, devices that were not 
registered with a known device table (a large table that is located 
internally inside the code) used to crash during boot time, but since 
this table was removed completely, this bug does not appear anymore.

- Removal of VBE (VESA BIOS Extension) mode setting
  (removal of VBEModes and VbeSaveRestore options)
- Removal of "legacy" mode setting
  (removal of ModeSwitchMethod option)
- Removal of ActiveDevice option
- Removal of ForcePanel option
- Removal of PanelSize option
- Removal of a known device table internally
- Mostly automatic display detection
- Fix for a regression affecting those with DVI to VGA adapter
- Fix for a boot time crash for devices that were not on the known 
  device table
- Fix for a possible OLPC XO-1.5 detection issue (untested)
- Fix for various small compilation warnings / errors


openchrome 0.3.3 (23/05/2013)
-----------------------------

This is a bugfix release.
- Fix integer overflow in libchromeXvMC (CVE-2013-1994).
- Various bug fixes and improvements.


openchrome 0.3.2 (27/03/2013)
-----------------------------

This is a bugfix release.
- EXA fixes. Compositing is now enabled again.
- TV out fixes and enhancements.
- Fix memory detection on P4M800.
- Fix for lockup when probing some I2C bus on P4M900.
- VGA out probing with Vblank.
- Fix building with autoconf 1.13.1.
- Fix for X server 1.14.
- Various bug fixes and improvements.


openchrome 0.3.1 (04/09/2012)
-----------------------------

This is a bugfix release. It mainly fixes a crash at startup with X server 1.13.


openchrome 0.3.0 (20/07/2012)
-----------------------------

The 0.3.0 release is a major step forward for the openchrome X.org
driver. It brings most of the features that are needed with todays X
server. The code has seen a major overhaul, with a lot of new features
and a lot of cleanup. It has been tested on most of the available VIA
IGPs and we believe there are no regression at this point. However, the
testing was done on a limited range of hardware, so your mileage may
vary. Please let us know if you have any trouble using it.

* New Features :
- TTM/GEM support.
- KMS support.
- Better RandR support.
- XAA removal.
- DGA removal.
- Support for X server 1.13 API.
- Code cleanup and bug fixes.

* Known bugs and limitations :
- Dual screen is not fully working.
- EXA compositing is disabled.
- KMS-enabled DRM module is not in upstream kernel yet.

Starting with the 0.3.0 release, please submit bugs and patches to
freedesktop.org bug tracker.
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome

The old ticket tracker is kept as a reference only. It is still
available at : http://www.openchrome.org/trac/report/1?asc=1&sort=ticket


openchrome 0.2.906 (15/05/2012)
-------------------------------
* New features :
- VX900 Xv support.
- EXA is now the default although compositing is buggy and thus disabled.

* Bugfixes and enhancements :
- Fix I420 Xv surface on CME engine.
- Fix EXA to not require XAA module in X server.


openchrome 0.2.905 (10/02/2012)
-------------------------------
* New features :
- VX900 support (Xv not supported yet).
- VX855 XVideo support.

* Bugfixes and enhancements :
- More debug information to video decoding.
- Add secondary FIFO support for K8M890 and P4M890.
- Check the primary FIFO for VX855.
- Add panel scale support for CLE266 and KM400.
- Fix bug with malloc.
- Enabled new mode switch for PM800 chipset.
- Add option to enable unaccelerated RandR rotation ("SWRandR").
- Enable new mode switch for VM800 chipsets.
- More debug traces to via_video.c.
- Fix manual and add more comments.
- Fix start address.
- Optimization of the hardware accelerated cursor and XAA (K8M890 chipset).
- Code clean up.
- Fix bug with suspend and VT switch on VX800 chipset and 64bit systems.
- Synchronize via_drm.h with drm-2.4.17.
- Fix segfaults with EXA and XV.
- Fix build on old kernels.
- Replace RegionsEqual with REGION_EQUAL and use
  the xf86XVFillKeyHelperDrawable instead of xf86XVFillKeyHelper.
- Fix DFP parameter description for the ActiveDevice option.
- Manpage update and some minor changes.
- Set colorkey for 2nd_monitor.
- Add timeouts to HQV while loops.
- Improve 2d performance on chipsets without AGP/PCIe.
- Add option I2CDevices.
- Disable Hardware Clipping for the VX855.
- Re-Enable the VQ for VX800/VX855.
- Disable AGP and DMA by default for VX800 and VX855.
- Fixed freeze on 64bit system for K8M800 chipset.
- Increase bandwidth to handle 1920x1200 resolution with DDR266.
- Fix XV crash on PM800 post VX855 rework.
- Fix several typo in code comments.
- Update VX855 FIFO.
- Fix bug with TV out flickering.
- Replace the deprecated functions with new ones.
  Refer to "/xserver/include/os.h".
- Replace remaining xalloc to malloc.
- Change maximum line pitch and virtual height according to chipset.
- Update 1024x600 modeline.
- Add workaround for memory autodetection.
- Enable new mode switch and panel support on K8M800 and VM800.
- Fix type in VIASave.
- Use DRICreatePCIBusID when available to create Bus ID string.
- Restore video interrupt flag.
- Fix OpenGL application crash on VX900 chipset.
- Fix VIA VB8001 Mini-ITX Board (P4M900) support.
- Add workaround for bad memory detection on some P4M800.
- Fix resolution detection for OLPC 1.5.
- Fix Xvideo crash on X.Org server 1.10.
- Fix XAA displaying issues.
- Fix cursor garbare after suspend/hibernate/resume on VX855/VX900.
- Workaround EXA crash with new libcairo2.
- Handle X server 1.12 (videoabi 12).
- Add support for I420 Xv surface.
- Limit video RAM size to 256 MB, PCI BAR can't handle more.
- Add Harald Welte's registers dump tool.

* New boards :
- ASRock PV530, ECS P4M800PRO-M2 (V2.0) , FIC CE2A1, FIC PTM800Pro LF,
  Guillemot-Hercules ECafe EC900B, Hewlett Packard DX2020,
  Hewlett Packard t5550 Thin Client, Lenovo ThinkCenter E51 8714,
  MSI K8M890M2-V, MSI PM8M-V, MSI PM9M-V, OLPC XO 1.5,
  Semp Informática Notebook IS 1462, Sharp Mebius PC-CS30H, Siragon ML-6200,
  Twinhead K15V


openchrome 0.2.904 (09/10/2009)
-------------------------------
* New features :
- Basic VX855 support.
- VX800 support.
- CX700, VX800 integrated TMDS support.
- ARGB cursor support.
- Panel modesetting code rework.

* Bug fixes and enhancements :
- Add checking of the initialization of the XFree86 framebuffer manager.
- Save/restore ECK Clock Synthesizer.
- Fix bug with panel autodetection.
- Fixed problem with backlite (Ticket #308).
- Better VT1625 chipset support.
- Cursor support speedup.
- Fix bug with wrong panel size (Ticket #301).
- Remove build warnings and removed unused variables.
- Unified variable names with RandR.
- RandR initial support.
- Updated manpage.
- Add rotate upside-down and remove "Magic numbers".
- Disable TMDS by default for now, output detection is not working properly.
- Fix hardlock on resolution change.
- Remove loader symbol lists.
- XO-1.5 panel patch and dot clock fixup.
- Switch on LVDS pads only for active channel.
- Modify PLL generation and add VX855 support.
- Fix cursor on secondary.
- Fix a segfault on shutdown in ViaCleanupXVMC when there's no Xv.
- Fix null pointer dereference in viaExaCheckComposite.
- Clean up duplicate defines in via_regs.h.
- Remove VT8454B LCD flag.
- Make sure Chrome9 chipsets use software rasterizer for 3D.
- Cosmetic fix for ViaMMIODisable.
- Fix DFP pad mask.
- Fix possible use of uninitialized variable (ticket#292).
- Fix use of uninitialized variable.
- Fix 2D engine init.
- ViaPanelGetIndex: 1 bugfix and 1 cosmetic fix.
- Set P4M890 primary FIFO.
- Initialize CRTC before a mode switch. Fix bug #260.
- Small bug fixes for XAA and EXA.
- Minor bug fixes and tweaks.
- Remove support for old EXA.
- Fix 2d initialization for P4M900.
- Temporary workaround for freedesktop bug 21563.
- Adjust monitor values to handle preset LCD panel and TV modes.
- Fix placement of pVia->FrameBufferBase to MapFB.
- Clean up compile warnings.
- Fix crash worked around by XaaNoImageWriteRect.
- Restore panel backlight after VT switch (Ticket #29).
- XvMC Unichrome Pro allocation fixes.
- Add more needed modes to ViaPanelModes.
- XvMC symbol visibility.
- Properly link XvMC.
- Hide overlay when video is invisible (ticket #266).
- Allow FullHD with DDR400.
- Add missing 640x480 PAL mode for VT1625.
- Remove support for pre-xorg 7.1rc1 Xv ABI.

* New boards :
- Axper XP-M8VM800, Gigabyte M704 / RoverPC A700GQ, IBM AnyPlace Kiosk 3xx,
  ECS P4M890T-M v2.0, Foxconn P4M800P7MB-RS2H, Haier A60-440256080BD,
  Lenovo S12, Mitac 8624 (w/ P4M890), MSI K8M Neo-V (broken pci id), 
  MSI P4M900M3-L, Packard Bell Lima (ASUS MBP5VDZ-NVM), Samsung NC20,
  Twinhead H12V, Twinhead M6, VIA Epia M700. VIA Openbook, Sharp PC-AE30J.


openchrome 0.2.903 (19/08/2008)
-------------------------------
* Enhancements and bug fixes:
- Simplify memory bandwidth setting.
- Fix compilation without EXA. 
- Fix interpolation for CN400.
- Fix Xv on LCD for K8M890 and CX700.
- Disable XvDMA for P4M890 and K8M890, it is broken...
- Replace xf86strstr by the unwrapped version.
- Fix chipset revision detection in libpciaccess code path.
- Print driver version in the libpciaccess code path.

* New boards:
- Biostar P4M890-M7 TE, ECS CLE266, FIC CE261, Foxconn P4M9007MB-8RS2H,
  Hewlett Packard 2133 Mini-Note, KamLAB KINO-LUKE-533-R20, Mercury P4VM800M7,
  MSI K9MM-V, MSI VR321, PCChips (unknown model), Samsung Q1B.


openchrome 0.2.902 (08/04/2008)
-------------------------------
* Enhancements and bug fixes:
- libpciaccess support.
- Fix Xv on LCD for VM800/CN700/P4M800pro.
- Fix P4M900 fifo setting.
- Various code clean up.

* New boards:
- ASRock P4VM900-SATA2, Asustek M2V-MX SE, Asustek P5VD2-VM SE,
  Biostar P4M800 Pro-M7, Clevo M54xSR, Clevo M660SR, Medion Notebook MD96483,
  Mitac 8515, Mitac 8624, MSI Fuzzy CX700/CX700D, Packard Bell EasyNote XS
  (aka Everex Cloudbook CE1200V), VIA Epia SN.

* Notes:
- The "HWCursor" option has been removed. Hardware-accelerated cursor is on by
  default, so this option was useless. Use the "SWCursor" option if you want to
  disable HW cursor.
- AGPDMA has been disabled for K8M800 and VM800/CN700/P4M800pro in this release
  because it causes screen repaint and lockup issues. The problem has been
  tracked down to a bug in kernel drm. All kernel >= 2.6.22 are affected. This
  bug will be fixed in the upcoming 2.6.25-rc7. It is also fixed in current
  drm git tree. If you're using one of the affected kernels, you'll have to
  either keep AGPDMA disabled  or build the modules from the fixed drm git
  tree. This option brings extra performance for some operations. To use it,
  add 'Option "EnableAGPDMA"' in the Device section of the xorg configuration.


openchrome 0.2.901 (02/01/2008)
-------------------------------
* Enhancements :
- New pci ids : FIC CE260, Hasee F700C, MSI P4M900M / P4M900M2-F/L,
  PCChips V21G, Biostar P4M900M-M7 SE.
- Identify the driver as Openchrome, with CHROME as a shorthand.
- Report chipset too in case of an unknown card id.
- Improve P4M890 memory detection.
- Add VT1625 720x480Under, 720x480Fit and 720x480Over NTSC modes.
- Add VT1625 720x576 PAL mode.

* Fixes :
- Panel on CX700 needs VBE.
- K8M890 can use DDR667.
- Never enable IRQ on KM400, KM400A owner will still need to enable manually.
- Various code cleanups.

openchrome 0.2.900 (20/10/2007)
-------------------------------
- First openchrome official release.
