ChangeLog revision 2ec8c4b4
12ec8c4b4Smrgcommit cd9e9f25294abb739c1772e3a9a7a9c0a921ee82
22ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
32ec8c4b4SmrgDate:   Tue Jun 23 13:11:02 2009 +0200
42ec8c4b4Smrg
52ec8c4b4Smrg    Fix EXA rotation for SM502 at 32bpp (bug 22432).
62ec8c4b4Smrg
72ec8c4b4Smrgcommit 97498c048c897e5753e61d3b4ab231025974d67c
82ec8c4b4SmrgAuthor: Adam Jackson <ajax@redhat.com>
92ec8c4b4SmrgDate:   Thu May 28 15:17:58 2009 -0400
102ec8c4b4Smrg
112ec8c4b4Smrg    Remove useless loader symbol lists.
122ec8c4b4Smrg
132ec8c4b4Smrgcommit 536e5df957698251206326edc5a13e833f7c72b1
142ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
152ec8c4b4SmrgDate:   Wed May 27 01:23:36 2009 +0200
162ec8c4b4Smrg
172ec8c4b4Smrg    Program MCLK/MXCLK on startup for a secondary SM502.
182ec8c4b4Smrg    
192ec8c4b4Smrg    This should allow using a SM502 as secondary display
202ec8c4b4Smrg    device (bug 21810).
212ec8c4b4Smrg
222ec8c4b4Smrgcommit 6a370fa2b6b8fcbd556dd6f9bf92872e9bea23e8
232ec8c4b4SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com>
242ec8c4b4SmrgDate:   Mon May 11 22:31:30 2009 -0700
252ec8c4b4Smrg
262ec8c4b4Smrg    Fill in COPYING file, add SubmittingPatches URL to README
272ec8c4b4Smrg
282ec8c4b4Smrgcommit 962e0c4f08180ac51994aef8d6d042108d5841c1
292ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
302ec8c4b4SmrgDate:   Sun May 10 01:53:05 2009 +0200
312ec8c4b4Smrg
322ec8c4b4Smrg    Widen the pixel clock readjust interval for SM712.
332ec8c4b4Smrg    
342ec8c4b4Smrg    Set it to 3MHz so that the pixel clock frequency is overridden
352ec8c4b4Smrg    when it's found to be 49MHz, which is reported to be unstable.
362ec8c4b4Smrg
372ec8c4b4Smrgcommit 3cc1b9d4bcf1b7a756ea4426c93392ff6d82e9a6
382ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
392ec8c4b4SmrgDate:   Tue May 5 00:45:10 2009 +0200
402ec8c4b4Smrg
412ec8c4b4Smrg    Fail gracefully when the specified virtual screen doesn't fit in RAM.
422ec8c4b4Smrg
432ec8c4b4Smrgcommit 32628d9884d577d7a672c172c12b7097be276700
442ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
452ec8c4b4SmrgDate:   Tue May 5 00:44:17 2009 +0200
462ec8c4b4Smrg
472ec8c4b4Smrg    Probe the amount of installed memory by trial and error on SM712.
482ec8c4b4Smrg    
492ec8c4b4Smrg    In some cases the BIOS hasn't filled in the "scratchpad registers"
502ec8c4b4Smrg    (SR71) with the right amount of memory installed (e.g. MIPS
512ec8c4b4Smrg    platform). There seems to be no other way to do it than to test it.
522ec8c4b4Smrg    
532ec8c4b4Smrg    This should fix bug 21528.
542ec8c4b4Smrg
552ec8c4b4Smrgcommit 00921b014fa0b5358c22a769cf2450cbd4bdc8a5
562ec8c4b4SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
572ec8c4b4SmrgDate:   Tue Apr 28 22:24:03 2009 +0200
582ec8c4b4Smrg
592ec8c4b4Smrg    Bump version to 1.7.1.
602ec8c4b4Smrg
617104f784Smrgcommit abf1ba79f2bfe61f24cfa43deb0400d7c5f95bd5
627104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
637104f784SmrgDate:   Tue Apr 21 21:37:45 2009 +0200
6409885543Smrg
657104f784Smrg    Increase the maximum clock value to 200MHz on SM712.
667104f784Smrg    
677104f784Smrg    The default MCLK setting was higher than the clock limit, and it
687104f784Smrg    failed.
6909885543Smrg
707104f784Smrgcommit 41e5c49024d4e27a7be3da02017000a22b59016f
717104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
727104f784SmrgDate:   Tue Apr 21 21:36:10 2009 +0200
7309885543Smrg
747104f784Smrg    Don't attempt monitor detection on SM712.
757104f784Smrg    
767104f784Smrg    The databook says nothing about it, and it doesn't work.
7709885543Smrg
787104f784Smrgcommit 6691678b5f04d52a1e08f9eaa6d511df9b7eeb4d
797104f784SmrgAuthor: Jamie Lentin <jm@lentin.co.uk>
807104f784SmrgDate:   Thu Mar 19 21:54:12 2009 +0000
8109885543Smrg
827104f784Smrg    Stop clearing of "VESA compliance power down mode" bit
837104f784Smrg    
847104f784Smrg    Clearing this bit causes an OQO 01+ w/SMI720 to power down the LCD,
857104f784Smrg    leave it alone.
867104f784Smrg    
877104f784Smrg    Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
887104f784Smrg    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
8909885543Smrg
907104f784Smrgcommit 05480382c508bd27c1755405518ce9c339f0f80e
917104f784SmrgAuthor: Matthieu Herrb <matthieu.herrb@laas.fr>
927104f784SmrgDate:   Fri Mar 13 21:19:16 2009 +0100
9309885543Smrg
947104f784Smrg    Fix direct access to IO space on chipsets with no IOBase mapping.
957104f784Smrg    
967104f784Smrg    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
9709885543Smrg
987104f784Smrgcommit e62807140ede74e262ed70c846017dc3506b511e
997104f784SmrgAuthor: Niels de Vos <niels.devos@wincor-nixdorf.com>
1007104f784SmrgDate:   Wed Feb 11 10:10:13 2009 +0100
10109885543Smrg
1027104f784Smrg    siliconmotion: Fix disabling of debugging if SMI501_CLI_DEBUG is set to 0
1037104f784Smrg    
1047104f784Smrg    Due to checking if SMI501_CLI_DEBUG is defined, some debugging will
1057104f784Smrg    be enabled if SMI501_CLI_DEBUG is set to 0. A single #if should be
1067104f784Smrg    used instead. Some debugging code already does this.
1077104f784Smrg    
1087104f784Smrg    Signed-off-by: Niels de Vos <niels.devos@wincor-nixdorf.com>
1097104f784Smrg    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
11009885543Smrg
1117104f784Smrgcommit 0b34c4a29fcf45ac24361b4691cca0fd99cc3a3f
1127104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
1137104f784SmrgDate:   Wed Feb 4 03:49:08 2009 +0100
11409885543Smrg
1157104f784Smrg    Wait for vertical retrace before writing registers at SMILynx_CrtcDPMS_*
11609885543Smrg
1177104f784Smrgcommit 1d46cca27b0d38d5355b5f93dd0ed0fe4f250d3f
1187104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
1197104f784SmrgDate:   Tue Feb 3 22:15:45 2009 +0100
12009885543Smrg
1217104f784Smrg    Drop the outdated configuration options documentation in README.
12209885543Smrg
1237104f784Smrgcommit 64f722c3121a8f28cfc5b532ddec0ac83095ac95
1247104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
1257104f784SmrgDate:   Tue Feb 3 22:17:33 2009 +0100
12609885543Smrg
1277104f784Smrg    Minor corrections at the man page.
12809885543Smrg
1297104f784Smrgcommit 94d9c659b71c84db46fa279d9d8736e1589e155c
1307104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
1317104f784SmrgDate:   Tue Feb 3 22:18:14 2009 +0100
13209885543Smrg
1337104f784Smrg    Set dualhead to on by default on SM72x chipsets.
13409885543Smrg
1357104f784Smrgcommit 4d98e9c6a6e357ed736cd312a957c1e0a7b1d36b
1367104f784SmrgAuthor: Francisco Jerez <currojerez@riseup.net>
1377104f784SmrgDate:   Wed Feb 4 01:56:20 2009 +0100
13809885543Smrg
1397104f784Smrg    Dynamically switch virtual refresh mode.
1407104f784Smrg    
1417104f784Smrg    Probably this makes dualhead mode more useful because it makes
1427104f784Smrg    possible displaying video on the LCD as long as the CRT output is
1437104f784Smrg    disabled or cloned.
14409885543Smrg
1457104f784Smrgcommit 1c57cfa814504c33fcad51115d77f2d166fb7903
1467104f784SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com>
1477104f784SmrgDate:   Fri Jan 30 21:00:17 2009 -0800
14809885543Smrg
1497104f784Smrg    Add README with pointers to mailing list, bugzilla & git repos
15009885543Smrg
1517104f784Smrgcommit 2aee107d992cb58bfbb2f527cfa73ea9f6957998
1527104f784SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com>
1537104f784SmrgDate:   Fri Jan 9 16:33:43 2009 -0800
15409885543Smrg
1557104f784Smrg    Remove xorgconfig & xorgcfg from See Also list in man page
1567104f784Smrg
1577104f784Smrgcommit fdc2c50682b240e5966e4e5a7b45552ee2043bfc
1587104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1597104f784SmrgDate:   Mon Dec 29 18:41:05 2008 -0200
1607104f784Smrg
1617104f784Smrg    Bump release to 1.7.0.
1627104f784Smrg    
1637104f784Smrg      This driver supports smi 50x chipsets, randr 1.2, exa, dual head,
1647104f784Smrg    etc.
1657104f784Smrg    
1667104f784Smrg      Special thanks to Teddy Wang <teddy.wang AT siliconmotion.com.cn>
1677104f784Smrg    for support and help in responding and/or triaging hardware related
1687104f784Smrg    questions.
1697104f784Smrg
1707104f784Smrgcommit 97eb5da1040ca7882e60b86ffaf25b6c021a3df5
1717104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1727104f784SmrgDate:   Mon Dec 29 18:39:54 2008 -0200
1737104f784Smrg
1747104f784Smrg    Use util-macros XORG_CHANGELOG and XORG_CWARNFLAGS.
1757104f784Smrg    
1767104f784Smrg      Also correct only compilation warning about possibly
1777104f784Smrg    uninitialized variable.
1787104f784Smrg
1797104f784Smrgcommit deb2f845dd370ba819d02cb21b8a481827497af6
1807104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1817104f784SmrgDate:   Mon Dec 29 18:35:22 2008 -0200
1827104f784Smrg
1837104f784Smrg    Simplification and redundancy removal in video code.
1847104f784Smrg    
1857104f784Smrg      FOURCC_YV12 and FOURCC_I420 handling also was buggy. First it was
1867104f784Smrg    doing a noop by swapping offset2 and offset3 values twice, and second,
1877104f784Smrg    swap is not required when using smi 501/502 CSC video.
1887104f784Smrg      Changed SMI_DisplayVideo0501_CSC() to not set static values to
1897104f784Smrg    registers in a possible loop, if there is clipping.
1907104f784Smrg
1917104f784Smrgcommit 46741589529809c17aa1e9719492a4b623de6ddf
1927104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
1937104f784SmrgDate:   Sat Dec 27 00:52:05 2008 +0100
1947104f784Smrg
1957104f784Smrg    Some more quirks for the SM712.
1967104f784Smrg    
1977104f784Smrg    * Program the MCLK to 157MHz on startup.
1987104f784Smrg    * Adjust the requested pixel clock if it's near one of the known
1997104f784Smrg      stable frequencies.
2007104f784Smrg    * Prefer the clock alternative with post scalar turned on when the
2017104f784Smrg      denominator is even.
2027104f784Smrg
2037104f784Smrgcommit 439adf4455c651926040eeeec52a092f14f3196b
2047104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2057104f784SmrgDate:   Mon Dec 22 17:28:35 2008 +0100
2067104f784Smrg
2077104f784Smrg    Add support for clone mode on Lynx chipsets.
2087104f784Smrg
2097104f784Smrgcommit 2b3fa385a6da4be5ad6719dd115834b96d1ea3e3
2107104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2117104f784SmrgDate:   Sun Dec 21 19:37:14 2008 +0100
2127104f784Smrg
2137104f784Smrg    Add a CRTC/Output implementation using BIOS for modesetting.
2147104f784Smrg    
2157104f784Smrg    After the RandR1.2 implementation the "UseBIOS" option wasn't actually
2167104f784Smrg    programming the hardware through VESA BIOS, this brings back that
2177104f784Smrg    functionality.
2187104f784Smrg
2197104f784Smrgcommit 75b1c309f1418d70e8cf112744ff95f372d4ef75
2207104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2217104f784SmrgDate:   Sun Dec 21 16:58:29 2008 +0100
2227104f784Smrg
2237104f784Smrg    Fix SMI_CrtcShadowAllocate.
2247104f784Smrg
2257104f784Smrgcommit 068de9c0a302aba21e4d6a27eb6d330375ff2d2f
2267104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2277104f784SmrgDate:   Sun Dec 21 16:02:57 2008 +0100
2287104f784Smrg
2297104f784Smrg    Allocate crtc->funcs and output->funcs in the heap.
2307104f784Smrg
2317104f784Smrgcommit 373440667636d4e3214028710e33ac89d8f18ff1
2327104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2337104f784SmrgDate:   Sun Dec 21 13:51:01 2008 +0100
2347104f784Smrg
2357104f784Smrg    Cleanup the Lynx register saving/restoring code.
2367104f784Smrg    
2377104f784Smrg    Save some registers not previously tracked, and use pSmi->mode instead
2387104f784Smrg    of continuously reading the hardware state.
2397104f784Smrg
2407104f784Smrgcommit 67a1e4b090d6647b6c45f1534c67d9ea8a223d44
2417104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2427104f784SmrgDate:   Sat Dec 20 15:41:13 2008 +0100
2437104f784Smrg
2447104f784Smrg    Add some quirks for SM712 modesetting.
2457104f784Smrg
2467104f784Smrgcommit 7f252345c0c6b260c5b37aff98a22679eb5c6c82
2477104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
2487104f784SmrgDate:   Fri Dec 19 21:15:01 2008 -0200
2497104f784Smrg
2507104f784Smrg    Enable the SMI 501/502 command list interpreter in a "debug" build.
2517104f784Smrg    
2527104f784Smrg      To enable it, set SMI501_CLI_DEBUG to 1 in smi.h, and use
2537104f784Smrg    Option "AcellMethod "EXA"
2547104f784Smrg    in the Device section of /etc/X11/xorg.conf
2557104f784Smrg    This code is enabled mainly for debug purposes. To make if have an
2567104f784Smrg    actual performance gain (like when using a sm50x with a "low profile"
2577104f784Smrg    "main" processor") it should be required to actually do busy loops
2587104f784Smrg    in kernel mode (and hope the costs of context switch will pay it).
2597104f784Smrg    In kernel mode it is possible to wait for an interrupt being triggered
2607104f784Smrg    when the command list is processed, or when the 2d engine is idle.
2617104f784Smrg    
2627104f784Smrg      This commit should be functional, but, mainly due to debug messages,
2637104f784Smrg    should be significantly slower then a build with MI501_CLI_DEBUG
2647104f784Smrg    defined to 0.
2657104f784Smrg
2667104f784Smrgcommit 6a91bcc111902c45cc75c865893848b7c6c0a0b1
2677104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
2687104f784SmrgDate:   Thu Dec 18 20:47:24 2008 -0200
2697104f784Smrg
2707104f784Smrg    Add definitions for the SMI 501/502 "command list interpreter".
2717104f784Smrg    
2727104f784Smrg      This also changes some bit operations to use a "bitfield" equivalent
2737104f784Smrg    one, with named fields, that should make it easier to understand what
2747104f784Smrg    is being tested.
2757104f784Smrg    
2767104f784Smrg      The enum smi_cli_cmd_code in smi_501.h is code that was added to a
2777104f784Smrg    experimental smi_drm.h, but the hardware only supports basic 2d accel,
2787104f784Smrg    and to compensate for the extra overhead for maintaining a command
2797104f784Smrg    list (assuming it worked correctly) it would be required to have a
2807104f784Smrg    special handling, like calling an ioctl to do the "busy loop" in the
2817104f784Smrg    kernel (that is, should wait for an irq or a timeout).
2827104f784Smrg    
2837104f784Smrg      The problem is that even if waiting for a idle engine before crafting
2847104f784Smrg    a command, and waiting again after submitting the command, there would
2857104f784Smrg    be corruption on screen after some time. So, the "busy loop" in the
2867104f784Smrg    kernel would only be useful if still using direct writes to mmio
2877104f784Smrg    registers.
2887104f784Smrg
2897104f784Smrgcommit 5a07709ae41600bc02205753c64d764f11838240
2907104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
2917104f784SmrgDate:   Tue Dec 16 02:39:49 2008 +0100
2927104f784Smrg
2937104f784Smrg    Fix crashes when switching VTs with EXA enabled.
2947104f784Smrg    
2957104f784Smrg    Call ModifyPixmapHeader on SMI_EnterVT to update the screen pixmap
2967104f784Smrg    address tracked by EXA.
2977104f784Smrg    
2987104f784Smrg    Set memoryBase in the ExaDriverRec to NULL when switching out: some
2997104f784Smrg    pixmap could get allocated near the former aperture address and it
3007104f784Smrg    could be erroneously considered as being in offscreen memory.
3017104f784Smrg
3027104f784Smrgcommit 47bcfb505886d16ff864f26a9cfa5f43b5da710e
3037104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
3047104f784SmrgDate:   Sat Dec 13 19:13:50 2008 +0100
3057104f784Smrg
3067104f784Smrg    Enable linear memory mode on SMI_MapMmio.
3077104f784Smrg    
3087104f784Smrg    Set UseBIOS to off by default for SM720. Some improvements on the
3097104f784Smrg    debugging output.
3107104f784Smrg
3117104f784Smrgcommit 6f972c9022fc3a315b60246a69399807443d2ca0
3127104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
3137104f784SmrgDate:   Thu Dec 11 16:21:17 2008 +0100
3147104f784Smrg
3157104f784Smrg    Fall back to UseBIOS off when VBEInit fails.
3167104f784Smrg
3177104f784Smrgcommit 1fc340dcf0abd7fa0837fef2c711aaec4fa8bcb8
3187104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
3197104f784SmrgDate:   Thu Dec 11 16:18:50 2008 +0100
3207104f784Smrg
3217104f784Smrg    Fix XAA SolidFill with 32 bpp framebuffer.
3227104f784Smrg
3237104f784Smrgcommit dfc4510e8f4adeed520be47621ad429bc2d18f7e
3247104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
3257104f784SmrgDate:   Thu Dec 4 15:35:22 2008 +0100
3267104f784Smrg
3277104f784Smrg    Some corrections on the Lynx modesetting code.
3287104f784Smrg    
3297104f784Smrg    This fixes 1280x1024 modes on the VGA output with dual head on.
3307104f784Smrg    Also, solve a build problem when using -DSMI_DEBUG, as pointed by
3317104f784Smrg    Richard Schwarting.
3327104f784Smrg
3337104f784Smrgcommit 6e1d29d19b205eac85b2f83de126ba88501e9b74
3347104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
3357104f784SmrgDate:   Tue Dec 2 23:43:26 2008 +0100
3367104f784Smrg
3377104f784Smrg    Disable screen centering on mode initialization.
3387104f784Smrg
3397104f784Smrgcommit 695a6066cfe7ad0e568edc596b8704bb9bf8754f
3407104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
3417104f784SmrgDate:   Sat Dec 13 04:20:20 2008 -0200
3427104f784Smrg
3437104f784Smrg    Janitor/maintenance patches.
3447104f784Smrg    
3457104f784Smrg    o Define HAVE_XMODES in config.h.
3467104f784Smrg    o Correct the LEAVE() macro declaration when SMI_DEBUG is defined.
3477104f784Smrg    o Remove prototype for SMI_DGAInit() if HAVE_XMODES is not defined.
3487104f784Smrg    o Properly scale value read from sm501 CURRENT_CLOCK register, to
3497104f784Smrg      print an appropriate message on startup.
3507104f784Smrg
3517104f784Smrgcommit 191cbd3f8419cc5b428f262607d7a8594e574f67
3527104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
3537104f784SmrgDate:   Fri Dec 12 15:50:53 2008 -0200
3547104f784Smrg
3557104f784Smrg    Unless there is a xorg.conf option, don't modify mclck neither mxclck.
3567104f784Smrg    
3577104f784Smrg      The option set_mclck was renamed to just MCLK, and a new MXCLCK option
3587104f784Smrg    was added for smi501/502 chips.
3597104f784Smrg      Note that previously, on MSOC chips, the set_mclck option actually
3607104f784Smrg    changed mxclck, what is now done by the MXCLK option.
3617104f784Smrg      The manpage was also update to reflect the options usage.
3627104f784Smrg      A new SMI501_FindMemClock() function was added, as a possible
3637104f784Smrg    placeholder for choosing alternate clocks when programming MMIO 0x68.
3647104f784Smrg    But it should be noted that the smi 501 databook says:
3657104f784Smrg    Miscellaneous Timing
3667104f784Smrg    	Read/Write MMIO_base + 0x000068
3677104f784Smrg    	Power-on Default 0x00000000
3687104f784Smrg    	[...]
3697104f784Smrg    	5:4 Divider Output Frequency Selection for Second PLL.
3707104f784Smrg    		00: 336 MHz.
3717104f784Smrg    		01: 288 MHz.
3727104f784Smrg    		10: 240 MHz.
3737104f784Smrg    		11: 192 MHz.
3747104f784Smrg    while the 502 databook says:
3757104f784Smrg    	Miscellaneous Timing
3767104f784Smrg    	Read/Write MMIO_base + 0x000068
3777104f784Smrg    	Power-on Default 0b0000.00xx.0000.1001.0000.1001.0000.0000
3787104f784Smrg    	[...]
3797104f784Smrg    	5:4 Reserved These bits are reserved.
3807104f784Smrg    but still tells to refer to those bits.
3817104f784Smrg
3827104f784Smrgcommit a2352ff23787f37530dff68e03028dd78925e4b4
3837104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
3847104f784SmrgDate:   Fri Nov 28 20:23:11 2008 -0200
3857104f784Smrg
3867104f784Smrg    Properly restore console on the smi 501/502.
3877104f784Smrg    
3887104f784Smrg      The current kernel framebuffer module expects accelerations registers
3897104f784Smrg    in the default boot state, otherwise, it will display some corruption,
3907104f784Smrg    or not correctly clear the screen, among other side effects.
3917104f784Smrg      Now it should be restoring everything the kernel framebuffer relies
3927104f784Smrg    on not being modified.
3937104f784Smrg
3947104f784Smrgcommit 5a65559e12452a47f9848c47cfa6e30cfb871f0b
3957104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
3967104f784SmrgDate:   Fri Nov 28 19:49:20 2008 -0200
3977104f784Smrg
3987104f784Smrg    DGA is dependent on HAVE_XMODES.
3997104f784Smrg
4007104f784Smrgcommit 06c78cee718a86b1521c1fc1075d08bb9ad257f1
4017104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4027104f784SmrgDate:   Tue Nov 25 19:57:05 2008 -0200
4037104f784Smrg
4047104f784Smrg    Remove smi_dga.c and polylines code from smi_xaa.c.
4057104f784Smrg    
4067104f784Smrg      DGA was also not being properly test to not enable the pSmi fields,
4077104f784Smrg    but since the dga implementation is very basic, it is better to just
4087104f784Smrg    remove it (if compiling the sources on pre 1.4 X Server, DGA will be
4097104f784Smrg    disabled).
4107104f784Smrg    
4117104f784Smrg      The polylines code in xmi_xaa.c was already if 0'ed for some time,
4127104f784Smrg    but it may be reinstantiated to accelerate (back) xaa rotated modes.
4137104f784Smrg    Currently only randr+exa accelerates rotated modes.
4147104f784Smrg
4157104f784Smrgcommit 9570cfdc132b0acb1d2b70edc6a3a5a812ef9691
4167104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4177104f784SmrgDate:   Tue Nov 25 15:07:39 2008 -0200
4187104f784Smrg
4197104f784Smrg    Ensure the engine is idle before switching to a virtual terminal.
4207104f784Smrg    
4217104f784Smrg      At least in the smi501/502, it may even completely lock in some special
4227104f784Smrg    cases (like when there is a browser playing some youtube video).
4237104f784Smrg      The code in SMI_CloseScreen() was almost identical to SMI_LeaveVT(),
4247104f784Smrg    so it now just call SMI_Leave() if required.
4257104f784Smrg
4267104f784Smrgcommit 26ce0b163d9cf44ec1bc1d1bd460887aa5b405a7
4277104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4287104f784SmrgDate:   Mon Nov 24 15:15:43 2008 -0200
4297104f784Smrg
4307104f784Smrg    Use a single debug macro for leaving functions.
4317104f784Smrg    
4327104f784Smrg      The LEAVE() macro, when debug is disabled, now is defined as:
4337104f784Smrg    <hash>define LEAVE(...)		return __VA_ARGS__
4347104f784Smrg    This avoids the requirement of a return statement after the LEAVE()
4357104f784Smrg    macro call, what can be confusing.
4367104f784Smrg
4377104f784Smrgcommit 2057d7ae05ef269f75a4d53fe5c4914a10856cb1
4387104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4397104f784SmrgDate:   Wed Nov 19 16:22:29 2008 -0200
4407104f784Smrg
4417104f784Smrg    Declare DGA fields only when not using xf86DiDGAInit.
4427104f784Smrg
4437104f784Smrgcommit c2e318eaec3ac281457acdca4ea10fa368f646d3
4447104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4457104f784SmrgDate:   Mon Nov 17 20:08:49 2008 -0200
4467104f784Smrg
4477104f784Smrg    Enable XAA and randr rotated modes.
4487104f784Smrg    
4497104f784Smrg      Use the same logic for offscreen memory management as used in
4507104f784Smrg    smi_video.c. This also makes the functions SMI_AllocateMemory and
4517104f784Smrg    SMI_FreeMemory no longer static in smi_video.c.
4527104f784Smrg
4537104f784Smrgcommit ed6aba73259a1412e23a954d6a8dba439ad98a8a
4547104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4557104f784SmrgDate:   Fri Nov 14 22:37:56 2008 -0200
4567104f784Smrg
4577104f784Smrg    Correct EXA+Randr+rotated mode.
4587104f784Smrg    
4597104f784Smrg      The smi 501/502 cannot rotate-blt more than 32 bytes at a time.
4607104f784Smrg    Patch based on smi's sample smi_shadow.c.
4617104f784Smrg      XAA + randr + rotated mode currently not supported.
4627104f784Smrg
4637104f784Smrgcommit 85d118ee288fe7aa32db003bfa322ddf06944bf6
4647104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4657104f784SmrgDate:   Fri Nov 14 22:04:17 2008 -0200
4667104f784Smrg
4677104f784Smrg    Don't explicitly call the cursor routines.
4687104f784Smrg    
4697104f784Smrg      On the MSOC, the hardware cursor was remaining on screen, when using
4707104f784Smrg    EXA and a randr rotated mode.
4717104f784Smrg
4727104f784Smrgcommit cd10af22240b9df7c264b15c483d8cc4505ee359
4737104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4747104f784SmrgDate:   Fri Nov 14 20:36:09 2008 -0200
4757104f784Smrg
4767104f784Smrg    Only compile smi_dga.c when xf86DiDGAInit is not available.
4777104f784Smrg    
4787104f784Smrg      Besides reducing driver size, this should make DGA+EXA accelerated.
4797104f784Smrg
4807104f784Smrgcommit 41ef793b0ed6014ed49bef011259f977833aef5d
4817104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4827104f784SmrgDate:   Fri Nov 14 19:24:45 2008 -0200
4837104f784Smrg
4847104f784Smrg    Correct regressions in CSCVideo
4857104f784Smrg    
4867104f784Smrg      Commit 0870d46718fe4e01953efd63cec46c54140b20f9 broke the clipping
4877104f784Smrg    code. That has been corrected in this patch. Anyway, the hardware color
4887104f784Smrg    space conversion should not be hidden down in the driver code, instead
4897104f784Smrg    it should be usable by external programs as well, instead of having
4907104f784Smrg    some applications doing it by software.
4917104f784Smrg
4927104f784Smrgcommit be226bfaad76e7b48e006fe55ebae09b044ba4b7
4937104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
4947104f784SmrgDate:   Fri Nov 14 16:56:46 2008 -0200
4957104f784Smrg
4967104f784Smrg    MSOC: Hide cursor on mode setup when using software cursor.
4977104f784Smrg    
4987104f784Smrg      The kernel framebuffer module uses the hw cursor for the console cursor,
4997104f784Smrg    so the driver must ensure it is hidden when setting a video mode.
5007104f784Smrg
5017104f784Smrgcommit 5b8583fc2e5626ed98877858158d9687d7c94469
5027104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5037104f784SmrgDate:   Fri Nov 14 15:47:52 2008 -0200
5047104f784Smrg
5057104f784Smrg    Be more liberal about mode width validation.
5067104f784Smrg    
5077104f784Smrg      The code was inherited from first import of latest smi sources, but
5087104f784Smrg    the driver actually programs a mode, so there is no need to check if
5097104f784Smrg    there will be a table entry with register contents matching the requested
5107104f784Smrg    mode.
5117104f784Smrg
5127104f784Smrgcommit ffb4be763ced82158a3a1d2e06fb0e81815e057b
5137104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5147104f784SmrgDate:   Thu Nov 13 20:01:18 2008 -0200
5157104f784Smrg
5167104f784Smrg    Don't restore alpha registers, as they are not being modified.
5177104f784Smrg    
5187104f784Smrg      Restoring the registers "without need" caused some instability, with
5197104f784Smrg    random locks.
5207104f784Smrg
5217104f784Smrgcommit 6b6da04d566ec5b9d723c9f28791c604f76526dd
5227104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5237104f784SmrgDate:   Thu Nov 13 19:44:14 2008 -0200
5247104f784Smrg
5257104f784Smrg    Changed to use panel plane tl and tr to center modes smaller then panel size.
5267104f784Smrg    
5277104f784Smrg      The code is under "<hash>ifdef USE_PANEL_CENTER", as it is buggy, and
5287104f784Smrg    regardless of value set to right and bottom, it will crop from 0 to
5297104f784Smrg    mode-width/mode-height, and then display a lot of screen artifacts, due
5307104f784Smrg    to improper programming. Either way, the CRT in clone mode will display
5317104f784Smrg    correctly.
5327104f784Smrg
5337104f784Smrgcommit d2709b1af22a06b24606ec8c01f39f1ca27ca8d3
5347104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5357104f784SmrgDate:   Thu Nov 13 18:00:46 2008 -0200
5367104f784Smrg
5377104f784Smrg    Enable gamma correction on the MSOC.
5387104f784Smrg
5397104f784Smrgcommit 0870d46718fe4e01953efd63cec46c54140b20f9
5407104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5417104f784SmrgDate:   Tue Nov 11 19:14:36 2008 -0200
5427104f784Smrg
5437104f784Smrg    Correct a problem in CSC video on the smi 501/502.
5447104f784Smrg    
5457104f784Smrg      This significantly simplify the function SMI_DisplayVideo0501_CSC(),
5467104f784Smrg    but the real cause of the problem that this patch corrects is that
5477104f784Smrg    whenever MMIO 0x1000fc bit 24 (Vertical Linear Filter Control)  is
5487104f784Smrg    set, the last line of the rendered video will display only noisy,
5497104f784Smrg    regardless of video being rendered 1x1, or scaled up or down.
5507104f784Smrg
5517104f784Smrgcommit 09644ad3da4cf4c2576532137fdc81156e9c06e6
5527104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5537104f784SmrgDate:   Tue Nov 11 15:34:27 2008 -0200
5547104f784Smrg
5557104f784Smrg    Disable detection of crt for the smi 501/502.
5567104f784Smrg    
5577104f784Smrg      As described by siliconmotion, it does not work on the smi 502.
5587104f784Smrg    Does it work on older revisions? Keeping <hash>ifdef'ed out for now
5597104f784Smrg    as it hopefully will be corrected in a newer hardware revision.
5607104f784Smrg
5617104f784Smrgcommit caac648932df69419b8f86c5793a6b33f5997099
5627104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5637104f784SmrgDate:   Tue Nov 11 15:06:15 2008 -0200
5647104f784Smrg
5657104f784Smrg    Implement an argb cursor using the alpha layer.
5667104f784Smrg    
5677104f784Smrg      The code is <hash>ifdef'ed out by <hash>if SMI_CURSOR_ALPHA_PLANE
5687104f784Smrg    because the smi 502 hardware is buggy, but it appears to have worked
5697104f784Smrg    for some older hardware revisions (by looking at code available at
5707104f784Smrg    ftp.siliconmotion.com.tw).
5717104f784Smrg      Keeping it at least for now, as it serves as a simple way to reproduce
5727104f784Smrg    the problems described in smi.h.
5737104f784Smrg
5747104f784Smrgcommit 61dd360a30c8e530185bc71b134c287ab1cdde2c
5757104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5767104f784SmrgDate:   Tue Nov 11 14:47:58 2008 -0200
5777104f784Smrg
5787104f784Smrg    Add support for the reading/writing the alpha layer registers.
5797104f784Smrg
5807104f784Smrgcommit d018ea2272cc1938cc0236eeb210692c1d1fd1df
5817104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5827104f784SmrgDate:   Tue Nov 11 14:35:36 2008 -0200
5837104f784Smrg
5847104f784Smrg    Correct wrong offset value for secondary hardware cursor.
5857104f784Smrg    
5867104f784Smrg      Hardware cursor is still disabled in dual head mode due to some problems,
5877104f784Smrg    usually when having both panel and crt mapped to the same address, what
5887104f784Smrg    appears to confuse the "modes" code.
5897104f784Smrg
5907104f784Smrgcommit f97c57873cd7622c373a394548ed435c1975abbc
5917104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
5927104f784SmrgDate:   Sat Nov 8 21:40:49 2008 +0100
5937104f784Smrg
5947104f784Smrg    Remove unused fifo_* options.
5957104f784Smrg
5967104f784Smrgcommit 418b28028e69d14e74bf673be56123e99103e5bf
5977104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
5987104f784SmrgDate:   Sat Nov 8 16:04:58 2008 -0200
5997104f784Smrg
6007104f784Smrg    Remove the ZoomOnLCD option and update manpage for PCIRetry.
6017104f784Smrg    
6027104f784Smrg      ZoomOnLCD controlled if Ctrl/Alt/+ or Ctrl/Alt/- could be used to
6037104f784Smrg    reprogram the mode on the panel. The option was not used, and now, if
6047104f784Smrg    different resolutions could be used, it should be advertised by randr.
6057104f784Smrg    
6067104f784Smrg      PCIBurst and PCIRetry options are now enabled by default.
6077104f784Smrg    
6087104f784Smrg      The fifo_xxx options need a review, as they appear to be associated
6097104f784Smrg    with the older WaitQueue macro, that did ignore its argument. But these
6107104f784Smrg    options are not used, and may be removed or reimplemented at some time.
6117104f784Smrg
6127104f784Smrgcommit bbc38b2a14d748bb9d9e153fcdcb259e5b10bdc8
6137104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
6147104f784SmrgDate:   Fri Nov 7 16:57:50 2008 +0100
6157104f784Smrg
6167104f784Smrg    Update the man page
6177104f784Smrg    
6187104f784Smrg    Reflect changes in the configuration options, additional supported
6197104f784Smrg    chipsets and RandR1.2 interface.
6207104f784Smrg
6217104f784Smrgcommit 7f8b7535a9a905c1d6c1d89cd1dd4dd506025429
6227104f784SmrgAuthor: Nathael Pajani <nathael.pajani@ed3l.fr>
6237104f784SmrgDate:   Thu Mar 20 07:25:00 2008 -0800
6247104f784Smrg
6257104f784Smrg    Bit twelve on CPR00 bitfield is not bit eleven...
6267104f784Smrg
6277104f784Smrgcommit 98969b1b96244085ff5b0c76d2a463c1e436bcfa
6287104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6297104f784SmrgDate:   Thu Nov 6 16:35:15 2008 -0200
6307104f784Smrg
6317104f784Smrg    Use the CRT Monitor Detect MSOC register.
6327104f784Smrg    
6337104f784Smrg      Probably I misunderstood the usage of this register, as it will always
6347104f784Smrg    show the same value, regardless of having a crt connected to the "vga"
6357104f784Smrg    port or not. Only difference is that while the detect bit is set,
6367104f784Smrg    the crt will be blank. This patch should be more of a placeholder for
6377104f784Smrg    a possible correction, but it should not cause any side effects, unless
6387104f784Smrg    the data field can be zero on a valid situation.
6397104f784Smrg      In my test computer, this field, in base 2 is always 1000000010000100,
6407104f784Smrg    what doesn't really look like data in rgb 8:8:8...
6417104f784Smrg
6427104f784Smrgcommit 87a3cc0652666c1796fd56f00810834193f3eca0
6437104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6447104f784SmrgDate:   Tue Nov 4 16:38:12 2008 -0200
6457104f784Smrg
6467104f784Smrg    Allow setting modes larger then panel for secondary output.
6477104f784Smrg    
6487104f784Smrg      Sample usage on sm502:
6497104f784Smrg    $ DISPLAY=:0 xrandr --output VGA --newmode 1280x1024 109.00 1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
6507104f784Smrg    $ DISPLAY=:0 xrandr --addmode VGA 1280x1024
6517104f784Smrg    $ DISPLAY=:0 xrandr --output VGA --mode 1280x1024 --pos 768x176
6527104f784Smrg      Last command assuming using XAA (with ``Virtual 2048 1024''), so that it
6537104f784Smrg    will have panel in top-left, and crt in bottom-right.
6547104f784Smrg
6557104f784Smrgcommit 1d7b9547e1d37601f14410857c22f256e5c74f14
6567104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6577104f784SmrgDate:   Tue Nov 4 15:57:12 2008 -0200
6587104f784Smrg
6597104f784Smrg    Add CSCVideo option to smi 501/502.
6607104f784Smrg    
6617104f784Smrg      This code is an adaptation of SMI sample implementation.
6627104f784Smrg      CSCVideo is an alternate way to render video, that should reduce memory
6637104f784Smrg    bandwidth usage, and uses the color space conversion hardware to render
6647104f784Smrg    video directly to the framebuffer memory.
6657104f784Smrg      When using randr dual head mode, currently only XAA is supported. As it
6667104f784Smrg    has a fixed format framebuffer (when using the Virtual xorg.conf option).
6677104f784Smrg      This patch also ensures that pScrn->displayWidth, pScrn->virtualX and
6687104f784Smrg    pScrn->virtualY are only changed by the driver when using EXA.
6697104f784Smrg
6707104f784Smrgcommit 93308d067c93126dd0aba9b718d9e0ba28dde9f4
6717104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6727104f784SmrgDate:   Thu Oct 30 19:07:40 2008 -0200
6737104f784Smrg
6747104f784Smrg    Make MSOC work with EXA offscreen manager.
6757104f784Smrg
6767104f784Smrgcommit e5cd9e4640555b9a3d4fab205e4b77faaca89d89
6777104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6787104f784SmrgDate:   Thu Oct 30 19:05:40 2008 -0200
6797104f784Smrg
6807104f784Smrg      Update memory detection for MSOC.
6817104f784Smrg    
6827104f784Smrg      Use "local memory" field of mmio 0x010 and not "system memory", as
6837104f784Smrg    it uses system memory values whenever there is a choice (just sets
6847104f784Smrg    bits to zero).
6857104f784Smrg
6867104f784Smrgcommit 5acf7e22c256637ba7139733cdba1c59557dd7ff
6877104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6887104f784SmrgDate:   Thu Oct 30 19:01:54 2008 -0200
6897104f784Smrg
6907104f784Smrg      Disable HW cursor in dualhead mode in smi 501/502
6917104f784Smrg    
6927104f784Smrg      Other chipsets are doing the same. But this apparently is to circumvent
6937104f784Smrg    a problem in randr/cursor implementation, that appears to not work very
6947104f784Smrg    well with hardware that supports two hw cursors, but not argb cursors.
6957104f784Smrg
6967104f784Smrgcommit c756ed67cbcf5bdd40c300627802d8bcd3d95123
6977104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
6987104f784SmrgDate:   Wed Oct 29 19:17:54 2008 -0200
6997104f784Smrg
7007104f784Smrg      SMI501/502 cursor fixes.
7017104f784Smrg    
7027104f784Smrg      Use separate buffers for crt and panel hw cursors.
7037104f784Smrg      Describe, and workaround a problem with Dualhead and hw cursor enabled.
7047104f784Smrg    It still has the inconvenient of having a blinking X when exiting the server
7057104f784Smrg    or switching to a VT; maybe should also save the image currently configured
7067104f784Smrg    also (and restore on exit), or just disable hw cursor on dual head mode.
7077104f784Smrg      Also revert change to not initialize video on dualhead. Better to have
7087104f784Smrg    fully functional video only on panel, that can be resized, then non
7097104f784Smrg    resizable video..
7107104f784Smrg
7117104f784Smrgcommit 2671776999a5add36e1aeaad4080bfccedc2b1a5
7127104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
7137104f784SmrgDate:   Tue Oct 28 19:45:31 2008 -0200
7147104f784Smrg
7157104f784Smrg    Update msoc to use randr cursor routines
7167104f784Smrg    
7177104f784Smrg      pSmi->IsSecondary was not used, and there should not exist two
7187104f784Smrg    instances of the driver managing the same card.
7197104f784Smrg      Macro CHECK_SECONDARY() was dependant on a second instance of the driver
7207104f784Smrg    for the same card, and also removed.
7217104f784Smrg      Some rework should still be done in the cursor code, as it sometimes,
7227104f784Smrg    when displaying different data, will leave the hw cursor visible, while
7237104f784Smrg    using an argb cursor.
7247104f784Smrg
7257104f784Smrgcommit 91b5613fb07fec0f319623ca7ec1efd67f04379b
7267104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
7277104f784SmrgDate:   Tue Oct 28 00:13:55 2008 +0100
7287104f784Smrg
7297104f784Smrg    Remove shadowfb based rotation support.
7307104f784Smrg    
7317104f784Smrg    Also done some clean up, like removing unused/redundant members of the
7327104f784Smrg    screen private structure, and removing now unused configuration file
7337104f784Smrg    options.
7347104f784Smrg
7357104f784Smrgcommit 0faeddb208d8fade4737be4bcadb8814696bd7b4
7367104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
7377104f784SmrgDate:   Tue Oct 28 00:06:37 2008 +0100
7387104f784Smrg
7397104f784Smrg    Lynx hardware cursor code adapted to the CRTC interfaces.
7407104f784Smrg
7417104f784Smrgcommit 5d151781515cf2e3af1322ce6ed5f8d871c05791
7427104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
7437104f784SmrgDate:   Mon Oct 27 23:37:30 2008 +0100
7447104f784Smrg
7457104f784Smrg    Changes in the video overlay clipping code.
7467104f784Smrg    
7477104f784Smrg    Clip the video to the CRTC viewport by using
7487104f784Smrg    xf86_crtc_clip_video_helper, and allow XV in
7497104f784Smrg    dual head mode.
7507104f784Smrg
7517104f784Smrgcommit 486e92399f09b9d765d03184fe29a32b3bc4ecc5
7527104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
7537104f784SmrgDate:   Mon Oct 27 23:12:36 2008 +0100
7547104f784Smrg
7557104f784Smrg    Simple EXA Composite implementation.
7567104f784Smrg    
7577104f784Smrg    * Implementation of the PictOpSrc render operation with a
7587104f784Smrg      source coordinate transformation through 2D engine rotate-BITBLTs.
7597104f784Smrg    * Fix EXA Copy and Solid in 24 bpp packed color mode.
7607104f784Smrg
7617104f784Smrgcommit c0447d33c82829248e642b3156fd9a3c0d0eb709
7627104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
7637104f784SmrgDate:   Mon Oct 27 22:39:52 2008 +0100
7647104f784Smrg
7657104f784Smrg    Some corrections in the CRTC code.
7667104f784Smrg    
7677104f784Smrg    * Make screen resizing behave better with XAA.
7687104f784Smrg    * Move some local variable declarations to the top of
7697104f784Smrg      the function definition to conform ANSI C.
7707104f784Smrg    * Make the Lynx panel modesetting code to actually
7717104f784Smrg      program the panel sync pulse width in dualhead mode.
7727104f784Smrg    * Also, fix a crash when using libpciaccess
7737104f784Smrg      (the memory wasn't being unmapped).
7747104f784Smrg
7757104f784Smrgcommit f2c83671cccc42345bfc9b506365936bbb6b9ef0
7767104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
7777104f784SmrgDate:   Fri Oct 24 17:55:02 2008 -0200
7787104f784Smrg
7797104f784Smrg    Make Dualhead option functional.
7807104f784Smrg    
7817104f784Smrg      Slightly change clock selection code to start using 501 compatible values,
7827104f784Smrg    before checking 502 values, if it is a 502.
7837104f784Smrg      DPMS for the VGA/second output was being set with bits inverted, that is
7847104f784Smrg    dpms-on was programmed as dpms-off and vice versa. This was one of the
7857104f784Smrg    reasons of dual head not working.
7867104f784Smrg      Corrected wrong vsync programming for the crt. Cut&paste/typo caused
7877104f784Smrg    programming vsync with hsync values, and thus, never getting the crt
7887104f784Smrg    to accept the mode being programmed.
7897104f784Smrg      If adding:
7907104f784Smrg      Option "Dualhead" "True"
7917104f784Smrg    to xorg.conf, now you should be able to do things like:
7927104f784Smrg    $ DISPLAY=:0.0 xrandr --output VGA --right-of LVDS
7937104f784Smrg    $ DISPLAY=:0.0 xrandr --output VGA --below LVDS
7947104f784Smrg    and so on.
7957104f784Smrg      *Iff* there is some way to not have any limitations for video playback,
7967104f784Smrg    this option should be made default or automatically configured.
7977104f784Smrg
7987104f784Smrgcommit 1efe36ed5cf5b0931daa915ca3ce231b78168d87
7997104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8007104f784SmrgDate:   Wed Oct 22 19:06:06 2008 -0200
8017104f784Smrg
8027104f784Smrg    Make UseFBDev option functional again.
8037104f784Smrg    
8047104f784Smrg      It is mean't to be a fallback option, that as long as kernel boots
8057104f784Smrg    in framebuffer mode, the X Server should also work.
8067104f784Smrg      Correct incorrect value being checked when printing state of Dualhead
8077104f784Smrg    option.
8087104f784Smrg      The M value when programming PLL3 is actually an 8 bits integer,
8097104f784Smrg    so correct it and comments about it.
8107104f784Smrg
8117104f784Smrgcommit dd083c26de400cee8c67977f46cf90d048b22ff9
8127104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8137104f784SmrgDate:   Tue Oct 21 19:41:55 2008 -0200
8147104f784Smrg
8157104f784Smrg    Use existing "Dualhead" option in MSOC.
8167104f784Smrg    
8177104f784Smrg      If Dualhead is set, it will attempt to use setups that allow different
8187104f784Smrg    outputs with different contents, instead of crt always cloning panel.
8197104f784Smrg      Still not fully functional.
8207104f784Smrg
8217104f784Smrgcommit 197b4231586b9ada1c590a01b8dd7a5fcda936e6
8227104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8237104f784SmrgDate:   Tue Oct 21 14:22:01 2008 -0200
8247104f784Smrg
8257104f784Smrg    Crt interface corrections.
8267104f784Smrg    
8277104f784Smrg      Correct wrong clock calculation for the 501 clock setting, that is used
8287104f784Smrg    for pre 502 panel interface and crt.
8297104f784Smrg      Adds a few new programmable fields to MSOCRegRec:crt_display_ctl.
8307104f784Smrg      Call SMI501_CrtcAdjustFrame() after adjusting a mode, instead of
8317104f784Smrg    before changing registers.
8327104f784Smrg
8337104f784Smrgcommit 71990e0beece6e60ffbffccfdf56e5a71641a120
8347104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8357104f784SmrgDate:   Mon Oct 20 15:09:09 2008 -0200
8367104f784Smrg
8377104f784Smrg    Don't change M1XCLK unless option specified in xorg.conf.
8387104f784Smrg    
8397104f784Smrg      Also add more complete description of programmable clocks.
8407104f784Smrg
8417104f784Smrgcommit 8b7ce66e26113ec5859566e7f3d0fd15d3e29eaa
8427104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8437104f784SmrgDate:   Fri Oct 17 18:58:45 2008 -0300
8447104f784Smrg
8457104f784Smrg    Update sm502 pll3 programming.
8467104f784Smrg    
8477104f784Smrg      Also print the value of sm502 registers (should be a noop on sm501).
8487104f784Smrg      Added the frequency field to the MSOCRegRec's misc_ctl, as it is
8497104f784Smrg    a read/write registers, and changing bit 24 may change the logic
8507104f784Smrg    of pll3 programming (needs clarification with SMI).
8517104f784Smrg
8527104f784Smrgcommit de1b633f916f4fcaaa95b226a8622d37041c86d4
8537104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8547104f784SmrgDate:   Thu Oct 16 15:41:44 2008 -0300
8557104f784Smrg
8567104f784Smrg    Revert/modify some RandR changes to reenable XAA.
8577104f784Smrg    
8587104f784Smrg      XAA was not initialized anymore in RandR patch, but it is still the
8597104f784Smrg    default accel method. Also reenable offscreen fb manager.
8607104f784Smrg      At least on the MSOC OEM sample (using X Server 1.4), needs some more
8617104f784Smrg    work as EXA is crashing in a call to exaPrepareAccess() when switching
8627104f784Smrg    to a terminal; this seems to be related to disabling exa offscreen
8637104f784Smrg    pixmaps on the smi501.
8647104f784Smrg
8657104f784Smrgcommit e020afa359434b4da06ef8509a3e504423f824d2
8667104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8677104f784SmrgDate:   Thu Oct 16 15:11:36 2008 -0300
8687104f784Smrg
8697104f784Smrg    Correct incorrect pll3 calculation.
8707104f784Smrg    
8717104f784Smrg      Double value must be truncated when calculating the difference from the
8727104f784Smrg    possible clock and requested clock.
8737104f784Smrg
8747104f784Smrgcommit f686d1b4fdd11d3d969ff4db21128d7867c9044d
8757104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8767104f784SmrgDate:   Tue Oct 14 19:05:31 2008 -0300
8777104f784Smrg
8787104f784Smrg    Extra MSOC tweaks for the RandR1.2 changes.
8797104f784Smrg    
8807104f784Smrg      The "prototype" computer no longer locks, and only "missing feature"
8817104f784Smrg    from before the patch is that video and Xaa don't work (only with Exa).
8827104f784Smrg      For the moment, just force crt as not connected, and set the proper
8837104f784Smrg    registers to make the secondary output clone the panel.
8847104f784Smrg
8857104f784Smrgcommit fc722212d297a5141245beb7c8ae396606a8f221
8867104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8877104f784SmrgDate:   Tue Oct 14 15:46:52 2008 -0300
8887104f784Smrg
8897104f784Smrg    Remove dependency on xf86cvt.c.
8907104f784Smrg    
8917104f784Smrg      It actually was not added in a previous commit (due to using git reset
8927104f784Smrg    to remake a commit, and not readding it), but now, changed only call
8937104f784Smrg    xf86CVTMode if it is available in the X Server, otherwise, for older
8947104f784Smrg    X Servers, a modeline should be specified in xorg.conf.
8957104f784Smrg
8967104f784Smrgcommit 5adb3b502ef79827b89fb11926b6198c3a57d2e6
8977104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
8987104f784SmrgDate:   Tue Oct 14 14:48:42 2008 -0300
8997104f784Smrg
9007104f784Smrg    Minor corrections for smi501 for the randr1.2 integration.
9017104f784Smrg    
9027104f784Smrg      Also correct printing information about MCLK in the smi501/502, it
9037104f784Smrg    should print M2CLK (aka M1CLK o the 502) as it is the clock that
9047104f784Smrg    controls video engine/memory.
9057104f784Smrg
9067104f784Smrgcommit 6e0837305533f940adb7a09f9b013077c0888f2d
9077104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
9087104f784SmrgDate:   Sat Oct 11 14:24:48 2008 +0200
9097104f784Smrg
9107104f784Smrg    RandR1.2 initial implementation (WIP)
9117104f784Smrg    
9127104f784Smrg    Moved most of the Lynx-specific code out of the main
9137104f784Smrg    functions at smi_driver.c to some new files: smilynx_hw.c
9147104f784Smrg    (With CRTC-independent code like global hardware initialization and
9157104f784Smrg    mode saving/restoring), smilynx_crtc.c (With the CRTC-local
9167104f784Smrg    procedures) and smilynx_output.c (Output power management, DDC and
9177104f784Smrg    monitor detection, currently).
9187104f784Smrg    
9197104f784Smrg      Done something similar with the SMI501 code: split
9207104f784Smrg    SMI501_ModeInit in three separate functions: SMI501_HWInit that does
9217104f784Smrg    the global initialization, and the CRTC mode_set callbacks
9227104f784Smrg    SMI501_ModeSet_crt and SMI501_ModeSet_lcd at smi501_crtc.c.
9237104f784Smrg    
9247104f784Smrg      The SMI501_ModeSet code is divided into SMI501_WriteMode_common,
9257104f784Smrg    SMI501_WriteMode_lcd and SMI501_WriteMode_crt, each one updates a
9267104f784Smrg    different register set in the hardware.
9277104f784Smrg    
9287104f784Smrg      Inside smi_crtc.c, there is mainly hardware independent
9297104f784Smrg    code... Initial CRT controller allocation, shadows, rotation and
9307104f784Smrg    framebuffer resizing code.
9317104f784Smrg    
9327104f784Smrg      The shadow code currently relies on EXA... I'm not sure what are the
9337104f784Smrg    problems of the EXA implementation in MSOC. Does it work?
9347104f784Smrg    
9357104f784Smrg      I think it would be a good thing to get rid of XAA soon: The next
9367104f784Smrg    thing I'll be working on will be EXA Composite... I hope it's possible
9377104f784Smrg    to get EXA acceleration working at least as fast as the current
9387104f784Smrg    XAA. (Although Teddy Wang confirmed me that the SMI720 DMA engine is
9397104f784Smrg    broken...)
9407104f784Smrg    
9417104f784Smrg      So, the patch adds some features like new Lynx dualhead modesetting
9427104f784Smrg    code, but it probably breaks some other things:
9437104f784Smrg    * Video Overlay: I suppose it does work with EXA activated. It seems
9447104f784Smrg    it is also possible to have simultaneous overlays in both CRTCs with the
9457104f784Smrg    Lynx hardware (I have some code for this, but still work in progress).
9467104f784Smrg    * Hardware Cursor (It needs more integration in the CRTC interfaces).
9477104f784Smrg    * The old Shadow FB / rotation code, which we should probably drop.
9487104f784Smrg    
9497104f784Smrg      These are in my TODO list... Along with some more cleaning and other
9507104f784Smrg    minor issues in the modesetting code.
9517104f784Smrg    
9527104f784Smrg      About the SMI501 RandR1.2 implementation... I suppose it's specially
9537104f784Smrg    lacking per-output DPMS (The DPMS field in the System Control register
9547104f784Smrg    only affects the CRT, doesn't it?).
9557104f784Smrg
9567104f784Smrgcommit 605199b1fa80d5a65e11a38270f6d0974466d1dc
9577104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
9587104f784SmrgDate:   Thu Oct 9 18:51:50 2008 -0300
9597104f784Smrg
9607104f784Smrg    Add a PanelSize/60Hz CVT mode at driver initialization
9617104f784Smrg    
9627104f784Smrg      This driver is expected to be used with XServer 1.4 or newer, but a
9637104f784Smrg    (probably temporary) copy of xf86cvt.c was also added to the build.
9647104f784Smrg      This modeline automatically added implies it would not be required
9657104f784Smrg    to specify one in xorg.conf, as it should not be uncommon "non standard"
9667104f784Smrg    modes, like 800x480 or 1024x600.
9677104f784Smrg
9687104f784Smrgcommit 55052509d75492f0936273686826c51fcbc831c1
9697104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
9707104f784SmrgDate:   Thu Oct 9 18:12:02 2008 -0300
9717104f784Smrg
9727104f784Smrg    Make the input frequency in SMI501_FindPLLClock a variable
9737104f784Smrg    
9747104f784Smrg      Instead of using a fixed 24Mhz input frequency, as "unofficially"
9757104f784Smrg    specified by SMI, a guess of using a 12 multiplier was used, and it
9767104f784Smrg    corrects the screen flicker problem as well as make a secondary output
9777104f784Smrg    work again.
9787104f784Smrg
9797104f784Smrgcommit 61f814d1c8ad9440bab89eda44e64b01ba0eb703
9807104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
9817104f784SmrgDate:   Wed Oct 8 18:36:11 2008 -0300
9827104f784Smrg
9837104f784Smrg    Rewrite WaitQueue and WaitIdle accell macros
9847104f784Smrg    
9857104f784Smrg      WaitQueue() did receive an unused parameter, that was removed. The
9867104f784Smrg    parameter was unused since version 1.0 in XFree86 CVS, so probably
9877104f784Smrg    nobody knows for what it was used.
9887104f784Smrg      WaitIdle() now also replaces WaitIdleEmpty(), as an idle engine
9897104f784Smrg    should also have an empty fifo.
9907104f784Smrg      SMI_SubsequentScreenToScreenCopy() was changed to use WaitIdle()
9917104f784Smrg    instead of WaitQueue() before submitting the commands to the engine.
9927104f784Smrg    This fixes a nasty lockup when using XaaOffscreenPixmaps (what is
9937104f784Smrg    desired/wanted to help improve performance), and the lockup in the
9947104f784Smrg    MSOC was clearly due to an engine overrun, when sending commands
9957104f784Smrg    faster then the engine could process.
9967104f784Smrg
9977104f784Smrgcommit 1656fb6de5308ff586676e8d6a8aa8d4579ebf4c
9987104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
9997104f784SmrgDate:   Fri Oct 3 18:55:14 2008 -0300
10007104f784Smrg
10017104f784Smrg    Don't use the 1 multiplier on older chipsets.
10027104f784Smrg    
10037104f784Smrg      It is not in the specs, so don't use it on chipsets older then the 502.
10047104f784Smrg      Some review should be done in SMI501_FindPLLClock() as when hardcoding it
10057104f784Smrg    to use the clock selection code for older chips, it appears to choose a
10067104f784Smrg    better refresh rate (no flicking at 1024x600).
10077104f784Smrg
10087104f784Smrgcommit da789f720e2d772dff92adc10aa024a6a921fbbd
10097104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10107104f784SmrgDate:   Fri Oct 3 16:30:23 2008 -0300
10117104f784Smrg
10127104f784Smrg    Simplify regsmi.h by removing most unused SMI501 defines.
10137104f784Smrg    
10147104f784Smrg      The values that should be used, should also have a more meaningful name,
10157104f784Smrg    as something like:
10167104f784Smrg    doesn't help much, and the fact that these "ports" can be accessed from
10177104f784Smrg    several "bases" may be confusing also, as there is SCRBase, DCRBase,
10187104f784Smrg    FPRBase, DPRBase, CPRBase (and IOBase). The 501 code should probably be
10197104f784Smrg    changed to just use IOBase, as currently it uses SCRBase, that happens
10207104f784Smrg    to be at pSmi->MapBase + 0x0000.
10217104f784Smrg    
10227104f784Smrg      This patch also completely transforms the WaitQueue macro in a noop
10237104f784Smrg    for the MSOC. In SMI sample code it is almost the current code, just
10247104f784Smrg    that the macro body is commented out. Hopefully this will be addressed
10257104f784Smrg    soon.
10267104f784Smrg
10277104f784Smrgcommit bacddd1d31a5f3de14477914958f27b6f081c125
10287104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10297104f784SmrgDate:   Fri Oct 3 15:10:55 2008 -0300
10307104f784Smrg
10317104f784Smrg    Rename macro "bitfield" to "bits" and correct a wrong division.
10327104f784Smrg
10337104f784Smrgcommit 22a7fd6711e2a40633981cd21fa3808c9246f13a
10347104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10357104f784SmrgDate:   Thu Oct 2 16:11:59 2008 -0300
10367104f784Smrg
10377104f784Smrg    Remove the IN_SEQ and OUT_SEQ macros.
10387104f784Smrg    
10397104f784Smrg      These macros access vga registers, but don't make it clear in their name.
10407104f784Smrg
10417104f784Smrgcommit 973f68bf0464c4d2aec2acf7c8e6db201782f4ec
10427104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10437104f784SmrgDate:   Thu Oct 2 15:48:51 2008 -0300
10447104f784Smrg
10457104f784Smrg    Rewrite some macros to not have side effects in if/else nesting.
10467104f784Smrg
10477104f784Smrgcommit 82e17c442c3969938435a8b46d2679995af64425
10487104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10497104f784SmrgDate:   Thu Oct 2 15:25:41 2008 -0300
10507104f784Smrg
10517104f784Smrg    Add support for the extra divider in the alternate pixel clock setting.
10527104f784Smrg    
10537104f784Smrg      Also remove extra includes that were not used.
10547104f784Smrg
10557104f784Smrgcommit b32769305275519f7f4d1e0871a71514636ca026
10567104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10577104f784SmrgDate:   Wed Oct 1 18:27:27 2008 -0300
10587104f784Smrg
10597104f784Smrg    Correct clock programming for the SMI 501/502
10607104f784Smrg    
10617104f784Smrg      The new code is based on the file SM502Clock.pdf provide by SMI engineers
10627104f784Smrg    (many thanks). And now it is expected to work correctly. The few remaining
10637104f784Smrg    details that are unclear (for the extended 502 modesetting mode) should be
10647104f784Smrg    resolved soon, and those are:
10657104f784Smrg    *  MMIO:0x74:bit15 (PLL Output Divided by 2)
10667104f784Smrg    	0: Disable.
10677104f784Smrg    	1: Enable.
10687104f784Smrg       (does this mean it can use a 12MHz clock instead of 24? or anything else?)
10697104f784Smrg    *  Should bit 31 of "current clock" always be set when using the alternate
10707104f784Smrg       mode setting for the 502? The alternate modesetting allows a very closer
10717104f784Smrg       pixel clock programming option, usually with 0 difference from the
10727104f784Smrg       xf86 mode.
10737104f784Smrg    
10747104f784Smrg      I will ask SMI to make SM502Clock.pdf also available in the ftp site, it
10757104f784Smrg    is just 3 pages, or possibly even better, an update for the existing
10767104f784Smrg    documentation.
10777104f784Smrg
10787104f784Smrgcommit ea34e20852ee6007e2f0fcacd5068c151865be1e
10797104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10807104f784SmrgDate:   Tue Sep 30 17:49:25 2008 -0300
10817104f784Smrg
10827104f784Smrg    Remove the macro field, and rename the detail structure to f.
10837104f784Smrg    
10847104f784Smrg      Now access to bitfields looks like:
10857104f784Smrg    record->register.f.field
10867104f784Smrg      instead of:
10877104f784Smrg    field(record->register, field)
10887104f784Smrg      what should be easier to read and understand.
10897104f784Smrg
10907104f784Smrgcommit a91872f813a6299f32b9f833876c54afd0b53aaa
10917104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
10927104f784SmrgDate:   Tue Sep 30 17:33:36 2008 -0300
10937104f784Smrg
10947104f784Smrg    Update to match the SMI 502 chipset specs.
10957104f784Smrg    
10967104f784Smrg      The 502 is a superset of the 501, also recognized as PCI_CHIP_SMI501.
10977104f784Smrg      The driver is only known to work with smi_501 chipset
10987104f784Smrg    "SM501 VoyagerGX Rev. AA (rev c0)".
10997104f784Smrg
11007104f784Smrgcommit e830572bca9b8eaf50a36a12d1fe31cdfec6280e
11017104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11027104f784SmrgDate:   Fri Sep 26 19:43:45 2008 -0300
11037104f784Smrg
11047104f784Smrg    Don't always program CRT clock and registers.
11057104f784Smrg    
11067104f784Smrg      This causes instabilities, and there was also a bug where it would
11077104f784Smrg    tell the crt to not select panel data (due to removing the "else").
11087104f784Smrg
11097104f784Smrgcommit 314eecb6628840a942ff2e76d8c7402301feac77
11107104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11117104f784SmrgDate:   Fri Sep 26 19:30:17 2008 -0300
11127104f784Smrg
11137104f784Smrg    Properly check pScrn->driverPrivate before deferencing it.
11147104f784Smrg    
11157104f784Smrg       Add missing divide by 1000 in smi_501.c, as well as a FIXME comment
11167104f784Smrg    about a crash, and possible cause as well as possible ways to program
11177104f784Smrg    other clocks.
11187104f784Smrg
11197104f784Smrgcommit f18222ffcff8e78b3cfcd220cad06a1daa3fc920
11207104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11217104f784SmrgDate:   Fri Sep 26 17:55:42 2008 -0300
11227104f784Smrg
11237104f784Smrg      Don't try to find the closest clock, just use highest one.
11247104f784Smrg    
11257104f784Smrg      Previous patch wasn't fully correct, just that the values were generating
11267104f784Smrg    the same register dump as the smi 2.2.5 driver version.
11277104f784Smrg      When correcting it to not mix Mhz and Khz in the math, the problems
11287104f784Smrg    returned.... Anyway, it just works when selecting the highest clock, and
11297104f784Smrg    the attached CRT will display the panel image. This is illogical, so maybe
11307104f784Smrg    the specs are outdated... The previous code has been #ifdef'ed out in
11317104f784Smrg    "CALC_CLOCK".
11327104f784Smrg      Note that it still changes the boot default clock, from the default
11337104f784Smrg    288Mhz to 336Mhz, and in this patch, it also always sets both, panel and
11347104f784Smrg    crt clocks (what happens here, is that most likely, by doing this, it
11357104f784Smrg    forces the hardware to "somehow" autoconfigure itself; will try to get
11367104f784Smrg    some information from SMI about this, but this is the boot default,
11377104f784Smrg    and what smi sources do...).
11387104f784Smrg
11397104f784Smrgcommit bdba7c1397186cd15d519db55c2345db44990be4
11407104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11417104f784SmrgDate:   Wed Sep 24 18:58:35 2008 -0300
11427104f784Smrg
11437104f784Smrg    Fix incorrect understanding of the pixel clock from specs.
11447104f784Smrg    
11457104f784Smrg      The clock that should be programmed is the bandwidth, and not the pixel
11467104f784Smrg    clock itself. Based on analysis of register contents, after "importing"
11477104f784Smrg    a slightly modified version of xf86ModeBandwidth() and properly converting
11487104f784Smrg    values, now it properly programs both, the LCD and a "clone" CRT or just
11497104f784Smrg    a secondary panel.
11507104f784Smrg    
11517104f784Smrg      Modes generated by either gtf or cvt correctly works.
11527104f784Smrg    
11537104f784Smrg      A (hopefully temporary) fallback was also added, and if the option
11547104f784Smrg    "UseFBDev" is used, the driver will not attempt to set/modify the
11557104f784Smrg    current video mode.
11567104f784Smrg    
11577104f784Smrg      TODO: Generate a modeline "on the fly", based on monitor configured
11587104f784Smrg    specs, or some set of defaults, so that it should not be required to
11597104f784Smrg    specify a modeline in xorg.conf.
11607104f784Smrg
11617104f784Smrgcommit e64b3d63be2a4148c4d10ac160e2bd2f3e8c7fd3
11627104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11637104f784SmrgDate:   Mon Sep 22 22:01:16 2008 -0300
11647104f784Smrg
11657104f784Smrg    Correct problems in clock setting.
11667104f784Smrg    
11677104f784Smrg      One clock must be changed at a time, first setting the pll value,
11687104f784Smrg    then waiting for 16ms (one vsync), then setting the divider/shift
11697104f784Smrg    values, and again waiting 16ms.
11707104f784Smrg      Code was working after split of SMI501_ModeInit(), because some
11717104f784Smrg    clocks were already using system boot default, but would most likely
11727104f784Smrg    cause a crash when actually changing values (currently only p2_xxx
11737104f784Smrg    or v2_xxx is changed, but it would cause problems on some system where
11747104f784Smrg    the initial values don't match the ones set by the driver).
11757104f784Smrg    
11767104f784Smrg      TODO: Either don't change m2clk and mclk or ensure other values
11777104f784Smrg    work correctly (don't change because the kernel should already
11787104f784Smrg    have set those if a value other then the boot default should be
11797104f784Smrg    used).
11807104f784Smrg
11817104f784Smrgcommit 1f0af5ea50e3e3b2c9ed882f7ef2fb8871e780bd
11827104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11837104f784SmrgDate:   Mon Sep 22 21:41:12 2008 -0300
11847104f784Smrg
11857104f784Smrg    Correct logic in sw cursor handling and add missing entries to .gitignore.
11867104f784Smrg
11877104f784Smrgcommit 862cbd8c1845b54a38996b92e8e22d153f38cdd2
11887104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11897104f784SmrgDate:   Mon Sep 22 19:09:12 2008 -0300
11907104f784Smrg
11917104f784Smrg    Split SMI501_ModeInit in two functions.
11927104f784Smrg    
11937104f784Smrg      This allows using alternate MSOCRegRec structures to set a mode.
11947104f784Smrg    This should be useful to restore the initial mode.
11957104f784Smrg
11967104f784Smrgcommit bcbf1854be851b8fa1ec3f384b11c312b0533bf3
11977104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
11987104f784SmrgDate:   Mon Sep 22 18:29:31 2008 -0300
11997104f784Smrg
12007104f784Smrg    Remove unused .cvsignore files.
12017104f784Smrg
12027104f784Smrgcommit 1014ffe0a2c55119d6bfbcf632f3d4ebe77af212
12037104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12047104f784SmrgDate:   Mon Sep 22 18:15:21 2008 -0300
12057104f784Smrg
12067104f784Smrg    Simplify hw cursor and sw cursor option handling.
12077104f784Smrg    
12087104f784Smrg      Also rename SMIRec field hwcursor to HwCursor, as there are few usages,
12097104f784Smrg    and this way, match the case usage for other field names.
12107104f784Smrg
12117104f784Smrgcommit 6b5c22d8680573c8a6b259d78ba3c8435514fde9
12127104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12137104f784SmrgDate:   Mon Sep 22 17:05:21 2008 -0300
12147104f784Smrg
12157104f784Smrg    Rework/simplify debug macros.
12167104f784Smrg    
12177104f784Smrg      Instead of cut&paste of the name of the current function everywhere,
12187104f784Smrg    just use cpp's __FUNCTION__ predefined macro.
12197104f784Smrg      Create two macros to exit a function, named LEAVE() and RETURN().
12207104f784Smrg    Functions returning void should call LEAVE() and then explicitly return
12217104f784Smrg    for now. "Logged" function calls are indented, so a review was done to
12227104f784Smrg    ensure functions with a ENTER() also have the proper exit macro.
12237104f784Smrg      The DEBUG macro was changed to have variadic arguments, and this way
12247104f784Smrg    it is no longer required to prefix arguments with VERBLEV, but now it
12257104f784Smrg    also is not possible to use another "verbosity value", but it wasn't used
12267104f784Smrg    in any of the DEBUG macro calls.
12277104f784Smrg
12287104f784Smrgcommit cf7097c19b31671a53bc8161bd29b9f79f1d3d85
12297104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12307104f784SmrgDate:   Mon Sep 22 14:25:04 2008 -0300
12317104f784Smrg
12327104f784Smrg    Fix a leak and minor cosmetic change.
12337104f784Smrg    
12347104f784Smrg      Leak was due to only releasing return value of xf86GetEntityInfo
12357104f784Smrg    if the chipset was PCI_CHIP_SMI501.
12367104f784Smrg      Cosmetic change was to log pci burst and pci retry default values
12377104f784Smrg    as X_DEFAULT instead of X_PROBED.
12387104f784Smrg
12397104f784Smrgcommit ee1e72a248b2df6522283c0dd3e5433d7f961c62
12407104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12417104f784SmrgDate:   Fri Sep 19 18:06:20 2008 -0300
12427104f784Smrg
12437104f784Smrg    Kludge to not lock the SMI 501 when running at 8bpp.
12447104f784Smrg
12457104f784Smrgcommit 9ae840a358959615020fa4adb76c1487231927f3
12467104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12477104f784SmrgDate:   Fri Sep 19 18:00:16 2008 -0300
12487104f784Smrg
12497104f784Smrg    Add MSOC palette support to run at 8 bpp.
12507104f784Smrg    
12517104f784Smrg      Colors should be correctly set, but most output using Render is not
12527104f784Smrg    properly drawn, i.e. anti aliased fonts, etc. Need to investigate
12537104f784Smrg    further, but it should be a general problem, not exclusive to the
12547104f784Smrg    driver.
12557104f784Smrg
12567104f784Smrgcommit f4339a6a7aa077cb355dd23b77ea568ad2a481e3
12577104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12587104f784SmrgDate:   Fri Sep 19 16:52:17 2008 -0300
12597104f784Smrg
12607104f784Smrg    Enable pci retry and pci burst by default.
12617104f784Smrg    
12627104f784Smrg      Rename fields pci_burst and NoPCIRetry to PCIBurst and PCIRetry,
12637104f784Smrg    to match field names case usage, and updated logic for the removal
12647104f784Smrg    of "No" from the pci retry option.
12657104f784Smrg      Pci retry and pci burst greatly increase video playback speed,
12667104f784Smrg    allowing smooth video play on the SMI 501.
12677104f784Smrg
12687104f784Smrgcommit 782ef31a9273e33100ae6b4bd20a4d1d3f493aa4
12697104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12707104f784SmrgDate:   Fri Sep 19 15:48:34 2008 -0300
12717104f784Smrg
12727104f784Smrg    Add initial exa support for SMI501.
12737104f784Smrg    
12747104f784Smrg      This just allows exa to run, with a minimal ammount of features avaiable.
12757104f784Smrg
12767104f784Smrgcommit 5d9ab8195e692f78dd7e57e7d17d8b46f7f59221
12777104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12787104f784SmrgDate:   Thu Sep 18 18:27:51 2008 -0300
12797104f784Smrg
12807104f784Smrg    Add a missing CHECK_SECONDARY macro call.
12817104f784Smrg
12827104f784Smrgcommit 2876b55c3ed82b9be023acbfc4ddf993494c3c9b
12837104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12847104f784SmrgDate:   Thu Sep 18 18:23:37 2008 -0300
12857104f784Smrg
12867104f784Smrg    Correct video offscreen memory allocation routines.
12877104f784Smrg    
12887104f784Smrg      It was always failing in the first allocation, if using XAA, what caused
12897104f784Smrg    some players to not work correct. This is a major problem for the MSOC as
12907104f784Smrg    it still only supports XAA.
12917104f784Smrg      Also add a workaround for a hardware problem, as described in
12927104f784Smrg    "SM501 Rev.AA engineering addendum v0.1.pdf"
12937104f784Smrg    "A-27 PIXELS TOO BRIGHT ON VIDEO SHRINK".
12947104f784Smrg
12957104f784Smrgcommit 79297e797de3497773539eb9f89e8594797ee512
12967104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
12977104f784SmrgDate:   Thu Sep 18 18:16:21 2008 -0300
12987104f784Smrg
12997104f784Smrg    Update for new smi_501 interfaces.
13007104f784Smrg    
13017104f784Smrg      This also adds some simplification for the driver code, by adding
13027104f784Smrg    some function pointers to avoid the need to check the chipset everywhere.
13037104f784Smrg      The new SMI_DetectMCLK function doesn't actually change pSmi->MCLK to
13047104f784Smrg    avoid chances of it stoping working on non MSOC chipsets, as it
13057104f784Smrg    previously not did set it, and for the MSOC, for the moment, default to
13067104f784Smrg    whatever value is already set, i.e. doesn't reprogram it.
13077104f784Smrg      Added new memory detection code for the MSOC, that better matches the
13087104f784Smrg    documentation.
13097104f784Smrg
13107104f784Smrgcommit 95e312b712a1e4a476ef31c5302faf77c22915a9
13117104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13127104f784SmrgDate:   Thu Sep 18 18:10:54 2008 -0300
13137104f784Smrg
13147104f784Smrg      Complete rewrite of smi_501.c and smi_501.h.
13157104f784Smrg    
13167104f784Smrg      The previous version was dependant on kernel framebuffer, as it was
13177104f784Smrg    just failing a test if not having a modeline defined, and in the test
13187104f784Smrg    case, it is running at 1024x600.
13197104f784Smrg      Now it properly programs the video hardware, and the procedure is
13207104f784Smrg    expected to be very well documented.
13217104f784Smrg
13227104f784Smrgcommit cf5132907e4709c872089fe2d79837b2de4e45b7
13237104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13247104f784SmrgDate:   Tue Sep 2 18:16:41 2008 -0300
13257104f784Smrg
13267104f784Smrg    Rename global smi501 functions to have SMI501 prefix.
13277104f784Smrg    
13287104f784Smrg      Functions renamed were setDPMS -> SMI501_SetDPMS,
13297104f784Smrg    regRead32 -> SMI501_Read32 and regWrite32 -> SMI501_Write32.
13307104f784Smrg      Also moved SMI_SetDPMS to start of smi_501.c to have extern
13317104f784Smrg    functions at start of the file.
13327104f784Smrg
13337104f784Smrgcommit a2a090e10f031aed6dbf6d143d6ce8abdf7a2392
13347104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13357104f784SmrgDate:   Tue Sep 2 17:55:16 2008 -0300
13367104f784Smrg
13377104f784Smrg    Correct all compiler warning messages.
13387104f784Smrg    
13397104f784Smrg      Code compiled with:
13407104f784Smrg    gcc -Wall -Wbad-function-cast -Wdeclaration-after-statement \
13417104f784Smrg        -Wmissing-prototypes -Wmissing-declarations -Wnested-externs \
13427104f784Smrg        -fno-strict-aliasing -Wold-style-definition -Wpointer-arith \
13437104f784Smrg        -Wstrict-prototypes
13447104f784Smrg    
13457104f784Smrg      This patch also makes most smi_501.c functions static, as they are not
13467104f784Smrg    called from anywhere else.
13477104f784Smrg      Also removed prototypes for non existent functions in smi_501.h.
13487104f784Smrg
13497104f784Smrgcommit 2d5ba5f7310fa8e11f7349d116aa871a239ac35f
13507104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13517104f784SmrgDate:   Tue Sep 2 16:32:31 2008 -0300
13527104f784Smrg
13537104f784Smrg    Correct xv video problems on MSOC.
13547104f784Smrg    
13557104f784Smrg      Set VIDEO_CLIP_TO_VIEWPORT as it is used in MSI sources, and also add
13567104f784Smrg    proper code to detect panel size, as this information is used to manage
13577104f784Smrg    offscreen memory (but shouldn't it be using pScrn->virtualY, etc?)
13587104f784Smrg
13597104f784Smrgcommit e111c85d6cca3f2206b6bce119b284edccf0cd4f
13607104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13617104f784SmrgDate:   Mon Sep 1 18:41:43 2008 -0300
13627104f784Smrg
13637104f784Smrg    Don't pretend this driver compiles on XFree86.
13647104f784Smrg    
13657104f784Smrg      Either remove check for XF86_VERSION_CURRENT or at least add the
13667104f784Smrg    implementation of RegionsEqual() to smi_video.c.
13677104f784Smrg
13687104f784Smrgcommit b23c5c5e434aaba2128abcae61a8564a62d2e7a1
13697104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
13707104f784SmrgDate:   Mon Sep 1 21:28:13 2008 +0200
13717104f784Smrg
13727104f784Smrg    Fix XAA, ShadowFB and VT switching for non-sm501 chipsets
13737104f784Smrg    
13747104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13757104f784Smrg
13767104f784Smrgcommit 6a01c87b7c75f698ff2b783f8d341526159ebfe2
13777104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13787104f784SmrgDate:   Mon Sep 1 18:00:03 2008 -0300
13797104f784Smrg
13807104f784Smrg    Split SMI_MapMem in SMI_MapMem and SMI_MapMmio
13817104f784Smrg    
13827104f784Smrg      This is required because MSOC needs mmio to detect ammount of memory.
13837104f784Smrg      The patch also creates a SMI_DetectMem() function, that should slightly
13847104f784Smrg    simplify SMI_PreInit().
13857104f784Smrg
13867104f784Smrgcommit c45ef4676812f72dcff53ba85e9fa95836704c75
13877104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
13887104f784SmrgDate:   Fri Aug 29 19:33:31 2008 -0300
13897104f784Smrg
13907104f784Smrg    Bump version to 1.6.1.
13917104f784Smrg
13927104f784Smrgcommit 4eee032811d1487df9dcf94708b1bcafc7e63392
13937104f784SmrgAuthor: Arnaud Patard <apatard@mandriva.com>
13947104f784SmrgDate:   Fri Aug 29 19:33:31 2008 -0300
13957104f784Smrg
13967104f784Smrg    Correct a problem when handling i420 format.
13977104f784Smrg    
13987104f784Smrg    The problem was that the driver was converting i420->YV12 2 times
13997104f784Smrg    instead of only once.
14007104f784Smrg
14017104f784Smrgcommit 76c931e149917563485ae6ad2950aa28a531b0d1
14027104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14037104f784SmrgDate:   Fri Aug 29 19:31:57 2008 -0300
14047104f784Smrg
14057104f784Smrg    Update MSOC video interface.
14067104f784Smrg    
14077104f784Smrg      This synchronizes smi_video.c with smi 2.2.5 sources.
14087104f784Smrg
14097104f784Smrgcommit 0eb35f2065314807a604a44e571bbb898db23543
14107104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14117104f784SmrgDate:   Fri Aug 29 19:20:54 2008 -0300
14127104f784Smrg
14137104f784Smrg    Update xaa and generic acceleration code for the MSOC.
14147104f784Smrg    
14157104f784Smrg      Currently, the support for EXA is not functional, neither is
14167104f784Smrg    ShadowFB or bpp/depth other than 16.
14177104f784Smrg
14187104f784Smrgcommit 375e35fc7df4a21c2e0bc933774cc2f5f29b89d1
14197104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14207104f784SmrgDate:   Fri Aug 29 19:36:35 2008 -0300
14217104f784Smrg
14227104f784Smrg    MSOC doesn't access VGA registers or VBE/INT10
14237104f784Smrg    
14247104f784Smrg      This should be the biggest patch in the "merge". Done in a single chunk
14257104f784Smrg    to have it compilable at all stages.
14267104f784Smrg
14277104f784Smrgcommit 164d921465ae7b3a0fa2551358f7c0b5a18a425a
14287104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14297104f784SmrgDate:   Fri Aug 29 18:47:14 2008 -0300
14307104f784Smrg
14317104f784Smrg    Add code to probe and recognize the SMI501 chipset
14327104f784Smrg
14337104f784Smrgcommit db330497c3b757361ac9c3602b3a4ece0a401dd3
14347104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14357104f784SmrgDate:   Fri Aug 29 15:58:16 2008 -0300
14367104f784Smrg
14377104f784Smrg    Change SILICONMOTION_NAME value
14387104f784Smrg    
14397104f784Smrg      xf86VDrvMsgVerb prints up to 14 characters prefix, where prefix has the
14407104f784Smrg    format "%s(%d): " so, use name "SMI" instead of "Silicon Motion"
14417104f784Smrg
14427104f784Smrgcommit 36309132aef067822a8901ce24fda817be58546d
14437104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14447104f784SmrgDate:   Fri Aug 29 15:52:36 2008 -0300
14457104f784Smrg
14467104f784Smrg    Add initial support and macros for the MSOC.
14477104f784Smrg    
14487104f784Smrg    This patch add the new files and basic required definitions.
14497104f784Smrg
14507104f784Smrgcommit 96166eafc2b0e5db627aa4f8b0422f953837772b
14517104f784SmrgAuthor: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14527104f784SmrgDate:   Fri Aug 29 14:48:44 2008 -0300
14537104f784Smrg
14547104f784Smrg    Fix build for removal of xf86Version.h
14557104f784Smrg    
14567104f784Smrg      This is the first patch of series to merge code from the version 2.2.5
14577104f784Smrg    from SiliconMotion and code from
14587104f784Smrg    http://cgit.freedesktop.org/~agd5f/xf86-video-smi501
14597104f784Smrg    
14607104f784Smrg      After the merge, work will continue, to correct some extra problems,
14617104f784Smrg    and make it work with EXA at least (as only the Xorg version has
14627104f784Smrg    EXA support).
14637104f784Smrg
14647104f784Smrgcommit 682b9a1b97a82c7d084c63860a8c753cc45d9faf
14657104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
14667104f784SmrgDate:   Sat Aug 16 13:24:27 2008 +0200
14677104f784Smrg
14687104f784Smrg    Allow using XV and RandR rotation simultaneously.
14697104f784Smrg    
14707104f784Smrg     As it doesn't seem feasible to rotate the video, I did some modifications
14717104f784Smrg    at SMI_PutImage and SMI_ClipVideo to make PutImage work (incorrectly) with
14727104f784Smrg    rotation enabled. The image is displayed unrotated.
14737104f784Smrg    
14747104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14757104f784Smrg
14767104f784Smrgcommit f6110b1ef5934b45812ee95e70b1e64f44386dda
14777104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
14787104f784SmrgDate:   Sat Aug 16 13:08:25 2008 +0200
14797104f784Smrg
14807104f784Smrg    Some fixes in the EXA UTS/DTS code.
14817104f784Smrg    
14827104f784Smrg     In DTS:
14837104f784Smrg      * It uses the screen Bpp inestead of the pixmap Bpp...
14847104f784Smrg        this gives some problems when using pixmaps with different depth
14857104f784Smrg        to the screen.
14867104f784Smrg     In UTS:
14877104f784Smrg      * aligned_pitch was computed from src_pitch inestead of the
14887104f784Smrg        pixmap width.
14897104f784Smrg      * When writing the target coordinates to the DE registers, it does
14907104f784Smrg        y*0xFFFF inestead of y & 0xFFFF.
14917104f784Smrg      * I renamed source_pitch to src_pixelpitch as it is very confusing
14927104f784Smrg        to have src_pitch and source_pitch.
14937104f784Smrg      * It isn't necessary to call WaitQueue before copying each scanline,
14947104f784Smrg        but it seems it almost doesn't affect performance.
14957104f784Smrg    
14967104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
14977104f784Smrg
14987104f784Smrgcommit 209097ba5b44a0ce0da7f1ea52150dcace2b5244
14997104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
15007104f784SmrgDate:   Sat Aug 16 13:00:31 2008 +0200
15017104f784Smrg
15027104f784Smrg    RandR rotation implemented.
15037104f784Smrg    
15047104f784Smrg    * I added the configuration file option "RandRRotation".
15057104f784Smrg    * I replaced pSmi->ShadowPitch with pSmi->screenStride, it seems it
15067104f784Smrg       makes more sense because the lower word of ShadowPitch may change
15077104f784Smrg       independently.
15087104f784Smrg    * I moved the SMI_DEDataFormat to smi_accel.c because it seems it is
15097104f784Smrg      a piece of code repeated many times in the driver.
15107104f784Smrg    * At some places, it is assumed the framebuffer is at FBOffset:
15117104f784Smrg      when using a shadow framebuffer, FBOffset is the location of the
15127104f784Smrg      on-screen framebuffer (0 should be used). This made e.g. EXA
15137104f784Smrg      completly useless with ShadowFB enabled (it crashed).
15147104f784Smrg    * In the FBManager initialization, I have replaced xf86InitFBManager
15157104f784Smrg      with xf86InitFBManagerRegion to reserve some additional space as
15167104f784Smrg      screen fb: it's unlikely to be the case, but a less efficient
15177104f784Smrg      alignment in the rotated mode could make the rotated mode need more
15187104f784Smrg      memory than the unrotated one.
15197104f784Smrg      This is not a problem with EXA as the offscreen memory parameters
15207104f784Smrg      can be easily modified when doing the rotation.
15217104f784Smrg    * In SMI_RefreshArea it's assumed that some DE registers are already
15227104f784Smrg      in some state, this is specially not true when using EXA.
15237104f784Smrg    * SMI_ValidMode rejects a rotated mode with different dimensions
15247104f784Smrg      than the panel. This seems to work now.
15257104f784Smrg    
15267104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
15277104f784Smrg
15287104f784Smrgcommit 45c6aedd6fe4e4d6abe58d1bb39ec01049404f09
15297104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
15307104f784SmrgDate:   Sat Aug 16 12:50:26 2008 +0200
15317104f784Smrg
15327104f784Smrg    Updates in SMI_EnterVT when remapping memory.
15337104f784Smrg    
15347104f784Smrg      Update the screen pixmap header with the new aperture address
15357104f784Smrg    when remapping framebuffer memory in SMI_EnterVT.
15367104f784Smrg      Update pSmi->EXADriverPtr->memoryBase too, in case EXA is
15377104f784Smrg    being used.
15387104f784Smrg    
15397104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
15407104f784Smrg
15417104f784Smrgcommit 8feca790a6e92799019237ac69a4ef618cacfaae
15427104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
15437104f784SmrgDate:   Sat Aug 16 12:40:52 2008 +0200
15447104f784Smrg
15457104f784Smrg    Make the int10/VBE initialization depend on the UseBIOS configuration option.
15467104f784Smrg    
15477104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
15487104f784Smrg
15497104f784Smrgcommit 772e899e71efab208b844b09c75f9f49ff453386
15507104f784SmrgAuthor: Francisco Jerez <currojerez@gmail.com>
15517104f784SmrgDate:   Sat Aug 16 12:25:18 2008 +0200
15527104f784Smrg
15537104f784Smrg    Memory detection moved before memory mapping in SMI_PreInit.
15547104f784Smrg    
15557104f784Smrg    Take into account the VideoRam configuration option.
15567104f784Smrg    
15577104f784Smrg    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
15587104f784Smrg
15597104f784Smrgcommit d28ed6aa0d28fdcf8f555b2bb8a58fe28d1b464b
15607104f784SmrgAuthor: Adam Jackson <ajax@redhat.com>
15617104f784SmrgDate:   Fri Aug 15 14:24:31 2008 -0400
15627104f784Smrg
15637104f784Smrg    Dead code removal.
15647104f784Smrg
15657104f784Smrgcommit 7cfecd313aaea74ad5675c53b4d0099d6e9dec39
15667104f784SmrgAuthor: Adam Jackson <ajax@redhat.com>
15677104f784SmrgDate:   Wed Mar 19 15:26:14 2008 -0400
15687104f784Smrg
15697104f784Smrg    siliconmotion 1.6.0
15707104f784Smrg
15717104f784Smrgcommit c0e80b14a8af7c9df44919b2df58030e59ecbf88
15727104f784SmrgAuthor: Adam Jackson <ajax@redhat.com>
15737104f784SmrgDate:   Wed Mar 19 15:25:23 2008 -0400
15747104f784Smrg
15757104f784Smrg    Fix distcheck
15767104f784Smrg
15777104f784Smrgcommit e53d07525952e1281170db01c48d7a14a6983049
15787104f784SmrgAuthor: Adam Jackson <ajax@redhat.com>
15797104f784SmrgDate:   Wed Mar 19 15:24:11 2008 -0400
15807104f784Smrg
15817104f784Smrg    Death to RCS tags.
15827104f784Smrg
15837104f784Smrgcommit 46e68bf899754f6f70a0f5a7b0d42c5e208aaa5a
15847104f784SmrgAuthor: Dave Airlie <airlied@redhat.com>
15857104f784SmrgDate:   Mon Mar 10 13:53:00 2008 +1000
15867104f784Smrg
15877104f784Smrg    smi: add pciaccess support
15887104f784Smrg
15897104f784Smrgcommit 75182ca115cba8fcf31304aea88ca3d4b9aa66ac
15907104f784SmrgAuthor: Matthieu Herrb <matthieu.herrb@laas.fr>
15917104f784SmrgDate:   Sat Mar 8 23:49:58 2008 +0100
15927104f784Smrg
15937104f784Smrg    Makefile.am: nuke RCS Id
15947104f784Smrg
15957104f784Smrgcommit ae556406ab6c4de410b68b3c8bcebb434b3efc9d
15967104f784SmrgAuthor: Brice Goglin <bgoglin@debian.org>
15977104f784SmrgDate:   Tue Aug 7 10:00:25 2007 +0200
15987104f784Smrg
15997104f784Smrg    Define SILICONMOTION_VERSION* using PACKAGE_VERSION*
16007104f784Smrg
16017104f784Smrgcommit 1a803a8f91a931c00106f9d3d41cfa5d74c19f55
16027104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16037104f784SmrgDate:   Tue Mar 20 21:08:38 2007 -0400
16047104f784Smrg
16057104f784Smrg    minor fixup
16067104f784Smrg
16077104f784Smrgcommit 503027d38dab759277c0a67746ac205a1dfa9277
16087104f784SmrgAuthor: Dennis De Winter <dennis.de.winter@gmail.com>
16097104f784SmrgDate:   Fri Mar 16 21:29:19 2007 -0400
16107104f784Smrg
16117104f784Smrg    Fix UTS issues with flash
16127104f784Smrg    
16137104f784Smrg    Also remove safety padding on memory manager calculation
16147104f784Smrg
16157104f784Smrgcommit fe4114033f2853e2df8d37c490deba26bf0366e8
16167104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16177104f784SmrgDate:   Thu Mar 15 02:11:24 2007 -0400
16187104f784Smrg
16197104f784Smrg    hostdata blit UTS works, but SW is faster
16207104f784Smrg    
16217104f784Smrg    UTS is working, but SW is faster so leave it disabled
16227104f784Smrg
16237104f784Smrgcommit 62442ce9e62b484e4f2067e3c52c153cd356be2c
16247104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16257104f784SmrgDate:   Wed Mar 14 20:13:28 2007 -0400
16267104f784Smrg
16277104f784Smrg    more clock fixes
16287104f784Smrg
16297104f784Smrgcommit 6ff1241636e25d2c0f20bd14e92c8585f209aeb0
16307104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16317104f784SmrgDate:   Tue Mar 13 02:32:52 2007 -0400
16327104f784Smrg
16337104f784Smrg    bump to 1.5.1
16347104f784Smrg
16357104f784Smrgcommit b53db3bc5ba7648d392dc630ef47e57fb8a0afb4
16367104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16377104f784SmrgDate:   Tue Mar 13 02:31:30 2007 -0400
16387104f784Smrg
16397104f784Smrg    fix clk calculation on older lynx chips
16407104f784Smrg
16417104f784Smrgcommit 7d1392be291e99fd3dde2292b82423b5f78d3a21
16427104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16437104f784SmrgDate:   Tue Mar 13 00:44:29 2007 -0400
16447104f784Smrg
16457104f784Smrg    bump to 1.5.0
16467104f784Smrg
16477104f784Smrgcommit 449fedec0e38289d10d75799bbf995b0e7189911
16487104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16497104f784SmrgDate:   Tue Mar 13 00:13:35 2007 -0400
16507104f784Smrg
16517104f784Smrg    fix Solid()
16527104f784Smrg    
16537104f784Smrg    Unforunately, for 32 bpp solid fills the HW ignores alpha.
16547104f784Smrg
16557104f784Smrgcommit 6d40f87d6cddde2d88f25be686b6392449cdecf1
16567104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16577104f784SmrgDate:   Mon Mar 12 23:58:41 2007 -0400
16587104f784Smrg
16597104f784Smrg    remove spurious waitqueue() line
16607104f784Smrg
16617104f784Smrgcommit 452cabd6e3870b832cb19c8ad8a1fce27eef9c48
16627104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16637104f784SmrgDate:   Mon Mar 12 01:11:16 2007 -0400
16647104f784Smrg
16657104f784Smrg    Update copyright.
16667104f784Smrg
16677104f784Smrgcommit 55266778ac693582131acae80def32211e09f18f
16687104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16697104f784SmrgDate:   Mon Mar 12 01:02:53 2007 -0400
16707104f784Smrg
16717104f784Smrg    switch the engine to quick start mode
16727104f784Smrg    
16737104f784Smrg    Rather than writing to the engine command register for every
16747104f784Smrg    operation, set quick start mode, and the operation executes
16757104f784Smrg    automatically when the width register is written.
16767104f784Smrg
16777104f784Smrgcommit 4b37b514907da4a567261569eaebcc5a35aff6db
16787104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16797104f784SmrgDate:   Mon Mar 12 00:12:23 2007 -0400
16807104f784Smrg
16817104f784Smrg    fixup waitqueue slots
16827104f784Smrg
16837104f784Smrgcommit 493c93de288437501fd898800bce45300379ebc3
16847104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16857104f784SmrgDate:   Sun Mar 11 18:49:48 2007 -0400
16867104f784Smrg
16877104f784Smrg    more exa fixups, disable UTS for now.
16887104f784Smrg
16897104f784Smrgcommit c1d6373624428c8c52e4d1d295b1d77ed75391a0
16907104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16917104f784SmrgDate:   Sun Mar 11 16:22:05 2007 -0400
16927104f784Smrg
16937104f784Smrg    engine likes to use blit command for solid fills
16947104f784Smrg
16957104f784Smrgcommit 9db380c99decdb9ab7fbf481788a5b63a84cd6e0
16967104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
16977104f784SmrgDate:   Sun Mar 11 15:53:29 2007 -0400
16987104f784Smrg
16997104f784Smrg    fix postscalar shift
17007104f784Smrg
17017104f784Smrgcommit b6082e628289221864e96ebc41ce93d8efe2d2ce
17027104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17037104f784SmrgDate:   Sun Mar 11 14:09:45 2007 -0400
17047104f784Smrg
17057104f784Smrg    support 32 bpp
17067104f784Smrg
17077104f784Smrgcommit 3ebbc2e55a1584e01949ec760501ac4a3c086b04
17087104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17097104f784SmrgDate:   Sun Mar 11 13:40:06 2007 -0400
17107104f784Smrg
17117104f784Smrg    fix up vclk1 setup
17127104f784Smrg
17137104f784Smrgcommit 3e62ec8736ea9ea64a2c0c5c41df9c6d742397ca
17147104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17157104f784SmrgDate:   Tue Mar 6 02:42:52 2007 -0500
17167104f784Smrg
17177104f784Smrg    revert the last commit.
17187104f784Smrg    
17197104f784Smrg    FBBase already take the register offset into account.
17207104f784Smrg
17217104f784Smrgcommit 7da75a99159f80f215ee409377128f7dcbc4064d
17227104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17237104f784SmrgDate:   Tue Mar 6 02:38:02 2007 -0500
17247104f784Smrg
17257104f784Smrg    fix memoryBase
17267104f784Smrg    
17277104f784Smrg    pSmi->FBOffset is the offset from the start of the framebuffer
17287104f784Smrg    pScrn->fbOffset is the aperture offset where the framebuffer
17297104f784Smrg    starts
17307104f784Smrg
17317104f784Smrgcommit ba0b2492269ea81e91f7ce4fb8da618187a3997f
17327104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17337104f784SmrgDate:   Tue Mar 6 02:24:08 2007 -0500
17347104f784Smrg
17357104f784Smrg    first pass at UTS
17367104f784Smrg
17377104f784Smrgcommit e650ca36da5cf7614e4f1a0a524eadb46b1cc21d
17387104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17397104f784SmrgDate:   Mon Mar 5 23:58:25 2007 -0500
17407104f784Smrg
17417104f784Smrg    fix up EXA code
17427104f784Smrg
17437104f784Smrgcommit c5b23ba581a3a4395b528d4ed824d5df986527e4
17447104f784SmrgAuthor: Dennis De Winter <de.winter.dennis@gmail.com>
17457104f784SmrgDate:   Sun Mar 4 23:17:57 2007 -0500
17467104f784Smrg
17477104f784Smrg    Initial import of EXA support
17487104f784Smrg    
17497104f784Smrg    Based on Dennis' code from bug 8721 with some minor
17507104f784Smrg    changes by me.
17517104f784Smrg
17527104f784Smrgcommit cf83ef7685609cd9daea193b4c842d232edcf506
17537104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17547104f784SmrgDate:   Sun Mar 4 17:18:10 2007 -0500
17557104f784Smrg
17567104f784Smrg    actually calculate and use vclk1
17577104f784Smrg
17587104f784Smrgcommit 3030e5a6afda5d05ddee5b586295a9e608b7a0de
17597104f784SmrgAuthor: Alex Deucher <alex@botch2.com>
17607104f784SmrgDate:   Sun Mar 4 02:45:55 2007 -0500
17617104f784Smrg
17627104f784Smrg    Whitespace and formatting changes
17637104f784Smrg
17647104f784Smrgcommit 606971fc8a323b0b33bb43524941b4bae6a0c334
17657104f784SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com>
17667104f784SmrgDate:   Tue Feb 27 13:04:31 2007 -0800
17677104f784Smrg
17687104f784Smrg    renamed: .cvsignore -> .gitignore
17697104f784Smrg
17707104f784Smrgcommit 4b3d28435d2f046d48a38694d89166fe38b00597
17717104f784SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com>
17727104f784SmrgDate:   Tue Feb 27 13:04:01 2007 -0800
17737104f784Smrg
17747104f784Smrg    Replace XFree86 references in man page
17757104f784Smrg
17767104f784Smrgcommit 3ff1d1aaf93df90f3a96b87bd8447db44b1722f5
17777104f784SmrgAuthor: Alex Deucher <alex@samba.(none)>
17787104f784SmrgDate:   Wed Jan 10 21:58:47 2007 -0500
17797104f784Smrg
17807104f784Smrg    only idle the engine on mode switches
17817104f784Smrg    
17827104f784Smrg    on the initial mode set the engine doesn't idle
17837104f784Smrg    for some users.
17847104f784Smrg
17857104f784Smrgcommit 72c1d44182a49dbd502bbdc0b48f69a43ad5aed0
17867104f784SmrgAuthor: Adam Jackson <ajax@benzedrine.nwnk.net>
17877104f784SmrgDate:   Fri Oct 13 18:41:44 2006 -0400
17887104f784Smrg
17897104f784Smrg    Bump to 1.4.2
17907104f784Smrg
17917104f784Smrgcommit 36bbaaf3f44321fc7bb8ff1b71ff1d7f87f3b19b
17927104f784SmrgAuthor: Alex Deucher <alex@samba.(none)>
17937104f784SmrgDate:   Sat Sep 16 15:48:54 2006 -0400
17947104f784Smrg
17957104f784Smrg    make siliconmotion build again.  somehow a bunch of defines in
17967104f784Smrg    regsmi.h got lost?  commit 9a58bc9adbc982680dd8df27caeb9a5819f2adad looks
17977104f784Smrg    like the culprit, but siliconmotion has built fine subsequent to that commit.
17987104f784Smrg    Not sure exactly what's going on.
17997104f784Smrg
18007104f784Smrgcommit c090b2d97dbedfc278a4691b70cf3f73f9799aa6
18017104f784SmrgAuthor:  <alex@samba.(none)>
18027104f784SmrgDate:   Thu Jul 20 23:35:30 2006 -0400
18037104f784Smrg
18047104f784Smrg    - add dualhead support for lynx chips (pretty limited due to severe hardware
18057104f784Smrg    limitations -- I'll improve it a bit at some point)
18067104f784Smrg    - small driver clean ups
18077104f784Smrg
18087104f784Smrgcommit 845d45cd2066be53f6e2e53d5af6375045dac6e2
18097104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
18107104f784SmrgDate:   Sat Apr 8 01:43:52 2006 +0000
18117104f784Smrg
18127104f784Smrg    Bump to 1.4.1 for Xv changes.
18137104f784Smrg
18147104f784Smrgcommit 2951e947c56909c9d51bf3f937502d0f682b1d76
18157104f784SmrgAuthor: Aaron Plattner <aplattner@nvidia.com>
18167104f784SmrgDate:   Fri Apr 7 23:13:59 2006 +0000
18177104f784Smrg
18187104f784Smrg    Add a DrawablePtr argument to the XV functions to pave the way for
18197104f784Smrg        redirected video.
18207104f784Smrg
18217104f784Smrgcommit 9a316eaea700e3a356f922506bf2c79e00fd9d83
18227104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
18237104f784SmrgDate:   Fri Apr 7 20:58:57 2006 +0000
18247104f784Smrg
18257104f784Smrg    Unlibcwrap. Bump server version requirement. Bump to 1.4.0.
18267104f784Smrg
18277104f784Smrgcommit c394f38c9a998eebec134a9a77ced46b9c005b9d
18287104f784SmrgAuthor: Luc Verhaegen <libv@skynet.be>
18297104f784SmrgDate:   Wed Feb 8 16:52:34 2006 +0000
18307104f784Smrg
18317104f784Smrg    SiliconMotion: Clean up insane pScrn->clock usage.
18327104f784Smrg
18337104f784Smrgcommit 2453cfe259dec826fceab3cff1b2c3803d3d8042
18347104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18357104f784SmrgDate:   Wed Dec 21 02:30:02 2005 +0000
18367104f784Smrg
18377104f784Smrg    Update package version for X11R7 release.
18387104f784Smrg
18397104f784Smrgcommit e398882fba13cd081916d2ff04ead4f9023c9bfb
18407104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
18417104f784SmrgDate:   Mon Dec 19 16:25:54 2005 +0000
18427104f784Smrg
18437104f784Smrg    Stub COPYING files
18447104f784Smrg
18457104f784Smrgcommit 818baab410deef2b3a3b6653dd2134dea29e98de
18467104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18477104f784SmrgDate:   Thu Dec 15 00:24:19 2005 +0000
18487104f784Smrg
18497104f784Smrg    Update package version number for final X11R7 release candidate.
18507104f784Smrg
18517104f784Smrgcommit 6c95cd7b0ac0c113c25bf985365f3ccb1d30d7c9
18527104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18537104f784SmrgDate:   Tue Dec 6 22:48:37 2005 +0000
18547104f784Smrg
18557104f784Smrg    Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
18567104f784Smrg
18577104f784Smrgcommit 10d5542f95e86463b96cc1fd31378473c2394bc0
18587104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18597104f784SmrgDate:   Sat Dec 3 05:49:35 2005 +0000
18607104f784Smrg
18617104f784Smrg    Update package version number for X11R7 RC3 release.
18627104f784Smrg
18637104f784Smrgcommit 8180ea0cb0df275831b900836d9387bb2a730de4
18647104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18657104f784SmrgDate:   Fri Dec 2 02:16:10 2005 +0000
18667104f784Smrg
18677104f784Smrg    Remove extraneous AC_MSG_RESULT.
18687104f784Smrg
18697104f784Smrgcommit 73e22f89e205a61c315ffaca63cc7f5ab1f2df5f
18707104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
18717104f784SmrgDate:   Tue Nov 29 23:30:03 2005 +0000
18727104f784Smrg
18737104f784Smrg    Only build dlloader modules by default.
18747104f784Smrg
18757104f784Smrgcommit 8b156b75c37fb642d6c680cc9fb5361fb0a8ff74
18767104f784SmrgAuthor: Alan Coopersmith <Alan.Coopersmith@sun.com>
18777104f784SmrgDate:   Mon Nov 28 22:04:10 2005 +0000
18787104f784Smrg
18797104f784Smrg    Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
18807104f784Smrg        update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
18817104f784Smrg
18827104f784Smrgcommit 8ad5ff0aa74eabc5b4dca2e0422d36713415b1b1
18837104f784SmrgAuthor: Eric Anholt <anholt@freebsd.org>
18847104f784SmrgDate:   Mon Nov 21 10:49:18 2005 +0000
18857104f784Smrg
18867104f784Smrg    Add .cvsignores for drivers.
18877104f784Smrg
18887104f784Smrgcommit 0d4f340f197b14dacc5c33d82f0094ee1f9bb2a8
18897104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18907104f784SmrgDate:   Wed Nov 9 21:15:20 2005 +0000
18917104f784Smrg
18927104f784Smrg    Update package version number for X11R7 RC2 release.
18937104f784Smrg
18947104f784Smrgcommit 280644786854eea8e8dbe7873e6c79d18f8048f0
18957104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
18967104f784SmrgDate:   Tue Nov 1 15:08:54 2005 +0000
18977104f784Smrg
18987104f784Smrg    Update pkgcheck depedencies to work with separate build roots.
18997104f784Smrg
19007104f784Smrgcommit bcc4f2555d4e4fa7ba2cf022165d3dd8ef331cd9
19017104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
19027104f784SmrgDate:   Wed Oct 19 02:48:04 2005 +0000
19037104f784Smrg
19047104f784Smrg    Update package version number for RC1 release.
19057104f784Smrg
19067104f784Smrgcommit 2da8c99697874a012dccfc582561a0b89e111ecd
19077104f784SmrgAuthor: Alan Coopersmith <Alan.Coopersmith@sun.com>
19087104f784SmrgDate:   Tue Oct 18 00:01:54 2005 +0000
19097104f784Smrg
19107104f784Smrg    Use @DRIVER_MAN_SUFFIX@ instead of $(DRIVER_MAN_SUFFIX) in macro
19117104f784Smrg        substitutions to work better with BSD make
19127104f784Smrg
19137104f784Smrgcommit 9f9d3fcd3dca04b7d960d8777e8f8ba612fa1510
19147104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
19157104f784SmrgDate:   Mon Oct 17 22:57:35 2005 +0000
19167104f784Smrg
19177104f784Smrg    More 1.7 braindamage: define EXTRA_DIST in terms of @DRIVER_NAME@ instead
19187104f784Smrg        of indirectly
19197104f784Smrg
19207104f784Smrgcommit 286bf9de5baebd75ca129e50af9dc5f66dbf4e4f
19217104f784SmrgAuthor: Alan Coopersmith <Alan.Coopersmith@sun.com>
19227104f784SmrgDate:   Mon Oct 17 00:09:05 2005 +0000
19237104f784Smrg
19247104f784Smrg    Use sed & cpp to substitute variables in driver man pages
19257104f784Smrg
19267104f784Smrgcommit 0db428f930db99d70897ca90b9ec0e130f4e6635
19277104f784SmrgAuthor: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
19287104f784SmrgDate:   Tue Sep 27 22:04:08 2005 +0000
19297104f784Smrg
19307104f784Smrg    Add some more documentation files for siliconmotion driver
19317104f784Smrg
19327104f784Smrgcommit bdc896858ed819dcb79bb7443bfa57d63c8e0fad
19337104f784SmrgAuthor: Daniel Stone <daniel@fooishbar.org>
19347104f784SmrgDate:   Thu Aug 18 09:03:48 2005 +0000
19357104f784Smrg
19367104f784Smrg    Update autogen.sh to one that does objdir != srcdir.
19377104f784Smrg
19387104f784Smrgcommit a3add2e05412767c49ca1c0a1069cd5805ea09e9
19397104f784SmrgAuthor: Kevin E Martin <kem@kem.org>
19407104f784SmrgDate:   Fri Jul 29 21:22:44 2005 +0000
19417104f784Smrg
19427104f784Smrg    Various changes preparing packages for RC0:
19437104f784Smrg    - Verify and update package version numbers as needed
19447104f784Smrg    - Implement versioning scheme
19457104f784Smrg    - Change bug address to point to bugzilla bug entry form
19467104f784Smrg    - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
19477104f784Smrg        reenable it)
19487104f784Smrg    - Fix makedepend to use pkgconfig and pass distcheck
19497104f784Smrg    - Update build script to build macros first
19507104f784Smrg    - Update modular Xorg version
19517104f784Smrg
19527104f784Smrgcommit 5754df51d9b0f8bb8dac7b8c0072da929f1241f0
19537104f784SmrgAuthor: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
19547104f784SmrgDate:   Tue Jul 26 22:12:58 2005 +0000
19557104f784Smrg
19567104f784Smrg    Build system for siliconmotion
19577104f784Smrg
19587104f784Smrgcommit 4b98eb4b30d694139d5e597c445d65d637ab7472
19597104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
19607104f784SmrgDate:   Mon Jul 11 02:29:59 2005 +0000
19617104f784Smrg
19627104f784Smrg    Prep for modular builds by adding guarded #include "config.h" everywhere.
19637104f784Smrg
19647104f784Smrgcommit 6389dd3dc1259865a4b5fcc6b6c7b3f4429593cf
19657104f784SmrgAuthor: Daniel Stone <daniel@fooishbar.org>
19667104f784SmrgDate:   Fri Jul 1 22:43:12 2005 +0000
19677104f784Smrg
19687104f784Smrg    Change all misc.h and os.h references to <X11/foo.h>.
19697104f784Smrg
19707104f784Smrgcommit 1dc135becf5898950e04c84cc4d87870840140c1
19717104f784SmrgAuthor: Alex Deucher <agd5f@yahoo.com>
19727104f784SmrgDate:   Thu Jun 30 00:14:26 2005 +0000
19737104f784Smrg
19747104f784Smrg    - add 800x480 mode to smi driver (bug 3639)
19757104f784Smrg
19767104f784Smrgcommit 0670b675c2133dd7c29f79bdf17d24d64181537d
19777104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
19787104f784SmrgDate:   Sat Jun 25 21:16:56 2005 +0000
19797104f784Smrg
19807104f784Smrg    Bug #3626: _X_EXPORT tags for video and input drivers.
19817104f784Smrg
19827104f784Smrgcommit 39112b558fdccd2b0a15b8e41d6215e3b0e6e7bd
19837104f784SmrgAuthor: Daniel Stone <daniel@fooishbar.org>
19847104f784SmrgDate:   Wed Apr 20 12:25:29 2005 +0000
19857104f784Smrg
19867104f784Smrg    Fix includes right throughout the Xserver tree:
19877104f784Smrg    change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
19887104f784Smrg    change "foo.h", "extensions/foo.h" and "X11/foo.h" to
19897104f784Smrg        <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
19907104f784Smrg    change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
19917104f784Smrg
19927104f784Smrgcommit c34e24d83a0f84ad90b7cbaba78d54cc779f74d5
19937104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
19947104f784SmrgDate:   Fri Sep 17 03:04:54 2004 +0000
19957104f784Smrg
19967104f784Smrg    Bug #1192: Remove cfb support from drivers where its use is an option.
19977104f784Smrg        Delete xf24_32bpp, as s3virge was the last user. Fix up some comments
19987104f784Smrg        to refer to fb rather than cfb.
19997104f784Smrg
20007104f784Smrgcommit 61457616aea5d5d7d98e869d3b24e989c2404d6b
20017104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
20027104f784SmrgDate:   Mon Aug 16 09:13:15 2004 +0000
20037104f784Smrg
20047104f784Smrg    Bug #1087: Make sure all the *Weak symbols are documented in the import
20057104f784Smrg        list, so the loader knows not to complain about unresolved symbols when
20067104f784Smrg        an optional module isn't loaded. This typically manifests as warnings
20077104f784Smrg        about fbdevHW symbols when the user isn't using the framebuffer
20087104f784Smrg        console.
20097104f784Smrg
20107104f784Smrgcommit 74176c460a4f5206cbc7cd7b9f48d1b6cedae7cb
20117104f784SmrgAuthor: Eric Anholt <anholt@freebsd.org>
20127104f784SmrgDate:   Sat Jul 31 01:21:51 2004 +0000
20137104f784Smrg
20147104f784Smrg    Rename some COMPOSITE macros and enums to avoid conflicting with the
20157104f784Smrg        COMPOSITE extension's new macro. These appear to only be used
20167104f784Smrg        internally.
20177104f784Smrg
20187104f784Smrgcommit 0f239a7f12e1c0a0b7ede424b0f1eb0fe189e9d6
20197104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
20207104f784SmrgDate:   Sat Jul 31 01:21:19 2004 +0000
20217104f784Smrg
20227104f784Smrg    Change several LoaderSymbol calls introduced by the bug #400 patch to
20237104f784Smrg    *Weak() resolver functions.
20247104f784Smrg
20257104f784Smrgcommit 865ba2a4c1107bb82d22ed648f8a1d63c833d6fc
20267104f784SmrgAuthor: Adam Jackson <ajax@nwnk.net>
20277104f784SmrgDate:   Fri Jul 30 20:30:54 2004 +0000
20287104f784Smrg
20297104f784Smrg    Bug #400 (partial): Driver fixes for the dlloader. When using dlloader, all
20307104f784Smrg        framebuffer formats except cfb and the overlay modes should work, and
20317104f784Smrg        r128 and radeon need to be loaded from the ati driver (both issues to
20327104f784Smrg        be fixed soon). Tested on i740, s3virge, mach64, tdfx, vesa, and vga
20337104f784Smrg        drivers. elfloader users shouldn't be affected.
20347104f784Smrg
20357104f784Smrgcommit 9a58bc9adbc982680dd8df27caeb9a5819f2adad
20367104f784SmrgAuthor: Eric Anholt <anholt@freebsd.org>
20377104f784SmrgDate:   Wed Jun 16 09:23:38 2004 +0000
20387104f784Smrg
20397104f784Smrg    DRI XFree86-4_3_99_12-merge import
20407104f784Smrg
20417104f784Smrgcommit 1f957fb7e44762197b0fc5a3b7def25c7888929a
20427104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20437104f784SmrgDate:   Wed May 26 16:24:09 2004 +0000
20447104f784Smrg
20457104f784Smrg    Fixing setting of physical framebuffer base for several drivers. C&T
20467104f784Smrg        driver: Fixed setting of minimal clocks for HiQV chipsets. Neomagic
20477104f784Smrg        driver: improved support for lowres double scan modes.
20487104f784Smrg
20497104f784Smrgcommit 445708ff1249e96628dd6b11e20f83e568fb4ad1
20507104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20517104f784SmrgDate:   Fri Apr 23 19:45:06 2004 +0000
20527104f784Smrg
20537104f784Smrg    Merging XORG-CURRENT into trunk
20547104f784Smrg
20557104f784Smrgcommit 90141c8b6da8e6b57f2e4bae486a3d39c4069a8b
20567104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20577104f784SmrgDate:   Sun Mar 14 08:33:31 2004 +0000
20587104f784Smrg
20597104f784Smrg    Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
20607104f784Smrg
20617104f784Smrgcommit 1082b4e0760359234cb5f51b953bbffc65d594ec
20627104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20637104f784SmrgDate:   Wed Mar 3 12:12:24 2004 +0000
20647104f784Smrg
20657104f784Smrg    Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
20667104f784Smrg
20677104f784Smrgcommit b1c51d42211f715043a3252550ef2fde1a3065e5
20687104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20697104f784SmrgDate:   Thu Feb 26 13:35:54 2004 +0000
20707104f784Smrg
20717104f784Smrg    readding XFree86's cvs IDs
20727104f784Smrg
20737104f784Smrgcommit 2ae35696e96079b192c2cac4e092f6deeb300325
20747104f784SmrgAuthor: Egbert Eich <eich@suse.de>
20757104f784SmrgDate:   Thu Feb 26 09:23:23 2004 +0000
20767104f784Smrg
20777104f784Smrg    Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
20787104f784Smrg
20797104f784Smrgcommit ac5b2461e620df7026eefda6a389127e7d41f67d
20807104f784SmrgAuthor: Kaleb Keithley <kaleb@freedesktop.org>
20817104f784SmrgDate:   Fri Dec 19 20:55:14 2003 +0000
20827104f784Smrg
20837104f784Smrg    XFree86 4.3.99.902 (RC 2)
20847104f784Smrg
20857104f784Smrgcommit 14cd4af100e1deb1c7b63e9f19587e38ce1f08f2
20867104f784SmrgAuthor: Kaleb Keithley <kaleb@freedesktop.org>
20877104f784SmrgDate:   Tue Nov 25 19:28:39 2003 +0000
20887104f784Smrg
20897104f784Smrg    XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
20907104f784Smrg
20917104f784Smrgcommit 1684aa7a21a194b6e7dd518f3895c9b2dfce229a
20927104f784SmrgAuthor: Kaleb Keithley <kaleb@freedesktop.org>
20937104f784SmrgDate:   Fri Nov 14 16:48:55 2003 +0000
20947104f784Smrg
20957104f784Smrg    XFree86 4.3.0.1
20967104f784Smrg
20977104f784Smrgcommit 78af703cb019a60cc93843efcd4889ccb15abd13
20987104f784SmrgAuthor: Kaleb Keithley <kaleb@freedesktop.org>
20997104f784SmrgDate:   Fri Nov 14 16:48:55 2003 +0000
21007104f784Smrg
21017104f784Smrg    Initial revision
2102