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