commit e4660be7c12de53cac57c0b7d4e792a071b4fcfc
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Mar 23 19:49:14 2012 -0700

    xf86-video-siliconmotion 1.7.6
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 63afc35a662bc2dc460f6ff6fab65a8462aa5e76
Author: Matt Turner <mattst88@gmail.com>
Date:   Thu Feb 9 17:14:25 2012 -0500

    Add &component=Driver/siliconmotion to Bugzilla link
    
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 12695ed1edd8c590252e76d530bcecaa0036e109
Author: Matt Turner <mattst88@gmail.com>
Date:   Thu Feb 9 16:21:59 2012 -0500

    Don't check for randrproto or renderproto
    
    The driver supports neither randr or render.
    
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 0e7e9cd639196cb42b0a79b2671f6bacc558035f
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Dec 19 17:26:34 2011 -0500

    Fix for new vgaHW ABI
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 208a703776d6dfbd01babbe2f220a7198dea4f5c
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Dec 19 17:25:39 2011 -0500

    Make failure to XAA non-fatal
    
    No shadowfb support in this driver yet.
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 7d9c1a49b87df15cdb78c529db554ea82c77033f
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu Nov 17 15:53:51 2011 -0500

    Check ABI major not encoded ABI
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 037b839c84ad6dcbe9aade420cf0d3bf06f23119
Author: Adam Jackson <ajax@redhat.com>
Date:   Wed Nov 16 15:03:25 2011 -0500

    Adapt to missing PIOOffset in videoabi 12
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 087226bf4e442b83985078f5df481eb91f4f65ed
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Feb 27 17:12:58 2011 +0100

    Bump to 1.7.5

commit b20cfa3d4f531b612a28ea88e5f5a6b1df183ea0
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Feb 27 15:49:12 2011 +0100

    Replace calls to xalloc/xcalloc/xfree with malloc/calloc/free
    
    Also don't check for NULL before calling free().
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

commit 312540ac447acaf80db7e341aa75f90f3e821438
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Feb 27 15:52:33 2011 +0100

    Fix compiler warning on 64bit
    
    src/smi_driver.c: In function ‘SMI_MapMem’:
    src/smi_driver.c:1498: warning: format ‘%08lX’ expects type ‘long unsigned int’, but argument 6 has type ‘CARD32’
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

commit 6008906f0e328180b17e7b604b97dfdfd4280508
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Feb 27 15:46:13 2011 +0100

    Fix build with xserver 1.10
    
    ScrnInfo->pixmapPrivate is gone
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

commit 903aac1db82e17954b74581019ebb946d5b43fe3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Oct 30 09:41:07 2010 -0700

    Sun's copyrights now belong to Oracle
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 71e61276ac62dfee15b275568084f8b8a55fc661
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Jul 21 16:49:04 2010 -0400

    config: add comments for main statements

commit 5cdb9326ab19da691f4a417def47fd0c869cefb7
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Jul 21 16:07:00 2010 -0400

    config: replace deprecated use of AC_OUTPUT with AC_CONFIG_FILES
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 987c55bc8f69551eea917fba94827ac31c04a49f
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Jul 21 14:37:41 2010 -0400

    config: replace deprecated AC_HELP_STRING with AS_HELP_STRING
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit f2569300c0f1b5714b4c4f09d07a16e9434bee00
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Jul 21 14:05:23 2010 -0400

    config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 6b1d1833b38e1d21760174493e4f8f0af4214574
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Jul 21 09:27:42 2010 -0400

    config: complete AC_INIT m4 quoting
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit dc67a8e8fe220697c3dcbca63c9ce0608a75888c
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Jul 20 20:24:42 2010 -0400

    config: remove unrequired AC_HEADER_STDC
    
    Autoconf says:
    "This macro is obsolescent, as current systems have conforming
    header files. New programs need not use this macro".
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 64995ca7f1287493e0616cc6469fdc2465900325
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Jul 20 19:41:31 2010 -0400

    config: remove AC_PROG_CC as it overrides AC_PROG_C_C99
    
    XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls
    AC_PROG_C_C99. This sets gcc with -std=gnu99.
    If AC_PROG_CC macro is called afterwards, it resets CC to gcc.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 9520e4e64fa758eef024feda09cb6435e41db705
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Jul 20 18:45:19 2010 -0400

    config: update AC_PREREQ statement to 2.60
    
    Unrelated to the previous patches, the new value simply reflects
    the reality that the minimum level for autoconf to configure
    all x.org modules is 2.60 dated June 2006.
    
    ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 53cddc508ea0026db04f04772c401010d62d6af3
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Jul 20 16:15:30 2010 -0400

    config: upgrade to util-macros 1.8 for additional man page support
    
    Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
    The value of MAN_SUBST is the same for all X.Org packages.

commit 8087bc23a7662f1426a8bd6febf0d5d3844e6107
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Wed Jun 16 14:59:37 2010 +0200

    xv: Make sure we have a CRTC before setting up the overlay.
    
    Fixes a segfault when the destination area is off screen.
    
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
    Tested-by: Krzysztof Halasa <khc@pm.waw.pl>

commit 2de1f7ae0b4441c1501568358acf2b870bb9dcc6
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Apr 27 15:11:35 2010 -0700

    xf86-video-siliconmotion 1.7.4
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2dd7cd7508b459638a640905f8793ea85f41af82
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Apr 27 15:11:02 2010 -0700

    Require xorg-macros 1.4 for XORG_INSTALL
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit b6d8a1adec9f780826090fb923c54f16fd7f9ce7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Apr 27 15:08:36 2010 -0700

    Use $(AM_V_GEN) & $(SED) to generate man pages
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7510112f30e33cfb9650ee939564f73ff9633bea
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Feb 11 10:08:07 2010 -0500

    config: move CWARNFLAGS from configure.ac to Makefile.am
    
    Compiler warning flags should be explicitly set in the makefile
    rather than being merged with other packages compiler flags.
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit 3f2aaabcdfe339908338dff42aabc1fef47e8694
Author: Cedric Cellier <rixed@happyleptic.org>
Date:   Mon Feb 8 11:44:28 2010 +0100

    Fix lack of precision in video resizing. #26443
    
    On some videos the last displayed line was wrong. This can
    be fixed using LynxEM+ VPR68. Code borrowed from siliconmotion's
    in-house driver.
    Also fix a typo.
    
    Signed-off-by: Cedric Cellier <rixed@happyleptic.org>
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>

commit 6bf8f8d7e13ccbb773765c4fcdcaf6d1d2993122
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Fri Jan 15 13:50:43 2010 -0800

    Update Sun license notices to current X.Org standard form
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

commit 6650644b51947c0c13e71b0fa01f795e997ab750
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Dec 15 22:01:02 2009 -0500

    configure.ac: remove unused sdkdir=$(pkg-config...) statement
    
    The sdkdir variable isn't use, so remove the statement.
    
    Acked-by: Dan Nicholson <dbn.lists@gmail.com>
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

commit e8e1d7d22aee2b6aa7caecf910b616a8e39ac061
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Mon Nov 23 09:25:05 2009 -0500

    Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
    
    Now that the INSTALL file is generated.
    Allows running make maintainer-clean.

commit 6acfadf1c541626ce445f5d71438c845f196e37f
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Oct 28 14:41:41 2009 -0400

    INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
    
    Automake 'foreign' option is specified in configure.ac.
    Remove from Makefile.am

commit 638e15adec65c00cf3be68249c8372befe6a12a1
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Wed Oct 28 14:09:09 2009 -0400

    INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
    
    Add missing INSTALL file. Use standard GNU file on building tarball
    README may have been updated
    Remove AUTHORS file as it is empty and no content available yet.
    Remove NEWS file as it is empty and no content available yet.

commit dd3ce955349f7545d9aa2aacbb018811d7b9faa3
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Mon Oct 26 12:54:22 2009 -0400

    Several driver modules do not have a ChangeLog target in Makefile.am #23814
    
    The git generated ChangeLog replaces the hand written one.
    Update configure.ac to xorg-macros level 1.3.
    Use XORG_DEFAULT_OPTIONS which replaces four XORG_* macros
    Update Makefile.am to add ChangeLog target if missing
    Remove ChangeLog from EXTRA_DIST or *CLEAN variables
    This is a pre-req for the INSTALL_CMD

commit b48c3f38767cdcd71eccfa6a0f4a15501a39f83a
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Thu Oct 22 12:34:18 2009 -0400

    .gitignore: use common defaults with custom section # 24239
    
    Using common defaults will reduce errors and maintenance.
    Only the very small or inexistent custom section need periodic maintenance
    when the structure of the component changes. Do not edit defaults.

commit 8a4f000f22bbec70193415372cfb478d6e2164d8
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Nov 2 16:03:00 2009 -0500

    Change clockRange to ClockRange, not ClockRanges
    
    ClockRanges is a silly type and I want rid of it, and the one extra
    field it provides that's not in ClockRange, we're not using.
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 52f40e7569bbcc9bce8f5d885b0de2868398e8df
Author: Dave Airlie <airlied@redhat.com>
Date:   Wed Aug 5 11:09:26 2009 +1000

    fix build after headers moved

commit 9d9bfe0349693b283e5dc1ced6fa882f10619253
Author: Dave Airlie <airlied@redhat.com>
Date:   Wed Aug 5 11:08:15 2009 +1000

    update for 1.7.3

commit 115b564f78b038baef2d14c037785850efb4e9ca
Author: Dave Airlie <airlied@redhat.com>
Date:   Tue Jul 28 15:22:41 2009 +1000

    siliconmotion: change to using ABI version check

commit 70f2463faa6d21517d97aa460871e1b5f3fa6505
Author: Dave Airlie <airlied@redhat.com>
Date:   Tue Jul 28 13:32:36 2009 +1000

    siliconmotion: update for resources/RAC API removal

commit 841df790b5b6700e9a1d6d41ee04b0b913329084
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Jul 16 11:55:05 2009 +1000

    Update to xextproto 7.1 support.
    
    DPMS header was split into dpms.h (client) and dpmsconst.h (server). Drivers
    need to include dpmsconst.h if xextproto 7.1 is available.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit d754e9a2954e56a26a94e58d87a450a825c250e6
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu Jul 2 11:43:52 2009 -0400

    siliconmotion 1.7.2

commit cd9e9f25294abb739c1772e3a9a7a9c0a921ee82
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Jun 23 13:11:02 2009 +0200

    Fix EXA rotation for SM502 at 32bpp (bug 22432).

commit 97498c048c897e5753e61d3b4ab231025974d67c
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu May 28 15:17:58 2009 -0400

    Remove useless loader symbol lists.

commit 536e5df957698251206326edc5a13e833f7c72b1
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Wed May 27 01:23:36 2009 +0200

    Program MCLK/MXCLK on startup for a secondary SM502.
    
    This should allow using a SM502 as secondary display
    device (bug 21810).

commit 6a370fa2b6b8fcbd556dd6f9bf92872e9bea23e8
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Mon May 11 22:31:30 2009 -0700

    Fill in COPYING file, add SubmittingPatches URL to README

commit 962e0c4f08180ac51994aef8d6d042108d5841c1
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Sun May 10 01:53:05 2009 +0200

    Widen the pixel clock readjust interval for SM712.
    
    Set it to 3MHz so that the pixel clock frequency is overridden
    when it's found to be 49MHz, which is reported to be unstable.

commit 3cc1b9d4bcf1b7a756ea4426c93392ff6d82e9a6
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue May 5 00:45:10 2009 +0200

    Fail gracefully when the specified virtual screen doesn't fit in RAM.

commit 32628d9884d577d7a672c172c12b7097be276700
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue May 5 00:44:17 2009 +0200

    Probe the amount of installed memory by trial and error on SM712.
    
    In some cases the BIOS hasn't filled in the "scratchpad registers"
    (SR71) with the right amount of memory installed (e.g. MIPS
    platform). There seems to be no other way to do it than to test it.
    
    This should fix bug 21528.

commit 00921b014fa0b5358c22a769cf2450cbd4bdc8a5
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Apr 28 22:24:03 2009 +0200

    Bump version to 1.7.1.

commit abf1ba79f2bfe61f24cfa43deb0400d7c5f95bd5
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Apr 21 21:37:45 2009 +0200

    Increase the maximum clock value to 200MHz on SM712.
    
    The default MCLK setting was higher than the clock limit, and it
    failed.

commit 41e5c49024d4e27a7be3da02017000a22b59016f
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Apr 21 21:36:10 2009 +0200

    Don't attempt monitor detection on SM712.
    
    The databook says nothing about it, and it doesn't work.

commit 6691678b5f04d52a1e08f9eaa6d511df9b7eeb4d
Author: Jamie Lentin <jm@lentin.co.uk>
Date:   Thu Mar 19 21:54:12 2009 +0000

    Stop clearing of "VESA compliance power down mode" bit
    
    Clearing this bit causes an OQO 01+ w/SMI720 to power down the LCD,
    leave it alone.
    
    Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>

commit 05480382c508bd27c1755405518ce9c339f0f80e
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date:   Fri Mar 13 21:19:16 2009 +0100

    Fix direct access to IO space on chipsets with no IOBase mapping.
    
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>

commit e62807140ede74e262ed70c846017dc3506b511e
Author: Niels de Vos <niels.devos@wincor-nixdorf.com>
Date:   Wed Feb 11 10:10:13 2009 +0100

    siliconmotion: Fix disabling of debugging if SMI501_CLI_DEBUG is set to 0
    
    Due to checking if SMI501_CLI_DEBUG is defined, some debugging will
    be enabled if SMI501_CLI_DEBUG is set to 0. A single #if should be
    used instead. Some debugging code already does this.
    
    Signed-off-by: Niels de Vos <niels.devos@wincor-nixdorf.com>
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>

commit 0b34c4a29fcf45ac24361b4691cca0fd99cc3a3f
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Wed Feb 4 03:49:08 2009 +0100

    Wait for vertical retrace before writing registers at SMILynx_CrtcDPMS_*

commit 1d46cca27b0d38d5355b5f93dd0ed0fe4f250d3f
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Feb 3 22:15:45 2009 +0100

    Drop the outdated configuration options documentation in README.

commit 64f722c3121a8f28cfc5b532ddec0ac83095ac95
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Feb 3 22:17:33 2009 +0100

    Minor corrections at the man page.

commit 94d9c659b71c84db46fa279d9d8736e1589e155c
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Tue Feb 3 22:18:14 2009 +0100

    Set dualhead to on by default on SM72x chipsets.

commit 4d98e9c6a6e357ed736cd312a957c1e0a7b1d36b
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Wed Feb 4 01:56:20 2009 +0100

    Dynamically switch virtual refresh mode.
    
    Probably this makes dualhead mode more useful because it makes
    possible displaying video on the LCD as long as the CRT output is
    disabled or cloned.

commit 1c57cfa814504c33fcad51115d77f2d166fb7903
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Fri Jan 30 21:00:17 2009 -0800

    Add README with pointers to mailing list, bugzilla & git repos

commit 2aee107d992cb58bfbb2f527cfa73ea9f6957998
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Fri Jan 9 16:33:43 2009 -0800

    Remove xorgconfig & xorgcfg from See Also list in man page

commit fdc2c50682b240e5966e4e5a7b45552ee2043bfc
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Mon Dec 29 18:41:05 2008 -0200

    Bump release to 1.7.0.
    
      This driver supports smi 50x chipsets, randr 1.2, exa, dual head,
    etc.
    
      Special thanks to Teddy Wang <teddy.wang AT siliconmotion.com.cn>
    for support and help in responding and/or triaging hardware related
    questions.

commit 97eb5da1040ca7882e60b86ffaf25b6c021a3df5
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Mon Dec 29 18:39:54 2008 -0200

    Use util-macros XORG_CHANGELOG and XORG_CWARNFLAGS.
    
      Also correct only compilation warning about possibly
    uninitialized variable.

commit deb2f845dd370ba819d02cb21b8a481827497af6
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Mon Dec 29 18:35:22 2008 -0200

    Simplification and redundancy removal in video code.
    
      FOURCC_YV12 and FOURCC_I420 handling also was buggy. First it was
    doing a noop by swapping offset2 and offset3 values twice, and second,
    swap is not required when using smi 501/502 CSC video.
      Changed SMI_DisplayVideo0501_CSC() to not set static values to
    registers in a possible loop, if there is clipping.

commit 46741589529809c17aa1e9719492a4b623de6ddf
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sat Dec 27 00:52:05 2008 +0100

    Some more quirks for the SM712.
    
    * Program the MCLK to 157MHz on startup.
    * Adjust the requested pixel clock if it's near one of the known
      stable frequencies.
    * Prefer the clock alternative with post scalar turned on when the
      denominator is even.

commit 439adf4455c651926040eeeec52a092f14f3196b
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Mon Dec 22 17:28:35 2008 +0100

    Add support for clone mode on Lynx chipsets.

commit 2b3fa385a6da4be5ad6719dd115834b96d1ea3e3
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sun Dec 21 19:37:14 2008 +0100

    Add a CRTC/Output implementation using BIOS for modesetting.
    
    After the RandR1.2 implementation the "UseBIOS" option wasn't actually
    programming the hardware through VESA BIOS, this brings back that
    functionality.

commit 75b1c309f1418d70e8cf112744ff95f372d4ef75
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sun Dec 21 16:58:29 2008 +0100

    Fix SMI_CrtcShadowAllocate.

commit 068de9c0a302aba21e4d6a27eb6d330375ff2d2f
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sun Dec 21 16:02:57 2008 +0100

    Allocate crtc->funcs and output->funcs in the heap.

commit 373440667636d4e3214028710e33ac89d8f18ff1
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sun Dec 21 13:51:01 2008 +0100

    Cleanup the Lynx register saving/restoring code.
    
    Save some registers not previously tracked, and use pSmi->mode instead
    of continuously reading the hardware state.

commit 67a1e4b090d6647b6c45f1534c67d9ea8a223d44
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sat Dec 20 15:41:13 2008 +0100

    Add some quirks for SM712 modesetting.

commit 7f252345c0c6b260c5b37aff98a22679eb5c6c82
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Dec 19 21:15:01 2008 -0200

    Enable the SMI 501/502 command list interpreter in a "debug" build.
    
      To enable it, set SMI501_CLI_DEBUG to 1 in smi.h, and use
    Option "AcellMethod "EXA"
    in the Device section of /etc/X11/xorg.conf
    This code is enabled mainly for debug purposes. To make if have an
    actual performance gain (like when using a sm50x with a "low profile"
    "main" processor") it should be required to actually do busy loops
    in kernel mode (and hope the costs of context switch will pay it).
    In kernel mode it is possible to wait for an interrupt being triggered
    when the command list is processed, or when the 2d engine is idle.
    
      This commit should be functional, but, mainly due to debug messages,
    should be significantly slower then a build with MI501_CLI_DEBUG
    defined to 0.

commit 6a91bcc111902c45cc75c865893848b7c6c0a0b1
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Thu Dec 18 20:47:24 2008 -0200

    Add definitions for the SMI 501/502 "command list interpreter".
    
      This also changes some bit operations to use a "bitfield" equivalent
    one, with named fields, that should make it easier to understand what
    is being tested.
    
      The enum smi_cli_cmd_code in smi_501.h is code that was added to a
    experimental smi_drm.h, but the hardware only supports basic 2d accel,
    and to compensate for the extra overhead for maintaining a command
    list (assuming it worked correctly) it would be required to have a
    special handling, like calling an ioctl to do the "busy loop" in the
    kernel (that is, should wait for an irq or a timeout).
    
      The problem is that even if waiting for a idle engine before crafting
    a command, and waiting again after submitting the command, there would
    be corruption on screen after some time. So, the "busy loop" in the
    kernel would only be useful if still using direct writes to mmio
    registers.

commit 5a07709ae41600bc02205753c64d764f11838240
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Tue Dec 16 02:39:49 2008 +0100

    Fix crashes when switching VTs with EXA enabled.
    
    Call ModifyPixmapHeader on SMI_EnterVT to update the screen pixmap
    address tracked by EXA.
    
    Set memoryBase in the ExaDriverRec to NULL when switching out: some
    pixmap could get allocated near the former aperture address and it
    could be erroneously considered as being in offscreen memory.

commit 47bcfb505886d16ff864f26a9cfa5f43b5da710e
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sat Dec 13 19:13:50 2008 +0100

    Enable linear memory mode on SMI_MapMmio.
    
    Set UseBIOS to off by default for SM720. Some improvements on the
    debugging output.

commit 6f972c9022fc3a315b60246a69399807443d2ca0
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Thu Dec 11 16:21:17 2008 +0100

    Fall back to UseBIOS off when VBEInit fails.

commit 1fc340dcf0abd7fa0837fef2c711aaec4fa8bcb8
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Thu Dec 11 16:18:50 2008 +0100

    Fix XAA SolidFill with 32 bpp framebuffer.

commit dfc4510e8f4adeed520be47621ad429bc2d18f7e
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Thu Dec 4 15:35:22 2008 +0100

    Some corrections on the Lynx modesetting code.
    
    This fixes 1280x1024 modes on the VGA output with dual head on.
    Also, solve a build problem when using -DSMI_DEBUG, as pointed by
    Richard Schwarting.

commit 6e1d29d19b205eac85b2f83de126ba88501e9b74
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Tue Dec 2 23:43:26 2008 +0100

    Disable screen centering on mode initialization.

commit 695a6066cfe7ad0e568edc596b8704bb9bf8754f
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Sat Dec 13 04:20:20 2008 -0200

    Janitor/maintenance patches.
    
    o Define HAVE_XMODES in config.h.
    o Correct the LEAVE() macro declaration when SMI_DEBUG is defined.
    o Remove prototype for SMI_DGAInit() if HAVE_XMODES is not defined.
    o Properly scale value read from sm501 CURRENT_CLOCK register, to
      print an appropriate message on startup.

commit 191cbd3f8419cc5b428f262607d7a8594e574f67
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Dec 12 15:50:53 2008 -0200

    Unless there is a xorg.conf option, don't modify mclck neither mxclck.
    
      The option set_mclck was renamed to just MCLK, and a new MXCLCK option
    was added for smi501/502 chips.
      Note that previously, on MSOC chips, the set_mclck option actually
    changed mxclck, what is now done by the MXCLK option.
      The manpage was also update to reflect the options usage.
      A new SMI501_FindMemClock() function was added, as a possible
    placeholder for choosing alternate clocks when programming MMIO 0x68.
    But it should be noted that the smi 501 databook says:
    Miscellaneous Timing
    	Read/Write MMIO_base + 0x000068
    	Power-on Default 0x00000000
    	[...]
    	5:4 Divider Output Frequency Selection for Second PLL.
    		00: 336 MHz.
    		01: 288 MHz.
    		10: 240 MHz.
    		11: 192 MHz.
    while the 502 databook says:
    	Miscellaneous Timing
    	Read/Write MMIO_base + 0x000068
    	Power-on Default 0b0000.00xx.0000.1001.0000.1001.0000.0000
    	[...]
    	5:4 Reserved These bits are reserved.
    but still tells to refer to those bits.

commit a2352ff23787f37530dff68e03028dd78925e4b4
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 28 20:23:11 2008 -0200

    Properly restore console on the smi 501/502.
    
      The current kernel framebuffer module expects accelerations registers
    in the default boot state, otherwise, it will display some corruption,
    or not correctly clear the screen, among other side effects.
      Now it should be restoring everything the kernel framebuffer relies
    on not being modified.

commit 5a65559e12452a47f9848c47cfa6e30cfb871f0b
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 28 19:49:20 2008 -0200

    DGA is dependent on HAVE_XMODES.

commit 06c78cee718a86b1521c1fc1075d08bb9ad257f1
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 25 19:57:05 2008 -0200

    Remove smi_dga.c and polylines code from smi_xaa.c.
    
      DGA was also not being properly test to not enable the pSmi fields,
    but since the dga implementation is very basic, it is better to just
    remove it (if compiling the sources on pre 1.4 X Server, DGA will be
    disabled).
    
      The polylines code in xmi_xaa.c was already if 0'ed for some time,
    but it may be reinstantiated to accelerate (back) xaa rotated modes.
    Currently only randr+exa accelerates rotated modes.

commit 9570cfdc132b0acb1d2b70edc6a3a5a812ef9691
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 25 15:07:39 2008 -0200

    Ensure the engine is idle before switching to a virtual terminal.
    
      At least in the smi501/502, it may even completely lock in some special
    cases (like when there is a browser playing some youtube video).
      The code in SMI_CloseScreen() was almost identical to SMI_LeaveVT(),
    so it now just call SMI_Leave() if required.

commit 26ce0b163d9cf44ec1bc1d1bd460887aa5b405a7
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Mon Nov 24 15:15:43 2008 -0200

    Use a single debug macro for leaving functions.
    
      The LEAVE() macro, when debug is disabled, now is defined as:
    <hash>define LEAVE(...)		return __VA_ARGS__
    This avoids the requirement of a return statement after the LEAVE()
    macro call, what can be confusing.

commit 2057d7ae05ef269f75a4d53fe5c4914a10856cb1
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Wed Nov 19 16:22:29 2008 -0200

    Declare DGA fields only when not using xf86DiDGAInit.

commit c2e318eaec3ac281457acdca4ea10fa368f646d3
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Mon Nov 17 20:08:49 2008 -0200

    Enable XAA and randr rotated modes.
    
      Use the same logic for offscreen memory management as used in
    smi_video.c. This also makes the functions SMI_AllocateMemory and
    SMI_FreeMemory no longer static in smi_video.c.

commit ed6aba73259a1412e23a954d6a8dba439ad98a8a
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 22:37:56 2008 -0200

    Correct EXA+Randr+rotated mode.
    
      The smi 501/502 cannot rotate-blt more than 32 bytes at a time.
    Patch based on smi's sample smi_shadow.c.
      XAA + randr + rotated mode currently not supported.

commit 85d118ee288fe7aa32db003bfa322ddf06944bf6
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 22:04:17 2008 -0200

    Don't explicitly call the cursor routines.
    
      On the MSOC, the hardware cursor was remaining on screen, when using
    EXA and a randr rotated mode.

commit cd10af22240b9df7c264b15c483d8cc4505ee359
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 20:36:09 2008 -0200

    Only compile smi_dga.c when xf86DiDGAInit is not available.
    
      Besides reducing driver size, this should make DGA+EXA accelerated.

commit 41ef793b0ed6014ed49bef011259f977833aef5d
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 19:24:45 2008 -0200

    Correct regressions in CSCVideo
    
      Commit 0870d46718fe4e01953efd63cec46c54140b20f9 broke the clipping
    code. That has been corrected in this patch. Anyway, the hardware color
    space conversion should not be hidden down in the driver code, instead
    it should be usable by external programs as well, instead of having
    some applications doing it by software.

commit be226bfaad76e7b48e006fe55ebae09b044ba4b7
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 16:56:46 2008 -0200

    MSOC: Hide cursor on mode setup when using software cursor.
    
      The kernel framebuffer module uses the hw cursor for the console cursor,
    so the driver must ensure it is hidden when setting a video mode.

commit 5b8583fc2e5626ed98877858158d9687d7c94469
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Fri Nov 14 15:47:52 2008 -0200

    Be more liberal about mode width validation.
    
      The code was inherited from first import of latest smi sources, but
    the driver actually programs a mode, so there is no need to check if
    there will be a table entry with register contents matching the requested
    mode.

commit ffb4be763ced82158a3a1d2e06fb0e81815e057b
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Thu Nov 13 20:01:18 2008 -0200

    Don't restore alpha registers, as they are not being modified.
    
      Restoring the registers "without need" caused some instability, with
    random locks.

commit 6b6da04d566ec5b9d723c9f28791c604f76526dd
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Thu Nov 13 19:44:14 2008 -0200

    Changed to use panel plane tl and tr to center modes smaller then panel size.
    
      The code is under "<hash>ifdef USE_PANEL_CENTER", as it is buggy, and
    regardless of value set to right and bottom, it will crop from 0 to
    mode-width/mode-height, and then display a lot of screen artifacts, due
    to improper programming. Either way, the CRT in clone mode will display
    correctly.

commit d2709b1af22a06b24606ec8c01f39f1ca27ca8d3
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Thu Nov 13 18:00:46 2008 -0200

    Enable gamma correction on the MSOC.

commit 0870d46718fe4e01953efd63cec46c54140b20f9
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 11 19:14:36 2008 -0200

    Correct a problem in CSC video on the smi 501/502.
    
      This significantly simplify the function SMI_DisplayVideo0501_CSC(),
    but the real cause of the problem that this patch corrects is that
    whenever MMIO 0x1000fc bit 24 (Vertical Linear Filter Control)  is
    set, the last line of the rendered video will display only noisy,
    regardless of video being rendered 1x1, or scaled up or down.

commit 09644ad3da4cf4c2576532137fdc81156e9c06e6
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 11 15:34:27 2008 -0200

    Disable detection of crt for the smi 501/502.
    
      As described by siliconmotion, it does not work on the smi 502.
    Does it work on older revisions? Keeping <hash>ifdef'ed out for now
    as it hopefully will be corrected in a newer hardware revision.

commit caac648932df69419b8f86c5793a6b33f5997099
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 11 15:06:15 2008 -0200

    Implement an argb cursor using the alpha layer.
    
      The code is <hash>ifdef'ed out by <hash>if SMI_CURSOR_ALPHA_PLANE
    because the smi 502 hardware is buggy, but it appears to have worked
    for some older hardware revisions (by looking at code available at
    ftp.siliconmotion.com.tw).
      Keeping it at least for now, as it serves as a simple way to reproduce
    the problems described in smi.h.

commit 61dd360a30c8e530185bc71b134c287ab1cdde2c
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 11 14:47:58 2008 -0200

    Add support for the reading/writing the alpha layer registers.

commit d018ea2272cc1938cc0236eeb210692c1d1fd1df
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Tue Nov 11 14:35:36 2008 -0200

    Correct wrong offset value for secondary hardware cursor.
    
      Hardware cursor is still disabled in dual head mode due to some problems,
    usually when having both panel and crt mapped to the same address, what
    appears to confuse the "modes" code.

commit f97c57873cd7622c373a394548ed435c1975abbc
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Sat Nov 8 21:40:49 2008 +0100

    Remove unused fifo_* options.

commit 418b28028e69d14e74bf673be56123e99103e5bf
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date:   Sat Nov 8 16:04:58 2008 -0200

    Remove the ZoomOnLCD option and update manpage for PCIRetry.
    
      ZoomOnLCD controlled if Ctrl/Alt/+ or Ctrl/Alt/- could be used to
    reprogram the mode on the panel. The option was not used, and now, if
    different resolutions could be used, it should be advertised by randr.
    
      PCIBurst and PCIRetry options are now enabled by default.
    
      The fifo_xxx options need a review, as they appear to be associated
    with the older WaitQueue macro, that did ignore its argument. But these
    options are not used, and may be removed or reimplemented at some time.

commit bbc38b2a14d748bb9d9e153fcdcb259e5b10bdc8
Author: Francisco Jerez <currojerez@gmail.com>
Date:   Fri Nov 7 16:57:50 2008 +0100

    Update the man page
    
    Reflect changes in the configuration options, additional supported
    chipsets and RandR1.2 interface.

commit 7f8b7535a9a905c1d6c1d89cd1dd4dd506025429
Author: Nathael Pajani <nathael.pajani@ed3l.fr>
Date:   Thu Mar 20 07:25:00 2008 -0800

    Bit twelve on CPR00 bitfield is not bit eleven...

