ChangeLog revision 7104f784
1commit abf1ba79f2bfe61f24cfa43deb0400d7c5f95bd5
2Author: Francisco Jerez <currojerez@riseup.net>
3Date:   Tue Apr 21 21:37:45 2009 +0200
4
5    Increase the maximum clock value to 200MHz on SM712.
6    
7    The default MCLK setting was higher than the clock limit, and it
8    failed.
9
10commit 41e5c49024d4e27a7be3da02017000a22b59016f
11Author: Francisco Jerez <currojerez@riseup.net>
12Date:   Tue Apr 21 21:36:10 2009 +0200
13
14    Don't attempt monitor detection on SM712.
15    
16    The databook says nothing about it, and it doesn't work.
17
18commit 6691678b5f04d52a1e08f9eaa6d511df9b7eeb4d
19Author: Jamie Lentin <jm@lentin.co.uk>
20Date:   Thu Mar 19 21:54:12 2009 +0000
21
22    Stop clearing of "VESA compliance power down mode" bit
23    
24    Clearing this bit causes an OQO 01+ w/SMI720 to power down the LCD,
25    leave it alone.
26    
27    Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
28    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
29
30commit 05480382c508bd27c1755405518ce9c339f0f80e
31Author: Matthieu Herrb <matthieu.herrb@laas.fr>
32Date:   Fri Mar 13 21:19:16 2009 +0100
33
34    Fix direct access to IO space on chipsets with no IOBase mapping.
35    
36    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
37
38commit e62807140ede74e262ed70c846017dc3506b511e
39Author: Niels de Vos <niels.devos@wincor-nixdorf.com>
40Date:   Wed Feb 11 10:10:13 2009 +0100
41
42    siliconmotion: Fix disabling of debugging if SMI501_CLI_DEBUG is set to 0
43    
44    Due to checking if SMI501_CLI_DEBUG is defined, some debugging will
45    be enabled if SMI501_CLI_DEBUG is set to 0. A single #if should be
46    used instead. Some debugging code already does this.
47    
48    Signed-off-by: Niels de Vos <niels.devos@wincor-nixdorf.com>
49    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
50
51commit 0b34c4a29fcf45ac24361b4691cca0fd99cc3a3f
52Author: Francisco Jerez <currojerez@riseup.net>
53Date:   Wed Feb 4 03:49:08 2009 +0100
54
55    Wait for vertical retrace before writing registers at SMILynx_CrtcDPMS_*
56
57commit 1d46cca27b0d38d5355b5f93dd0ed0fe4f250d3f
58Author: Francisco Jerez <currojerez@riseup.net>
59Date:   Tue Feb 3 22:15:45 2009 +0100
60
61    Drop the outdated configuration options documentation in README.
62
63commit 64f722c3121a8f28cfc5b532ddec0ac83095ac95
64Author: Francisco Jerez <currojerez@riseup.net>
65Date:   Tue Feb 3 22:17:33 2009 +0100
66
67    Minor corrections at the man page.
68
69commit 94d9c659b71c84db46fa279d9d8736e1589e155c
70Author: Francisco Jerez <currojerez@riseup.net>
71Date:   Tue Feb 3 22:18:14 2009 +0100
72
73    Set dualhead to on by default on SM72x chipsets.
74
75commit 4d98e9c6a6e357ed736cd312a957c1e0a7b1d36b
76Author: Francisco Jerez <currojerez@riseup.net>
77Date:   Wed Feb 4 01:56:20 2009 +0100
78
79    Dynamically switch virtual refresh mode.
80    
81    Probably this makes dualhead mode more useful because it makes
82    possible displaying video on the LCD as long as the CRT output is
83    disabled or cloned.
84
85commit 1c57cfa814504c33fcad51115d77f2d166fb7903
86Author: Alan Coopersmith <alan.coopersmith@sun.com>
87Date:   Fri Jan 30 21:00:17 2009 -0800
88
89    Add README with pointers to mailing list, bugzilla & git repos
90
91commit 2aee107d992cb58bfbb2f527cfa73ea9f6957998
92Author: Alan Coopersmith <alan.coopersmith@sun.com>
93Date:   Fri Jan 9 16:33:43 2009 -0800
94
95    Remove xorgconfig & xorgcfg from See Also list in man page
96
97commit fdc2c50682b240e5966e4e5a7b45552ee2043bfc
98Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
99Date:   Mon Dec 29 18:41:05 2008 -0200
100
101    Bump release to 1.7.0.
102    
103      This driver supports smi 50x chipsets, randr 1.2, exa, dual head,
104    etc.
105    
106      Special thanks to Teddy Wang <teddy.wang AT siliconmotion.com.cn>
107    for support and help in responding and/or triaging hardware related
108    questions.
109
110commit 97eb5da1040ca7882e60b86ffaf25b6c021a3df5
111Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
112Date:   Mon Dec 29 18:39:54 2008 -0200
113
114    Use util-macros XORG_CHANGELOG and XORG_CWARNFLAGS.
115    
116      Also correct only compilation warning about possibly
117    uninitialized variable.
118
119commit deb2f845dd370ba819d02cb21b8a481827497af6
120Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
121Date:   Mon Dec 29 18:35:22 2008 -0200
122
123    Simplification and redundancy removal in video code.
124    
125      FOURCC_YV12 and FOURCC_I420 handling also was buggy. First it was
126    doing a noop by swapping offset2 and offset3 values twice, and second,
127    swap is not required when using smi 501/502 CSC video.
128      Changed SMI_DisplayVideo0501_CSC() to not set static values to
129    registers in a possible loop, if there is clipping.
130
131commit 46741589529809c17aa1e9719492a4b623de6ddf
132Author: Francisco Jerez <currojerez@gmail.com>
133Date:   Sat Dec 27 00:52:05 2008 +0100
134
135    Some more quirks for the SM712.
136    
137    * Program the MCLK to 157MHz on startup.
138    * Adjust the requested pixel clock if it's near one of the known
139      stable frequencies.
140    * Prefer the clock alternative with post scalar turned on when the
141      denominator is even.
142
143commit 439adf4455c651926040eeeec52a092f14f3196b
144Author: Francisco Jerez <currojerez@gmail.com>
145Date:   Mon Dec 22 17:28:35 2008 +0100
146
147    Add support for clone mode on Lynx chipsets.
148
149commit 2b3fa385a6da4be5ad6719dd115834b96d1ea3e3
150Author: Francisco Jerez <currojerez@gmail.com>
151Date:   Sun Dec 21 19:37:14 2008 +0100
152
153    Add a CRTC/Output implementation using BIOS for modesetting.
154    
155    After the RandR1.2 implementation the "UseBIOS" option wasn't actually
156    programming the hardware through VESA BIOS, this brings back that
157    functionality.
158
159commit 75b1c309f1418d70e8cf112744ff95f372d4ef75
160Author: Francisco Jerez <currojerez@gmail.com>
161Date:   Sun Dec 21 16:58:29 2008 +0100
162
163    Fix SMI_CrtcShadowAllocate.
164
165commit 068de9c0a302aba21e4d6a27eb6d330375ff2d2f
166Author: Francisco Jerez <currojerez@gmail.com>
167Date:   Sun Dec 21 16:02:57 2008 +0100
168
169    Allocate crtc->funcs and output->funcs in the heap.
170
171commit 373440667636d4e3214028710e33ac89d8f18ff1
172Author: Francisco Jerez <currojerez@gmail.com>
173Date:   Sun Dec 21 13:51:01 2008 +0100
174
175    Cleanup the Lynx register saving/restoring code.
176    
177    Save some registers not previously tracked, and use pSmi->mode instead
178    of continuously reading the hardware state.
179
180commit 67a1e4b090d6647b6c45f1534c67d9ea8a223d44
181Author: Francisco Jerez <currojerez@gmail.com>
182Date:   Sat Dec 20 15:41:13 2008 +0100
183
184    Add some quirks for SM712 modesetting.
185
186commit 7f252345c0c6b260c5b37aff98a22679eb5c6c82
187Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
188Date:   Fri Dec 19 21:15:01 2008 -0200
189
190    Enable the SMI 501/502 command list interpreter in a "debug" build.
191    
192      To enable it, set SMI501_CLI_DEBUG to 1 in smi.h, and use
193    Option "AcellMethod "EXA"
194    in the Device section of /etc/X11/xorg.conf
195    This code is enabled mainly for debug purposes. To make if have an
196    actual performance gain (like when using a sm50x with a "low profile"
197    "main" processor") it should be required to actually do busy loops
198    in kernel mode (and hope the costs of context switch will pay it).
199    In kernel mode it is possible to wait for an interrupt being triggered
200    when the command list is processed, or when the 2d engine is idle.
201    
202      This commit should be functional, but, mainly due to debug messages,
203    should be significantly slower then a build with MI501_CLI_DEBUG
204    defined to 0.
205
206commit 6a91bcc111902c45cc75c865893848b7c6c0a0b1
207Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
208Date:   Thu Dec 18 20:47:24 2008 -0200
209
210    Add definitions for the SMI 501/502 "command list interpreter".
211    
212      This also changes some bit operations to use a "bitfield" equivalent
213    one, with named fields, that should make it easier to understand what
214    is being tested.
215    
216      The enum smi_cli_cmd_code in smi_501.h is code that was added to a
217    experimental smi_drm.h, but the hardware only supports basic 2d accel,
218    and to compensate for the extra overhead for maintaining a command
219    list (assuming it worked correctly) it would be required to have a
220    special handling, like calling an ioctl to do the "busy loop" in the
221    kernel (that is, should wait for an irq or a timeout).
222    
223      The problem is that even if waiting for a idle engine before crafting
224    a command, and waiting again after submitting the command, there would
225    be corruption on screen after some time. So, the "busy loop" in the
226    kernel would only be useful if still using direct writes to mmio
227    registers.
228
229commit 5a07709ae41600bc02205753c64d764f11838240
230Author: Francisco Jerez <currojerez@gmail.com>
231Date:   Tue Dec 16 02:39:49 2008 +0100
232
233    Fix crashes when switching VTs with EXA enabled.
234    
235    Call ModifyPixmapHeader on SMI_EnterVT to update the screen pixmap
236    address tracked by EXA.
237    
238    Set memoryBase in the ExaDriverRec to NULL when switching out: some
239    pixmap could get allocated near the former aperture address and it
240    could be erroneously considered as being in offscreen memory.
241
242commit 47bcfb505886d16ff864f26a9cfa5f43b5da710e
243Author: Francisco Jerez <currojerez@gmail.com>
244Date:   Sat Dec 13 19:13:50 2008 +0100
245
246    Enable linear memory mode on SMI_MapMmio.
247    
248    Set UseBIOS to off by default for SM720. Some improvements on the
249    debugging output.
250
251commit 6f972c9022fc3a315b60246a69399807443d2ca0
252Author: Francisco Jerez <currojerez@gmail.com>
253Date:   Thu Dec 11 16:21:17 2008 +0100
254
255    Fall back to UseBIOS off when VBEInit fails.
256
257commit 1fc340dcf0abd7fa0837fef2c711aaec4fa8bcb8
258Author: Francisco Jerez <currojerez@gmail.com>
259Date:   Thu Dec 11 16:18:50 2008 +0100
260
261    Fix XAA SolidFill with 32 bpp framebuffer.
262
263commit dfc4510e8f4adeed520be47621ad429bc2d18f7e
264Author: Francisco Jerez <currojerez@gmail.com>
265Date:   Thu Dec 4 15:35:22 2008 +0100
266
267    Some corrections on the Lynx modesetting code.
268    
269    This fixes 1280x1024 modes on the VGA output with dual head on.
270    Also, solve a build problem when using -DSMI_DEBUG, as pointed by
271    Richard Schwarting.
272
273commit 6e1d29d19b205eac85b2f83de126ba88501e9b74
274Author: Francisco Jerez <currojerez@gmail.com>
275Date:   Tue Dec 2 23:43:26 2008 +0100
276
277    Disable screen centering on mode initialization.
278
279commit 695a6066cfe7ad0e568edc596b8704bb9bf8754f
280Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
281Date:   Sat Dec 13 04:20:20 2008 -0200
282
283    Janitor/maintenance patches.
284    
285    o Define HAVE_XMODES in config.h.
286    o Correct the LEAVE() macro declaration when SMI_DEBUG is defined.
287    o Remove prototype for SMI_DGAInit() if HAVE_XMODES is not defined.
288    o Properly scale value read from sm501 CURRENT_CLOCK register, to
289      print an appropriate message on startup.
290
291commit 191cbd3f8419cc5b428f262607d7a8594e574f67
292Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
293Date:   Fri Dec 12 15:50:53 2008 -0200
294
295    Unless there is a xorg.conf option, don't modify mclck neither mxclck.
296    
297      The option set_mclck was renamed to just MCLK, and a new MXCLCK option
298    was added for smi501/502 chips.
299      Note that previously, on MSOC chips, the set_mclck option actually
300    changed mxclck, what is now done by the MXCLK option.
301      The manpage was also update to reflect the options usage.
302      A new SMI501_FindMemClock() function was added, as a possible
303    placeholder for choosing alternate clocks when programming MMIO 0x68.
304    But it should be noted that the smi 501 databook says:
305    Miscellaneous Timing
306    	Read/Write MMIO_base + 0x000068
307    	Power-on Default 0x00000000
308    	[...]
309    	5:4 Divider Output Frequency Selection for Second PLL.
310    		00: 336 MHz.
311    		01: 288 MHz.
312    		10: 240 MHz.
313    		11: 192 MHz.
314    while the 502 databook says:
315    	Miscellaneous Timing
316    	Read/Write MMIO_base + 0x000068
317    	Power-on Default 0b0000.00xx.0000.1001.0000.1001.0000.0000
318    	[...]
319    	5:4 Reserved These bits are reserved.
320    but still tells to refer to those bits.
321
322commit a2352ff23787f37530dff68e03028dd78925e4b4
323Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
324Date:   Fri Nov 28 20:23:11 2008 -0200
325
326    Properly restore console on the smi 501/502.
327    
328      The current kernel framebuffer module expects accelerations registers
329    in the default boot state, otherwise, it will display some corruption,
330    or not correctly clear the screen, among other side effects.
331      Now it should be restoring everything the kernel framebuffer relies
332    on not being modified.
333
334commit 5a65559e12452a47f9848c47cfa6e30cfb871f0b
335Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
336Date:   Fri Nov 28 19:49:20 2008 -0200
337
338    DGA is dependent on HAVE_XMODES.
339
340commit 06c78cee718a86b1521c1fc1075d08bb9ad257f1
341Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
342Date:   Tue Nov 25 19:57:05 2008 -0200
343
344    Remove smi_dga.c and polylines code from smi_xaa.c.
345    
346      DGA was also not being properly test to not enable the pSmi fields,
347    but since the dga implementation is very basic, it is better to just
348    remove it (if compiling the sources on pre 1.4 X Server, DGA will be
349    disabled).
350    
351      The polylines code in xmi_xaa.c was already if 0'ed for some time,
352    but it may be reinstantiated to accelerate (back) xaa rotated modes.
353    Currently only randr+exa accelerates rotated modes.
354
355commit 9570cfdc132b0acb1d2b70edc6a3a5a812ef9691
356Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
357Date:   Tue Nov 25 15:07:39 2008 -0200
358
359    Ensure the engine is idle before switching to a virtual terminal.
360    
361      At least in the smi501/502, it may even completely lock in some special
362    cases (like when there is a browser playing some youtube video).
363      The code in SMI_CloseScreen() was almost identical to SMI_LeaveVT(),
364    so it now just call SMI_Leave() if required.
365
366commit 26ce0b163d9cf44ec1bc1d1bd460887aa5b405a7
367Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
368Date:   Mon Nov 24 15:15:43 2008 -0200
369
370    Use a single debug macro for leaving functions.
371    
372      The LEAVE() macro, when debug is disabled, now is defined as:
373    <hash>define LEAVE(...)		return __VA_ARGS__
374    This avoids the requirement of a return statement after the LEAVE()
375    macro call, what can be confusing.
376
377commit 2057d7ae05ef269f75a4d53fe5c4914a10856cb1
378Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
379Date:   Wed Nov 19 16:22:29 2008 -0200
380
381    Declare DGA fields only when not using xf86DiDGAInit.
382
383commit c2e318eaec3ac281457acdca4ea10fa368f646d3
384Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
385Date:   Mon Nov 17 20:08:49 2008 -0200
386
387    Enable XAA and randr rotated modes.
388    
389      Use the same logic for offscreen memory management as used in
390    smi_video.c. This also makes the functions SMI_AllocateMemory and
391    SMI_FreeMemory no longer static in smi_video.c.
392
393commit ed6aba73259a1412e23a954d6a8dba439ad98a8a
394Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
395Date:   Fri Nov 14 22:37:56 2008 -0200
396
397    Correct EXA+Randr+rotated mode.
398    
399      The smi 501/502 cannot rotate-blt more than 32 bytes at a time.
400    Patch based on smi's sample smi_shadow.c.
401      XAA + randr + rotated mode currently not supported.
402
403commit 85d118ee288fe7aa32db003bfa322ddf06944bf6
404Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
405Date:   Fri Nov 14 22:04:17 2008 -0200
406
407    Don't explicitly call the cursor routines.
408    
409      On the MSOC, the hardware cursor was remaining on screen, when using
410    EXA and a randr rotated mode.
411
412commit cd10af22240b9df7c264b15c483d8cc4505ee359
413Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
414Date:   Fri Nov 14 20:36:09 2008 -0200
415
416    Only compile smi_dga.c when xf86DiDGAInit is not available.
417    
418      Besides reducing driver size, this should make DGA+EXA accelerated.
419
420commit 41ef793b0ed6014ed49bef011259f977833aef5d
421Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
422Date:   Fri Nov 14 19:24:45 2008 -0200
423
424    Correct regressions in CSCVideo
425    
426      Commit 0870d46718fe4e01953efd63cec46c54140b20f9 broke the clipping
427    code. That has been corrected in this patch. Anyway, the hardware color
428    space conversion should not be hidden down in the driver code, instead
429    it should be usable by external programs as well, instead of having
430    some applications doing it by software.
431
432commit be226bfaad76e7b48e006fe55ebae09b044ba4b7
433Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
434Date:   Fri Nov 14 16:56:46 2008 -0200
435
436    MSOC: Hide cursor on mode setup when using software cursor.
437    
438      The kernel framebuffer module uses the hw cursor for the console cursor,
439    so the driver must ensure it is hidden when setting a video mode.
440
441commit 5b8583fc2e5626ed98877858158d9687d7c94469
442Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
443Date:   Fri Nov 14 15:47:52 2008 -0200
444
445    Be more liberal about mode width validation.
446    
447      The code was inherited from first import of latest smi sources, but
448    the driver actually programs a mode, so there is no need to check if
449    there will be a table entry with register contents matching the requested
450    mode.
451
452commit ffb4be763ced82158a3a1d2e06fb0e81815e057b
453Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
454Date:   Thu Nov 13 20:01:18 2008 -0200
455
456    Don't restore alpha registers, as they are not being modified.
457    
458      Restoring the registers "without need" caused some instability, with
459    random locks.
460
461commit 6b6da04d566ec5b9d723c9f28791c604f76526dd
462Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
463Date:   Thu Nov 13 19:44:14 2008 -0200
464
465    Changed to use panel plane tl and tr to center modes smaller then panel size.
466    
467      The code is under "<hash>ifdef USE_PANEL_CENTER", as it is buggy, and
468    regardless of value set to right and bottom, it will crop from 0 to
469    mode-width/mode-height, and then display a lot of screen artifacts, due
470    to improper programming. Either way, the CRT in clone mode will display
471    correctly.
472
473commit d2709b1af22a06b24606ec8c01f39f1ca27ca8d3
474Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
475Date:   Thu Nov 13 18:00:46 2008 -0200
476
477    Enable gamma correction on the MSOC.
478
479commit 0870d46718fe4e01953efd63cec46c54140b20f9
480Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
481Date:   Tue Nov 11 19:14:36 2008 -0200
482
483    Correct a problem in CSC video on the smi 501/502.
484    
485      This significantly simplify the function SMI_DisplayVideo0501_CSC(),
486    but the real cause of the problem that this patch corrects is that
487    whenever MMIO 0x1000fc bit 24 (Vertical Linear Filter Control)  is
488    set, the last line of the rendered video will display only noisy,
489    regardless of video being rendered 1x1, or scaled up or down.
490
491commit 09644ad3da4cf4c2576532137fdc81156e9c06e6
492Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
493Date:   Tue Nov 11 15:34:27 2008 -0200
494
495    Disable detection of crt for the smi 501/502.
496    
497      As described by siliconmotion, it does not work on the smi 502.
498    Does it work on older revisions? Keeping <hash>ifdef'ed out for now
499    as it hopefully will be corrected in a newer hardware revision.
500
501commit caac648932df69419b8f86c5793a6b33f5997099
502Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
503Date:   Tue Nov 11 15:06:15 2008 -0200
504
505    Implement an argb cursor using the alpha layer.
506    
507      The code is <hash>ifdef'ed out by <hash>if SMI_CURSOR_ALPHA_PLANE
508    because the smi 502 hardware is buggy, but it appears to have worked
509    for some older hardware revisions (by looking at code available at
510    ftp.siliconmotion.com.tw).
511      Keeping it at least for now, as it serves as a simple way to reproduce
512    the problems described in smi.h.
513
514commit 61dd360a30c8e530185bc71b134c287ab1cdde2c
515Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
516Date:   Tue Nov 11 14:47:58 2008 -0200
517
518    Add support for the reading/writing the alpha layer registers.
519
520commit d018ea2272cc1938cc0236eeb210692c1d1fd1df
521Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
522Date:   Tue Nov 11 14:35:36 2008 -0200
523
524    Correct wrong offset value for secondary hardware cursor.
525    
526      Hardware cursor is still disabled in dual head mode due to some problems,
527    usually when having both panel and crt mapped to the same address, what
528    appears to confuse the "modes" code.
529
530commit f97c57873cd7622c373a394548ed435c1975abbc
531Author: Francisco Jerez <currojerez@gmail.com>
532Date:   Sat Nov 8 21:40:49 2008 +0100
533
534    Remove unused fifo_* options.
535
536commit 418b28028e69d14e74bf673be56123e99103e5bf
537Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
538Date:   Sat Nov 8 16:04:58 2008 -0200
539
540    Remove the ZoomOnLCD option and update manpage for PCIRetry.
541    
542      ZoomOnLCD controlled if Ctrl/Alt/+ or Ctrl/Alt/- could be used to
543    reprogram the mode on the panel. The option was not used, and now, if
544    different resolutions could be used, it should be advertised by randr.
545    
546      PCIBurst and PCIRetry options are now enabled by default.
547    
548      The fifo_xxx options need a review, as they appear to be associated
549    with the older WaitQueue macro, that did ignore its argument. But these
550    options are not used, and may be removed or reimplemented at some time.
551
552commit bbc38b2a14d748bb9d9e153fcdcb259e5b10bdc8
553Author: Francisco Jerez <currojerez@gmail.com>
554Date:   Fri Nov 7 16:57:50 2008 +0100
555
556    Update the man page
557    
558    Reflect changes in the configuration options, additional supported
559    chipsets and RandR1.2 interface.
560
561commit 7f8b7535a9a905c1d6c1d89cd1dd4dd506025429
562Author: Nathael Pajani <nathael.pajani@ed3l.fr>
563Date:   Thu Mar 20 07:25:00 2008 -0800
564
565    Bit twelve on CPR00 bitfield is not bit eleven...
566
567commit 98969b1b96244085ff5b0c76d2a463c1e436bcfa
568Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
569Date:   Thu Nov 6 16:35:15 2008 -0200
570
571    Use the CRT Monitor Detect MSOC register.
572    
573      Probably I misunderstood the usage of this register, as it will always
574    show the same value, regardless of having a crt connected to the "vga"
575    port or not. Only difference is that while the detect bit is set,
576    the crt will be blank. This patch should be more of a placeholder for
577    a possible correction, but it should not cause any side effects, unless
578    the data field can be zero on a valid situation.
579      In my test computer, this field, in base 2 is always 1000000010000100,
580    what doesn't really look like data in rgb 8:8:8...
581
582commit 87a3cc0652666c1796fd56f00810834193f3eca0
583Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
584Date:   Tue Nov 4 16:38:12 2008 -0200
585
586    Allow setting modes larger then panel for secondary output.
587    
588      Sample usage on sm502:
589    $ DISPLAY=:0 xrandr --output VGA --newmode 1280x1024 109.00 1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
590    $ DISPLAY=:0 xrandr --addmode VGA 1280x1024
591    $ DISPLAY=:0 xrandr --output VGA --mode 1280x1024 --pos 768x176
592      Last command assuming using XAA (with ``Virtual 2048 1024''), so that it
593    will have panel in top-left, and crt in bottom-right.
594
595commit 1d7b9547e1d37601f14410857c22f256e5c74f14
596Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
597Date:   Tue Nov 4 15:57:12 2008 -0200
598
599    Add CSCVideo option to smi 501/502.
600    
601      This code is an adaptation of SMI sample implementation.
602      CSCVideo is an alternate way to render video, that should reduce memory
603    bandwidth usage, and uses the color space conversion hardware to render
604    video directly to the framebuffer memory.
605      When using randr dual head mode, currently only XAA is supported. As it
606    has a fixed format framebuffer (when using the Virtual xorg.conf option).
607      This patch also ensures that pScrn->displayWidth, pScrn->virtualX and
608    pScrn->virtualY are only changed by the driver when using EXA.
609
610commit 93308d067c93126dd0aba9b718d9e0ba28dde9f4
611Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
612Date:   Thu Oct 30 19:07:40 2008 -0200
613
614    Make MSOC work with EXA offscreen manager.
615
616commit e5cd9e4640555b9a3d4fab205e4b77faaca89d89
617Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
618Date:   Thu Oct 30 19:05:40 2008 -0200
619
620      Update memory detection for MSOC.
621    
622      Use "local memory" field of mmio 0x010 and not "system memory", as
623    it uses system memory values whenever there is a choice (just sets
624    bits to zero).
625
626commit 5acf7e22c256637ba7139733cdba1c59557dd7ff
627Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
628Date:   Thu Oct 30 19:01:54 2008 -0200
629
630      Disable HW cursor in dualhead mode in smi 501/502
631    
632      Other chipsets are doing the same. But this apparently is to circumvent
633    a problem in randr/cursor implementation, that appears to not work very
634    well with hardware that supports two hw cursors, but not argb cursors.
635
636commit c756ed67cbcf5bdd40c300627802d8bcd3d95123
637Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
638Date:   Wed Oct 29 19:17:54 2008 -0200
639
640      SMI501/502 cursor fixes.
641    
642      Use separate buffers for crt and panel hw cursors.
643      Describe, and workaround a problem with Dualhead and hw cursor enabled.
644    It still has the inconvenient of having a blinking X when exiting the server
645    or switching to a VT; maybe should also save the image currently configured
646    also (and restore on exit), or just disable hw cursor on dual head mode.
647      Also revert change to not initialize video on dualhead. Better to have
648    fully functional video only on panel, that can be resized, then non
649    resizable video..
650
651commit 2671776999a5add36e1aeaad4080bfccedc2b1a5
652Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
653Date:   Tue Oct 28 19:45:31 2008 -0200
654
655    Update msoc to use randr cursor routines
656    
657      pSmi->IsSecondary was not used, and there should not exist two
658    instances of the driver managing the same card.
659      Macro CHECK_SECONDARY() was dependant on a second instance of the driver
660    for the same card, and also removed.
661      Some rework should still be done in the cursor code, as it sometimes,
662    when displaying different data, will leave the hw cursor visible, while
663    using an argb cursor.
664
665commit 91b5613fb07fec0f319623ca7ec1efd67f04379b
666Author: Francisco Jerez <currojerez@gmail.com>
667Date:   Tue Oct 28 00:13:55 2008 +0100
668
669    Remove shadowfb based rotation support.
670    
671    Also done some clean up, like removing unused/redundant members of the
672    screen private structure, and removing now unused configuration file
673    options.
674
675commit 0faeddb208d8fade4737be4bcadb8814696bd7b4
676Author: Francisco Jerez <currojerez@gmail.com>
677Date:   Tue Oct 28 00:06:37 2008 +0100
678
679    Lynx hardware cursor code adapted to the CRTC interfaces.
680
681commit 5d151781515cf2e3af1322ce6ed5f8d871c05791
682Author: Francisco Jerez <currojerez@gmail.com>
683Date:   Mon Oct 27 23:37:30 2008 +0100
684
685    Changes in the video overlay clipping code.
686    
687    Clip the video to the CRTC viewport by using
688    xf86_crtc_clip_video_helper, and allow XV in
689    dual head mode.
690
691commit 486e92399f09b9d765d03184fe29a32b3bc4ecc5
692Author: Francisco Jerez <currojerez@gmail.com>
693Date:   Mon Oct 27 23:12:36 2008 +0100
694
695    Simple EXA Composite implementation.
696    
697    * Implementation of the PictOpSrc render operation with a
698      source coordinate transformation through 2D engine rotate-BITBLTs.
699    * Fix EXA Copy and Solid in 24 bpp packed color mode.
700
701commit c0447d33c82829248e642b3156fd9a3c0d0eb709
702Author: Francisco Jerez <currojerez@gmail.com>
703Date:   Mon Oct 27 22:39:52 2008 +0100
704
705    Some corrections in the CRTC code.
706    
707    * Make screen resizing behave better with XAA.
708    * Move some local variable declarations to the top of
709      the function definition to conform ANSI C.
710    * Make the Lynx panel modesetting code to actually
711      program the panel sync pulse width in dualhead mode.
712    * Also, fix a crash when using libpciaccess
713      (the memory wasn't being unmapped).
714
715commit f2c83671cccc42345bfc9b506365936bbb6b9ef0
716Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
717Date:   Fri Oct 24 17:55:02 2008 -0200
718
719    Make Dualhead option functional.
720    
721      Slightly change clock selection code to start using 501 compatible values,
722    before checking 502 values, if it is a 502.
723      DPMS for the VGA/second output was being set with bits inverted, that is
724    dpms-on was programmed as dpms-off and vice versa. This was one of the
725    reasons of dual head not working.
726      Corrected wrong vsync programming for the crt. Cut&paste/typo caused
727    programming vsync with hsync values, and thus, never getting the crt
728    to accept the mode being programmed.
729      If adding:
730      Option "Dualhead" "True"
731    to xorg.conf, now you should be able to do things like:
732    $ DISPLAY=:0.0 xrandr --output VGA --right-of LVDS
733    $ DISPLAY=:0.0 xrandr --output VGA --below LVDS
734    and so on.
735      *Iff* there is some way to not have any limitations for video playback,
736    this option should be made default or automatically configured.
737
738commit 1efe36ed5cf5b0931daa915ca3ce231b78168d87
739Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
740Date:   Wed Oct 22 19:06:06 2008 -0200
741
742    Make UseFBDev option functional again.
743    
744      It is mean't to be a fallback option, that as long as kernel boots
745    in framebuffer mode, the X Server should also work.
746      Correct incorrect value being checked when printing state of Dualhead
747    option.
748      The M value when programming PLL3 is actually an 8 bits integer,
749    so correct it and comments about it.
750
751commit dd083c26de400cee8c67977f46cf90d048b22ff9
752Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
753Date:   Tue Oct 21 19:41:55 2008 -0200
754
755    Use existing "Dualhead" option in MSOC.
756    
757      If Dualhead is set, it will attempt to use setups that allow different
758    outputs with different contents, instead of crt always cloning panel.
759      Still not fully functional.
760
761commit 197b4231586b9ada1c590a01b8dd7a5fcda936e6
762Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
763Date:   Tue Oct 21 14:22:01 2008 -0200
764
765    Crt interface corrections.
766    
767      Correct wrong clock calculation for the 501 clock setting, that is used
768    for pre 502 panel interface and crt.
769      Adds a few new programmable fields to MSOCRegRec:crt_display_ctl.
770      Call SMI501_CrtcAdjustFrame() after adjusting a mode, instead of
771    before changing registers.
772
773commit 71990e0beece6e60ffbffccfdf56e5a71641a120
774Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
775Date:   Mon Oct 20 15:09:09 2008 -0200
776
777    Don't change M1XCLK unless option specified in xorg.conf.
778    
779      Also add more complete description of programmable clocks.
780
781commit 8b7ce66e26113ec5859566e7f3d0fd15d3e29eaa
782Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
783Date:   Fri Oct 17 18:58:45 2008 -0300
784
785    Update sm502 pll3 programming.
786    
787      Also print the value of sm502 registers (should be a noop on sm501).
788      Added the frequency field to the MSOCRegRec's misc_ctl, as it is
789    a read/write registers, and changing bit 24 may change the logic
790    of pll3 programming (needs clarification with SMI).
791
792commit de1b633f916f4fcaaa95b226a8622d37041c86d4
793Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
794Date:   Thu Oct 16 15:41:44 2008 -0300
795
796    Revert/modify some RandR changes to reenable XAA.
797    
798      XAA was not initialized anymore in RandR patch, but it is still the
799    default accel method. Also reenable offscreen fb manager.
800      At least on the MSOC OEM sample (using X Server 1.4), needs some more
801    work as EXA is crashing in a call to exaPrepareAccess() when switching
802    to a terminal; this seems to be related to disabling exa offscreen
803    pixmaps on the smi501.
804
805commit e020afa359434b4da06ef8509a3e504423f824d2
806Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
807Date:   Thu Oct 16 15:11:36 2008 -0300
808
809    Correct incorrect pll3 calculation.
810    
811      Double value must be truncated when calculating the difference from the
812    possible clock and requested clock.
813
814commit f686d1b4fdd11d3d969ff4db21128d7867c9044d
815Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
816Date:   Tue Oct 14 19:05:31 2008 -0300
817
818    Extra MSOC tweaks for the RandR1.2 changes.
819    
820      The "prototype" computer no longer locks, and only "missing feature"
821    from before the patch is that video and Xaa don't work (only with Exa).
822      For the moment, just force crt as not connected, and set the proper
823    registers to make the secondary output clone the panel.
824
825commit fc722212d297a5141245beb7c8ae396606a8f221
826Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
827Date:   Tue Oct 14 15:46:52 2008 -0300
828
829    Remove dependency on xf86cvt.c.
830    
831      It actually was not added in a previous commit (due to using git reset
832    to remake a commit, and not readding it), but now, changed only call
833    xf86CVTMode if it is available in the X Server, otherwise, for older
834    X Servers, a modeline should be specified in xorg.conf.
835
836commit 5adb3b502ef79827b89fb11926b6198c3a57d2e6
837Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
838Date:   Tue Oct 14 14:48:42 2008 -0300
839
840    Minor corrections for smi501 for the randr1.2 integration.
841    
842      Also correct printing information about MCLK in the smi501/502, it
843    should print M2CLK (aka M1CLK o the 502) as it is the clock that
844    controls video engine/memory.
845
846commit 6e0837305533f940adb7a09f9b013077c0888f2d
847Author: Francisco Jerez <currojerez@gmail.com>
848Date:   Sat Oct 11 14:24:48 2008 +0200
849
850    RandR1.2 initial implementation (WIP)
851    
852    Moved most of the Lynx-specific code out of the main
853    functions at smi_driver.c to some new files: smilynx_hw.c
854    (With CRTC-independent code like global hardware initialization and
855    mode saving/restoring), smilynx_crtc.c (With the CRTC-local
856    procedures) and smilynx_output.c (Output power management, DDC and
857    monitor detection, currently).
858    
859      Done something similar with the SMI501 code: split
860    SMI501_ModeInit in three separate functions: SMI501_HWInit that does
861    the global initialization, and the CRTC mode_set callbacks
862    SMI501_ModeSet_crt and SMI501_ModeSet_lcd at smi501_crtc.c.
863    
864      The SMI501_ModeSet code is divided into SMI501_WriteMode_common,
865    SMI501_WriteMode_lcd and SMI501_WriteMode_crt, each one updates a
866    different register set in the hardware.
867    
868      Inside smi_crtc.c, there is mainly hardware independent
869    code... Initial CRT controller allocation, shadows, rotation and
870    framebuffer resizing code.
871    
872      The shadow code currently relies on EXA... I'm not sure what are the
873    problems of the EXA implementation in MSOC. Does it work?
874    
875      I think it would be a good thing to get rid of XAA soon: The next
876    thing I'll be working on will be EXA Composite... I hope it's possible
877    to get EXA acceleration working at least as fast as the current
878    XAA. (Although Teddy Wang confirmed me that the SMI720 DMA engine is
879    broken...)
880    
881      So, the patch adds some features like new Lynx dualhead modesetting
882    code, but it probably breaks some other things:
883    * Video Overlay: I suppose it does work with EXA activated. It seems
884    it is also possible to have simultaneous overlays in both CRTCs with the
885    Lynx hardware (I have some code for this, but still work in progress).
886    * Hardware Cursor (It needs more integration in the CRTC interfaces).
887    * The old Shadow FB / rotation code, which we should probably drop.
888    
889      These are in my TODO list... Along with some more cleaning and other
890    minor issues in the modesetting code.
891    
892      About the SMI501 RandR1.2 implementation... I suppose it's specially
893    lacking per-output DPMS (The DPMS field in the System Control register
894    only affects the CRT, doesn't it?).
895
896commit 605199b1fa80d5a65e11a38270f6d0974466d1dc
897Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
898Date:   Thu Oct 9 18:51:50 2008 -0300
899
900    Add a PanelSize/60Hz CVT mode at driver initialization
901    
902      This driver is expected to be used with XServer 1.4 or newer, but a
903    (probably temporary) copy of xf86cvt.c was also added to the build.
904      This modeline automatically added implies it would not be required
905    to specify one in xorg.conf, as it should not be uncommon "non standard"
906    modes, like 800x480 or 1024x600.
907
908commit 55052509d75492f0936273686826c51fcbc831c1
909Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
910Date:   Thu Oct 9 18:12:02 2008 -0300
911
912    Make the input frequency in SMI501_FindPLLClock a variable
913    
914      Instead of using a fixed 24Mhz input frequency, as "unofficially"
915    specified by SMI, a guess of using a 12 multiplier was used, and it
916    corrects the screen flicker problem as well as make a secondary output
917    work again.
918
919commit 61f814d1c8ad9440bab89eda44e64b01ba0eb703
920Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
921Date:   Wed Oct 8 18:36:11 2008 -0300
922
923    Rewrite WaitQueue and WaitIdle accell macros
924    
925      WaitQueue() did receive an unused parameter, that was removed. The
926    parameter was unused since version 1.0 in XFree86 CVS, so probably
927    nobody knows for what it was used.
928      WaitIdle() now also replaces WaitIdleEmpty(), as an idle engine
929    should also have an empty fifo.
930      SMI_SubsequentScreenToScreenCopy() was changed to use WaitIdle()
931    instead of WaitQueue() before submitting the commands to the engine.
932    This fixes a nasty lockup when using XaaOffscreenPixmaps (what is
933    desired/wanted to help improve performance), and the lockup in the
934    MSOC was clearly due to an engine overrun, when sending commands
935    faster then the engine could process.
936
937commit 1656fb6de5308ff586676e8d6a8aa8d4579ebf4c
938Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
939Date:   Fri Oct 3 18:55:14 2008 -0300
940
941    Don't use the 1 multiplier on older chipsets.
942    
943      It is not in the specs, so don't use it on chipsets older then the 502.
944      Some review should be done in SMI501_FindPLLClock() as when hardcoding it
945    to use the clock selection code for older chips, it appears to choose a
946    better refresh rate (no flicking at 1024x600).
947
948commit da789f720e2d772dff92adc10aa024a6a921fbbd
949Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
950Date:   Fri Oct 3 16:30:23 2008 -0300
951
952    Simplify regsmi.h by removing most unused SMI501 defines.
953    
954      The values that should be used, should also have a more meaningful name,
955    as something like:
956    doesn't help much, and the fact that these "ports" can be accessed from
957    several "bases" may be confusing also, as there is SCRBase, DCRBase,
958    FPRBase, DPRBase, CPRBase (and IOBase). The 501 code should probably be
959    changed to just use IOBase, as currently it uses SCRBase, that happens
960    to be at pSmi->MapBase + 0x0000.
961    
962      This patch also completely transforms the WaitQueue macro in a noop
963    for the MSOC. In SMI sample code it is almost the current code, just
964    that the macro body is commented out. Hopefully this will be addressed
965    soon.
966
967commit bacddd1d31a5f3de14477914958f27b6f081c125
968Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
969Date:   Fri Oct 3 15:10:55 2008 -0300
970
971    Rename macro "bitfield" to "bits" and correct a wrong division.
972
973commit 22a7fd6711e2a40633981cd21fa3808c9246f13a
974Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
975Date:   Thu Oct 2 16:11:59 2008 -0300
976
977    Remove the IN_SEQ and OUT_SEQ macros.
978    
979      These macros access vga registers, but don't make it clear in their name.
980
981commit 973f68bf0464c4d2aec2acf7c8e6db201782f4ec
982Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
983Date:   Thu Oct 2 15:48:51 2008 -0300
984
985    Rewrite some macros to not have side effects in if/else nesting.
986
987commit 82e17c442c3969938435a8b46d2679995af64425
988Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
989Date:   Thu Oct 2 15:25:41 2008 -0300
990
991    Add support for the extra divider in the alternate pixel clock setting.
992    
993      Also remove extra includes that were not used.
994
995commit b32769305275519f7f4d1e0871a71514636ca026
996Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
997Date:   Wed Oct 1 18:27:27 2008 -0300
998
999    Correct clock programming for the SMI 501/502
1000    
1001      The new code is based on the file SM502Clock.pdf provide by SMI engineers
1002    (many thanks). And now it is expected to work correctly. The few remaining
1003    details that are unclear (for the extended 502 modesetting mode) should be
1004    resolved soon, and those are:
1005    *  MMIO:0x74:bit15 (PLL Output Divided by 2)
1006    	0: Disable.
1007    	1: Enable.
1008       (does this mean it can use a 12MHz clock instead of 24? or anything else?)
1009    *  Should bit 31 of "current clock" always be set when using the alternate
1010       mode setting for the 502? The alternate modesetting allows a very closer
1011       pixel clock programming option, usually with 0 difference from the
1012       xf86 mode.
1013    
1014      I will ask SMI to make SM502Clock.pdf also available in the ftp site, it
1015    is just 3 pages, or possibly even better, an update for the existing
1016    documentation.
1017
1018commit ea34e20852ee6007e2f0fcacd5068c151865be1e
1019Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1020Date:   Tue Sep 30 17:49:25 2008 -0300
1021
1022    Remove the macro field, and rename the detail structure to f.
1023    
1024      Now access to bitfields looks like:
1025    record->register.f.field
1026      instead of:
1027    field(record->register, field)
1028      what should be easier to read and understand.
1029
1030commit a91872f813a6299f32b9f833876c54afd0b53aaa
1031Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1032Date:   Tue Sep 30 17:33:36 2008 -0300
1033
1034    Update to match the SMI 502 chipset specs.
1035    
1036      The 502 is a superset of the 501, also recognized as PCI_CHIP_SMI501.
1037      The driver is only known to work with smi_501 chipset
1038    "SM501 VoyagerGX Rev. AA (rev c0)".
1039
1040commit e830572bca9b8eaf50a36a12d1fe31cdfec6280e
1041Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1042Date:   Fri Sep 26 19:43:45 2008 -0300
1043
1044    Don't always program CRT clock and registers.
1045    
1046      This causes instabilities, and there was also a bug where it would
1047    tell the crt to not select panel data (due to removing the "else").
1048
1049commit 314eecb6628840a942ff2e76d8c7402301feac77
1050Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1051Date:   Fri Sep 26 19:30:17 2008 -0300
1052
1053    Properly check pScrn->driverPrivate before deferencing it.
1054    
1055       Add missing divide by 1000 in smi_501.c, as well as a FIXME comment
1056    about a crash, and possible cause as well as possible ways to program
1057    other clocks.
1058
1059commit f18222ffcff8e78b3cfcd220cad06a1daa3fc920
1060Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1061Date:   Fri Sep 26 17:55:42 2008 -0300
1062
1063      Don't try to find the closest clock, just use highest one.
1064    
1065      Previous patch wasn't fully correct, just that the values were generating
1066    the same register dump as the smi 2.2.5 driver version.
1067      When correcting it to not mix Mhz and Khz in the math, the problems
1068    returned.... Anyway, it just works when selecting the highest clock, and
1069    the attached CRT will display the panel image. This is illogical, so maybe
1070    the specs are outdated... The previous code has been #ifdef'ed out in
1071    "CALC_CLOCK".
1072      Note that it still changes the boot default clock, from the default
1073    288Mhz to 336Mhz, and in this patch, it also always sets both, panel and
1074    crt clocks (what happens here, is that most likely, by doing this, it
1075    forces the hardware to "somehow" autoconfigure itself; will try to get
1076    some information from SMI about this, but this is the boot default,
1077    and what smi sources do...).
1078
1079commit bdba7c1397186cd15d519db55c2345db44990be4
1080Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1081Date:   Wed Sep 24 18:58:35 2008 -0300
1082
1083    Fix incorrect understanding of the pixel clock from specs.
1084    
1085      The clock that should be programmed is the bandwidth, and not the pixel
1086    clock itself. Based on analysis of register contents, after "importing"
1087    a slightly modified version of xf86ModeBandwidth() and properly converting
1088    values, now it properly programs both, the LCD and a "clone" CRT or just
1089    a secondary panel.
1090    
1091      Modes generated by either gtf or cvt correctly works.
1092    
1093      A (hopefully temporary) fallback was also added, and if the option
1094    "UseFBDev" is used, the driver will not attempt to set/modify the
1095    current video mode.
1096    
1097      TODO: Generate a modeline "on the fly", based on monitor configured
1098    specs, or some set of defaults, so that it should not be required to
1099    specify a modeline in xorg.conf.
1100
1101commit e64b3d63be2a4148c4d10ac160e2bd2f3e8c7fd3
1102Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1103Date:   Mon Sep 22 22:01:16 2008 -0300
1104
1105    Correct problems in clock setting.
1106    
1107      One clock must be changed at a time, first setting the pll value,
1108    then waiting for 16ms (one vsync), then setting the divider/shift
1109    values, and again waiting 16ms.
1110      Code was working after split of SMI501_ModeInit(), because some
1111    clocks were already using system boot default, but would most likely
1112    cause a crash when actually changing values (currently only p2_xxx
1113    or v2_xxx is changed, but it would cause problems on some system where
1114    the initial values don't match the ones set by the driver).
1115    
1116      TODO: Either don't change m2clk and mclk or ensure other values
1117    work correctly (don't change because the kernel should already
1118    have set those if a value other then the boot default should be
1119    used).
1120
1121commit 1f0af5ea50e3e3b2c9ed882f7ef2fb8871e780bd
1122Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1123Date:   Mon Sep 22 21:41:12 2008 -0300
1124
1125    Correct logic in sw cursor handling and add missing entries to .gitignore.
1126
1127commit 862cbd8c1845b54a38996b92e8e22d153f38cdd2
1128Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1129Date:   Mon Sep 22 19:09:12 2008 -0300
1130
1131    Split SMI501_ModeInit in two functions.
1132    
1133      This allows using alternate MSOCRegRec structures to set a mode.
1134    This should be useful to restore the initial mode.
1135
1136commit bcbf1854be851b8fa1ec3f384b11c312b0533bf3
1137Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1138Date:   Mon Sep 22 18:29:31 2008 -0300
1139
1140    Remove unused .cvsignore files.
1141
1142commit 1014ffe0a2c55119d6bfbcf632f3d4ebe77af212
1143Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1144Date:   Mon Sep 22 18:15:21 2008 -0300
1145
1146    Simplify hw cursor and sw cursor option handling.
1147    
1148      Also rename SMIRec field hwcursor to HwCursor, as there are few usages,
1149    and this way, match the case usage for other field names.
1150
1151commit 6b5c22d8680573c8a6b259d78ba3c8435514fde9
1152Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1153Date:   Mon Sep 22 17:05:21 2008 -0300
1154
1155    Rework/simplify debug macros.
1156    
1157      Instead of cut&paste of the name of the current function everywhere,
1158    just use cpp's __FUNCTION__ predefined macro.
1159      Create two macros to exit a function, named LEAVE() and RETURN().
1160    Functions returning void should call LEAVE() and then explicitly return
1161    for now. "Logged" function calls are indented, so a review was done to
1162    ensure functions with a ENTER() also have the proper exit macro.
1163      The DEBUG macro was changed to have variadic arguments, and this way
1164    it is no longer required to prefix arguments with VERBLEV, but now it
1165    also is not possible to use another "verbosity value", but it wasn't used
1166    in any of the DEBUG macro calls.
1167
1168commit cf7097c19b31671a53bc8161bd29b9f79f1d3d85
1169Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1170Date:   Mon Sep 22 14:25:04 2008 -0300
1171
1172    Fix a leak and minor cosmetic change.
1173    
1174      Leak was due to only releasing return value of xf86GetEntityInfo
1175    if the chipset was PCI_CHIP_SMI501.
1176      Cosmetic change was to log pci burst and pci retry default values
1177    as X_DEFAULT instead of X_PROBED.
1178
1179commit ee1e72a248b2df6522283c0dd3e5433d7f961c62
1180Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1181Date:   Fri Sep 19 18:06:20 2008 -0300
1182
1183    Kludge to not lock the SMI 501 when running at 8bpp.
1184
1185commit 9ae840a358959615020fa4adb76c1487231927f3
1186Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1187Date:   Fri Sep 19 18:00:16 2008 -0300
1188
1189    Add MSOC palette support to run at 8 bpp.
1190    
1191      Colors should be correctly set, but most output using Render is not
1192    properly drawn, i.e. anti aliased fonts, etc. Need to investigate
1193    further, but it should be a general problem, not exclusive to the
1194    driver.
1195
1196commit f4339a6a7aa077cb355dd23b77ea568ad2a481e3
1197Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1198Date:   Fri Sep 19 16:52:17 2008 -0300
1199
1200    Enable pci retry and pci burst by default.
1201    
1202      Rename fields pci_burst and NoPCIRetry to PCIBurst and PCIRetry,
1203    to match field names case usage, and updated logic for the removal
1204    of "No" from the pci retry option.
1205      Pci retry and pci burst greatly increase video playback speed,
1206    allowing smooth video play on the SMI 501.
1207
1208commit 782ef31a9273e33100ae6b4bd20a4d1d3f493aa4
1209Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1210Date:   Fri Sep 19 15:48:34 2008 -0300
1211
1212    Add initial exa support for SMI501.
1213    
1214      This just allows exa to run, with a minimal ammount of features avaiable.
1215
1216commit 5d9ab8195e692f78dd7e57e7d17d8b46f7f59221
1217Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1218Date:   Thu Sep 18 18:27:51 2008 -0300
1219
1220    Add a missing CHECK_SECONDARY macro call.
1221
1222commit 2876b55c3ed82b9be023acbfc4ddf993494c3c9b
1223Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1224Date:   Thu Sep 18 18:23:37 2008 -0300
1225
1226    Correct video offscreen memory allocation routines.
1227    
1228      It was always failing in the first allocation, if using XAA, what caused
1229    some players to not work correct. This is a major problem for the MSOC as
1230    it still only supports XAA.
1231      Also add a workaround for a hardware problem, as described in
1232    "SM501 Rev.AA engineering addendum v0.1.pdf"
1233    "A-27 PIXELS TOO BRIGHT ON VIDEO SHRINK".
1234
1235commit 79297e797de3497773539eb9f89e8594797ee512
1236Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1237Date:   Thu Sep 18 18:16:21 2008 -0300
1238
1239    Update for new smi_501 interfaces.
1240    
1241      This also adds some simplification for the driver code, by adding
1242    some function pointers to avoid the need to check the chipset everywhere.
1243      The new SMI_DetectMCLK function doesn't actually change pSmi->MCLK to
1244    avoid chances of it stoping working on non MSOC chipsets, as it
1245    previously not did set it, and for the MSOC, for the moment, default to
1246    whatever value is already set, i.e. doesn't reprogram it.
1247      Added new memory detection code for the MSOC, that better matches the
1248    documentation.
1249
1250commit 95e312b712a1e4a476ef31c5302faf77c22915a9
1251Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1252Date:   Thu Sep 18 18:10:54 2008 -0300
1253
1254      Complete rewrite of smi_501.c and smi_501.h.
1255    
1256      The previous version was dependant on kernel framebuffer, as it was
1257    just failing a test if not having a modeline defined, and in the test
1258    case, it is running at 1024x600.
1259      Now it properly programs the video hardware, and the procedure is
1260    expected to be very well documented.
1261
1262commit cf5132907e4709c872089fe2d79837b2de4e45b7
1263Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1264Date:   Tue Sep 2 18:16:41 2008 -0300
1265
1266    Rename global smi501 functions to have SMI501 prefix.
1267    
1268      Functions renamed were setDPMS -> SMI501_SetDPMS,
1269    regRead32 -> SMI501_Read32 and regWrite32 -> SMI501_Write32.
1270      Also moved SMI_SetDPMS to start of smi_501.c to have extern
1271    functions at start of the file.
1272
1273commit a2a090e10f031aed6dbf6d143d6ce8abdf7a2392
1274Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1275Date:   Tue Sep 2 17:55:16 2008 -0300
1276
1277    Correct all compiler warning messages.
1278    
1279      Code compiled with:
1280    gcc -Wall -Wbad-function-cast -Wdeclaration-after-statement \
1281        -Wmissing-prototypes -Wmissing-declarations -Wnested-externs \
1282        -fno-strict-aliasing -Wold-style-definition -Wpointer-arith \
1283        -Wstrict-prototypes
1284    
1285      This patch also makes most smi_501.c functions static, as they are not
1286    called from anywhere else.
1287      Also removed prototypes for non existent functions in smi_501.h.
1288
1289commit 2d5ba5f7310fa8e11f7349d116aa871a239ac35f
1290Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1291Date:   Tue Sep 2 16:32:31 2008 -0300
1292
1293    Correct xv video problems on MSOC.
1294    
1295      Set VIDEO_CLIP_TO_VIEWPORT as it is used in MSI sources, and also add
1296    proper code to detect panel size, as this information is used to manage
1297    offscreen memory (but shouldn't it be using pScrn->virtualY, etc?)
1298
1299commit e111c85d6cca3f2206b6bce119b284edccf0cd4f
1300Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1301Date:   Mon Sep 1 18:41:43 2008 -0300
1302
1303    Don't pretend this driver compiles on XFree86.
1304    
1305      Either remove check for XF86_VERSION_CURRENT or at least add the
1306    implementation of RegionsEqual() to smi_video.c.
1307
1308commit b23c5c5e434aaba2128abcae61a8564a62d2e7a1
1309Author: Francisco Jerez <currojerez@gmail.com>
1310Date:   Mon Sep 1 21:28:13 2008 +0200
1311
1312    Fix XAA, ShadowFB and VT switching for non-sm501 chipsets
1313    
1314    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1315
1316commit 6a01c87b7c75f698ff2b783f8d341526159ebfe2
1317Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1318Date:   Mon Sep 1 18:00:03 2008 -0300
1319
1320    Split SMI_MapMem in SMI_MapMem and SMI_MapMmio
1321    
1322      This is required because MSOC needs mmio to detect ammount of memory.
1323      The patch also creates a SMI_DetectMem() function, that should slightly
1324    simplify SMI_PreInit().
1325
1326commit c45ef4676812f72dcff53ba85e9fa95836704c75
1327Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1328Date:   Fri Aug 29 19:33:31 2008 -0300
1329
1330    Bump version to 1.6.1.
1331
1332commit 4eee032811d1487df9dcf94708b1bcafc7e63392
1333Author: Arnaud Patard <apatard@mandriva.com>
1334Date:   Fri Aug 29 19:33:31 2008 -0300
1335
1336    Correct a problem when handling i420 format.
1337    
1338    The problem was that the driver was converting i420->YV12 2 times
1339    instead of only once.
1340
1341commit 76c931e149917563485ae6ad2950aa28a531b0d1
1342Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1343Date:   Fri Aug 29 19:31:57 2008 -0300
1344
1345    Update MSOC video interface.
1346    
1347      This synchronizes smi_video.c with smi 2.2.5 sources.
1348
1349commit 0eb35f2065314807a604a44e571bbb898db23543
1350Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1351Date:   Fri Aug 29 19:20:54 2008 -0300
1352
1353    Update xaa and generic acceleration code for the MSOC.
1354    
1355      Currently, the support for EXA is not functional, neither is
1356    ShadowFB or bpp/depth other than 16.
1357
1358commit 375e35fc7df4a21c2e0bc933774cc2f5f29b89d1
1359Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1360Date:   Fri Aug 29 19:36:35 2008 -0300
1361
1362    MSOC doesn't access VGA registers or VBE/INT10
1363    
1364      This should be the biggest patch in the "merge". Done in a single chunk
1365    to have it compilable at all stages.
1366
1367commit 164d921465ae7b3a0fa2551358f7c0b5a18a425a
1368Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1369Date:   Fri Aug 29 18:47:14 2008 -0300
1370
1371    Add code to probe and recognize the SMI501 chipset
1372
1373commit db330497c3b757361ac9c3602b3a4ece0a401dd3
1374Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1375Date:   Fri Aug 29 15:58:16 2008 -0300
1376
1377    Change SILICONMOTION_NAME value
1378    
1379      xf86VDrvMsgVerb prints up to 14 characters prefix, where prefix has the
1380    format "%s(%d): " so, use name "SMI" instead of "Silicon Motion"
1381
1382commit 36309132aef067822a8901ce24fda817be58546d
1383Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1384Date:   Fri Aug 29 15:52:36 2008 -0300
1385
1386    Add initial support and macros for the MSOC.
1387    
1388    This patch add the new files and basic required definitions.
1389
1390commit 96166eafc2b0e5db627aa4f8b0422f953837772b
1391Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1392Date:   Fri Aug 29 14:48:44 2008 -0300
1393
1394    Fix build for removal of xf86Version.h
1395    
1396      This is the first patch of series to merge code from the version 2.2.5
1397    from SiliconMotion and code from
1398    http://cgit.freedesktop.org/~agd5f/xf86-video-smi501
1399    
1400      After the merge, work will continue, to correct some extra problems,
1401    and make it work with EXA at least (as only the Xorg version has
1402    EXA support).
1403
1404commit 682b9a1b97a82c7d084c63860a8c753cc45d9faf
1405Author: Francisco Jerez <currojerez@gmail.com>
1406Date:   Sat Aug 16 13:24:27 2008 +0200
1407
1408    Allow using XV and RandR rotation simultaneously.
1409    
1410     As it doesn't seem feasible to rotate the video, I did some modifications
1411    at SMI_PutImage and SMI_ClipVideo to make PutImage work (incorrectly) with
1412    rotation enabled. The image is displayed unrotated.
1413    
1414    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1415
1416commit f6110b1ef5934b45812ee95e70b1e64f44386dda
1417Author: Francisco Jerez <currojerez@gmail.com>
1418Date:   Sat Aug 16 13:08:25 2008 +0200
1419
1420    Some fixes in the EXA UTS/DTS code.
1421    
1422     In DTS:
1423      * It uses the screen Bpp inestead of the pixmap Bpp...
1424        this gives some problems when using pixmaps with different depth
1425        to the screen.
1426     In UTS:
1427      * aligned_pitch was computed from src_pitch inestead of the
1428        pixmap width.
1429      * When writing the target coordinates to the DE registers, it does
1430        y*0xFFFF inestead of y & 0xFFFF.
1431      * I renamed source_pitch to src_pixelpitch as it is very confusing
1432        to have src_pitch and source_pitch.
1433      * It isn't necessary to call WaitQueue before copying each scanline,
1434        but it seems it almost doesn't affect performance.
1435    
1436    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1437
1438commit 209097ba5b44a0ce0da7f1ea52150dcace2b5244
1439Author: Francisco Jerez <currojerez@gmail.com>
1440Date:   Sat Aug 16 13:00:31 2008 +0200
1441
1442    RandR rotation implemented.
1443    
1444    * I added the configuration file option "RandRRotation".
1445    * I replaced pSmi->ShadowPitch with pSmi->screenStride, it seems it
1446       makes more sense because the lower word of ShadowPitch may change
1447       independently.
1448    * I moved the SMI_DEDataFormat to smi_accel.c because it seems it is
1449      a piece of code repeated many times in the driver.
1450    * At some places, it is assumed the framebuffer is at FBOffset:
1451      when using a shadow framebuffer, FBOffset is the location of the
1452      on-screen framebuffer (0 should be used). This made e.g. EXA
1453      completly useless with ShadowFB enabled (it crashed).
1454    * In the FBManager initialization, I have replaced xf86InitFBManager
1455      with xf86InitFBManagerRegion to reserve some additional space as
1456      screen fb: it's unlikely to be the case, but a less efficient
1457      alignment in the rotated mode could make the rotated mode need more
1458      memory than the unrotated one.
1459      This is not a problem with EXA as the offscreen memory parameters
1460      can be easily modified when doing the rotation.
1461    * In SMI_RefreshArea it's assumed that some DE registers are already
1462      in some state, this is specially not true when using EXA.
1463    * SMI_ValidMode rejects a rotated mode with different dimensions
1464      than the panel. This seems to work now.
1465    
1466    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1467
1468commit 45c6aedd6fe4e4d6abe58d1bb39ec01049404f09
1469Author: Francisco Jerez <currojerez@gmail.com>
1470Date:   Sat Aug 16 12:50:26 2008 +0200
1471
1472    Updates in SMI_EnterVT when remapping memory.
1473    
1474      Update the screen pixmap header with the new aperture address
1475    when remapping framebuffer memory in SMI_EnterVT.
1476      Update pSmi->EXADriverPtr->memoryBase too, in case EXA is
1477    being used.
1478    
1479    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1480
1481commit 8feca790a6e92799019237ac69a4ef618cacfaae
1482Author: Francisco Jerez <currojerez@gmail.com>
1483Date:   Sat Aug 16 12:40:52 2008 +0200
1484
1485    Make the int10/VBE initialization depend on the UseBIOS configuration option.
1486    
1487    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1488
1489commit 772e899e71efab208b844b09c75f9f49ff453386
1490Author: Francisco Jerez <currojerez@gmail.com>
1491Date:   Sat Aug 16 12:25:18 2008 +0200
1492
1493    Memory detection moved before memory mapping in SMI_PreInit.
1494    
1495    Take into account the VideoRam configuration option.
1496    
1497    Signed-off-by: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
1498
1499commit d28ed6aa0d28fdcf8f555b2bb8a58fe28d1b464b
1500Author: Adam Jackson <ajax@redhat.com>
1501Date:   Fri Aug 15 14:24:31 2008 -0400
1502
1503    Dead code removal.
1504
1505commit 7cfecd313aaea74ad5675c53b4d0099d6e9dec39
1506Author: Adam Jackson <ajax@redhat.com>
1507Date:   Wed Mar 19 15:26:14 2008 -0400
1508
1509    siliconmotion 1.6.0
1510
1511commit c0e80b14a8af7c9df44919b2df58030e59ecbf88
1512Author: Adam Jackson <ajax@redhat.com>
1513Date:   Wed Mar 19 15:25:23 2008 -0400
1514
1515    Fix distcheck
1516
1517commit e53d07525952e1281170db01c48d7a14a6983049
1518Author: Adam Jackson <ajax@redhat.com>
1519Date:   Wed Mar 19 15:24:11 2008 -0400
1520
1521    Death to RCS tags.
1522
1523commit 46e68bf899754f6f70a0f5a7b0d42c5e208aaa5a
1524Author: Dave Airlie <airlied@redhat.com>
1525Date:   Mon Mar 10 13:53:00 2008 +1000
1526
1527    smi: add pciaccess support
1528
1529commit 75182ca115cba8fcf31304aea88ca3d4b9aa66ac
1530Author: Matthieu Herrb <matthieu.herrb@laas.fr>
1531Date:   Sat Mar 8 23:49:58 2008 +0100
1532
1533    Makefile.am: nuke RCS Id
1534
1535commit ae556406ab6c4de410b68b3c8bcebb434b3efc9d
1536Author: Brice Goglin <bgoglin@debian.org>
1537Date:   Tue Aug 7 10:00:25 2007 +0200
1538
1539    Define SILICONMOTION_VERSION* using PACKAGE_VERSION*
1540
1541commit 1a803a8f91a931c00106f9d3d41cfa5d74c19f55
1542Author: Alex Deucher <alex@botch2.com>
1543Date:   Tue Mar 20 21:08:38 2007 -0400
1544
1545    minor fixup
1546
1547commit 503027d38dab759277c0a67746ac205a1dfa9277
1548Author: Dennis De Winter <dennis.de.winter@gmail.com>
1549Date:   Fri Mar 16 21:29:19 2007 -0400
1550
1551    Fix UTS issues with flash
1552    
1553    Also remove safety padding on memory manager calculation
1554
1555commit fe4114033f2853e2df8d37c490deba26bf0366e8
1556Author: Alex Deucher <alex@botch2.com>
1557Date:   Thu Mar 15 02:11:24 2007 -0400
1558
1559    hostdata blit UTS works, but SW is faster
1560    
1561    UTS is working, but SW is faster so leave it disabled
1562
1563commit 62442ce9e62b484e4f2067e3c52c153cd356be2c
1564Author: Alex Deucher <alex@botch2.com>
1565Date:   Wed Mar 14 20:13:28 2007 -0400
1566
1567    more clock fixes
1568
1569commit 6ff1241636e25d2c0f20bd14e92c8585f209aeb0
1570Author: Alex Deucher <alex@botch2.com>
1571Date:   Tue Mar 13 02:32:52 2007 -0400
1572
1573    bump to 1.5.1
1574
1575commit b53db3bc5ba7648d392dc630ef47e57fb8a0afb4
1576Author: Alex Deucher <alex@botch2.com>
1577Date:   Tue Mar 13 02:31:30 2007 -0400
1578
1579    fix clk calculation on older lynx chips
1580
1581commit 7d1392be291e99fd3dde2292b82423b5f78d3a21
1582Author: Alex Deucher <alex@botch2.com>
1583Date:   Tue Mar 13 00:44:29 2007 -0400
1584
1585    bump to 1.5.0
1586
1587commit 449fedec0e38289d10d75799bbf995b0e7189911
1588Author: Alex Deucher <alex@botch2.com>
1589Date:   Tue Mar 13 00:13:35 2007 -0400
1590
1591    fix Solid()
1592    
1593    Unforunately, for 32 bpp solid fills the HW ignores alpha.
1594
1595commit 6d40f87d6cddde2d88f25be686b6392449cdecf1
1596Author: Alex Deucher <alex@botch2.com>
1597Date:   Mon Mar 12 23:58:41 2007 -0400
1598
1599    remove spurious waitqueue() line
1600
1601commit 452cabd6e3870b832cb19c8ad8a1fce27eef9c48
1602Author: Alex Deucher <alex@botch2.com>
1603Date:   Mon Mar 12 01:11:16 2007 -0400
1604
1605    Update copyright.
1606
1607commit 55266778ac693582131acae80def32211e09f18f
1608Author: Alex Deucher <alex@botch2.com>
1609Date:   Mon Mar 12 01:02:53 2007 -0400
1610
1611    switch the engine to quick start mode
1612    
1613    Rather than writing to the engine command register for every
1614    operation, set quick start mode, and the operation executes
1615    automatically when the width register is written.
1616
1617commit 4b37b514907da4a567261569eaebcc5a35aff6db
1618Author: Alex Deucher <alex@botch2.com>
1619Date:   Mon Mar 12 00:12:23 2007 -0400
1620
1621    fixup waitqueue slots
1622
1623commit 493c93de288437501fd898800bce45300379ebc3
1624Author: Alex Deucher <alex@botch2.com>
1625Date:   Sun Mar 11 18:49:48 2007 -0400
1626
1627    more exa fixups, disable UTS for now.
1628
1629commit c1d6373624428c8c52e4d1d295b1d77ed75391a0
1630Author: Alex Deucher <alex@botch2.com>
1631Date:   Sun Mar 11 16:22:05 2007 -0400
1632
1633    engine likes to use blit command for solid fills
1634
1635commit 9db380c99decdb9ab7fbf481788a5b63a84cd6e0
1636Author: Alex Deucher <alex@botch2.com>
1637Date:   Sun Mar 11 15:53:29 2007 -0400
1638
1639    fix postscalar shift
1640
1641commit b6082e628289221864e96ebc41ce93d8efe2d2ce
1642Author: Alex Deucher <alex@botch2.com>
1643Date:   Sun Mar 11 14:09:45 2007 -0400
1644
1645    support 32 bpp
1646
1647commit 3ebbc2e55a1584e01949ec760501ac4a3c086b04
1648Author: Alex Deucher <alex@botch2.com>
1649Date:   Sun Mar 11 13:40:06 2007 -0400
1650
1651    fix up vclk1 setup
1652
1653commit 3e62ec8736ea9ea64a2c0c5c41df9c6d742397ca
1654Author: Alex Deucher <alex@botch2.com>
1655Date:   Tue Mar 6 02:42:52 2007 -0500
1656
1657    revert the last commit.
1658    
1659    FBBase already take the register offset into account.
1660
1661commit 7da75a99159f80f215ee409377128f7dcbc4064d
1662Author: Alex Deucher <alex@botch2.com>
1663Date:   Tue Mar 6 02:38:02 2007 -0500
1664
1665    fix memoryBase
1666    
1667    pSmi->FBOffset is the offset from the start of the framebuffer
1668    pScrn->fbOffset is the aperture offset where the framebuffer
1669    starts
1670
1671commit ba0b2492269ea81e91f7ce4fb8da618187a3997f
1672Author: Alex Deucher <alex@botch2.com>
1673Date:   Tue Mar 6 02:24:08 2007 -0500
1674
1675    first pass at UTS
1676
1677commit e650ca36da5cf7614e4f1a0a524eadb46b1cc21d
1678Author: Alex Deucher <alex@botch2.com>
1679Date:   Mon Mar 5 23:58:25 2007 -0500
1680
1681    fix up EXA code
1682
1683commit c5b23ba581a3a4395b528d4ed824d5df986527e4
1684Author: Dennis De Winter <de.winter.dennis@gmail.com>
1685Date:   Sun Mar 4 23:17:57 2007 -0500
1686
1687    Initial import of EXA support
1688    
1689    Based on Dennis' code from bug 8721 with some minor
1690    changes by me.
1691
1692commit cf83ef7685609cd9daea193b4c842d232edcf506
1693Author: Alex Deucher <alex@botch2.com>
1694Date:   Sun Mar 4 17:18:10 2007 -0500
1695
1696    actually calculate and use vclk1
1697
1698commit 3030e5a6afda5d05ddee5b586295a9e608b7a0de
1699Author: Alex Deucher <alex@botch2.com>
1700Date:   Sun Mar 4 02:45:55 2007 -0500
1701
1702    Whitespace and formatting changes
1703
1704commit 606971fc8a323b0b33bb43524941b4bae6a0c334
1705Author: Alan Coopersmith <alan.coopersmith@sun.com>
1706Date:   Tue Feb 27 13:04:31 2007 -0800
1707
1708    renamed: .cvsignore -> .gitignore
1709
1710commit 4b3d28435d2f046d48a38694d89166fe38b00597
1711Author: Alan Coopersmith <alan.coopersmith@sun.com>
1712Date:   Tue Feb 27 13:04:01 2007 -0800
1713
1714    Replace XFree86 references in man page
1715
1716commit 3ff1d1aaf93df90f3a96b87bd8447db44b1722f5
1717Author: Alex Deucher <alex@samba.(none)>
1718Date:   Wed Jan 10 21:58:47 2007 -0500
1719
1720    only idle the engine on mode switches
1721    
1722    on the initial mode set the engine doesn't idle
1723    for some users.
1724
1725commit 72c1d44182a49dbd502bbdc0b48f69a43ad5aed0
1726Author: Adam Jackson <ajax@benzedrine.nwnk.net>
1727Date:   Fri Oct 13 18:41:44 2006 -0400
1728
1729    Bump to 1.4.2
1730
1731commit 36bbaaf3f44321fc7bb8ff1b71ff1d7f87f3b19b
1732Author: Alex Deucher <alex@samba.(none)>
1733Date:   Sat Sep 16 15:48:54 2006 -0400
1734
1735    make siliconmotion build again.  somehow a bunch of defines in
1736    regsmi.h got lost?  commit 9a58bc9adbc982680dd8df27caeb9a5819f2adad looks
1737    like the culprit, but siliconmotion has built fine subsequent to that commit.
1738    Not sure exactly what's going on.
1739
1740commit c090b2d97dbedfc278a4691b70cf3f73f9799aa6
1741Author:  <alex@samba.(none)>
1742Date:   Thu Jul 20 23:35:30 2006 -0400
1743
1744    - add dualhead support for lynx chips (pretty limited due to severe hardware
1745    limitations -- I'll improve it a bit at some point)
1746    - small driver clean ups
1747
1748commit 845d45cd2066be53f6e2e53d5af6375045dac6e2
1749Author: Adam Jackson <ajax@nwnk.net>
1750Date:   Sat Apr 8 01:43:52 2006 +0000
1751
1752    Bump to 1.4.1 for Xv changes.
1753
1754commit 2951e947c56909c9d51bf3f937502d0f682b1d76
1755Author: Aaron Plattner <aplattner@nvidia.com>
1756Date:   Fri Apr 7 23:13:59 2006 +0000
1757
1758    Add a DrawablePtr argument to the XV functions to pave the way for
1759        redirected video.
1760
1761commit 9a316eaea700e3a356f922506bf2c79e00fd9d83
1762Author: Adam Jackson <ajax@nwnk.net>
1763Date:   Fri Apr 7 20:58:57 2006 +0000
1764
1765    Unlibcwrap. Bump server version requirement. Bump to 1.4.0.
1766
1767commit c394f38c9a998eebec134a9a77ced46b9c005b9d
1768Author: Luc Verhaegen <libv@skynet.be>
1769Date:   Wed Feb 8 16:52:34 2006 +0000
1770
1771    SiliconMotion: Clean up insane pScrn->clock usage.
1772
1773commit 2453cfe259dec826fceab3cff1b2c3803d3d8042
1774Author: Kevin E Martin <kem@kem.org>
1775Date:   Wed Dec 21 02:30:02 2005 +0000
1776
1777    Update package version for X11R7 release.
1778
1779commit e398882fba13cd081916d2ff04ead4f9023c9bfb
1780Author: Adam Jackson <ajax@nwnk.net>
1781Date:   Mon Dec 19 16:25:54 2005 +0000
1782
1783    Stub COPYING files
1784
1785commit 818baab410deef2b3a3b6653dd2134dea29e98de
1786Author: Kevin E Martin <kem@kem.org>
1787Date:   Thu Dec 15 00:24:19 2005 +0000
1788
1789    Update package version number for final X11R7 release candidate.
1790
1791commit 6c95cd7b0ac0c113c25bf985365f3ccb1d30d7c9
1792Author: Kevin E Martin <kem@kem.org>
1793Date:   Tue Dec 6 22:48:37 2005 +0000
1794
1795    Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
1796
1797commit 10d5542f95e86463b96cc1fd31378473c2394bc0
1798Author: Kevin E Martin <kem@kem.org>
1799Date:   Sat Dec 3 05:49:35 2005 +0000
1800
1801    Update package version number for X11R7 RC3 release.
1802
1803commit 8180ea0cb0df275831b900836d9387bb2a730de4
1804Author: Kevin E Martin <kem@kem.org>
1805Date:   Fri Dec 2 02:16:10 2005 +0000
1806
1807    Remove extraneous AC_MSG_RESULT.
1808
1809commit 73e22f89e205a61c315ffaca63cc7f5ab1f2df5f
1810Author: Adam Jackson <ajax@nwnk.net>
1811Date:   Tue Nov 29 23:30:03 2005 +0000
1812
1813    Only build dlloader modules by default.
1814
1815commit 8b156b75c37fb642d6c680cc9fb5361fb0a8ff74
1816Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
1817Date:   Mon Nov 28 22:04:10 2005 +0000
1818
1819    Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
1820        update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
1821
1822commit 8ad5ff0aa74eabc5b4dca2e0422d36713415b1b1
1823Author: Eric Anholt <anholt@freebsd.org>
1824Date:   Mon Nov 21 10:49:18 2005 +0000
1825
1826    Add .cvsignores for drivers.
1827
1828commit 0d4f340f197b14dacc5c33d82f0094ee1f9bb2a8
1829Author: Kevin E Martin <kem@kem.org>
1830Date:   Wed Nov 9 21:15:20 2005 +0000
1831
1832    Update package version number for X11R7 RC2 release.
1833
1834commit 280644786854eea8e8dbe7873e6c79d18f8048f0
1835Author: Kevin E Martin <kem@kem.org>
1836Date:   Tue Nov 1 15:08:54 2005 +0000
1837
1838    Update pkgcheck depedencies to work with separate build roots.
1839
1840commit bcc4f2555d4e4fa7ba2cf022165d3dd8ef331cd9
1841Author: Kevin E Martin <kem@kem.org>
1842Date:   Wed Oct 19 02:48:04 2005 +0000
1843
1844    Update package version number for RC1 release.
1845
1846commit 2da8c99697874a012dccfc582561a0b89e111ecd
1847Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
1848Date:   Tue Oct 18 00:01:54 2005 +0000
1849
1850    Use @DRIVER_MAN_SUFFIX@ instead of $(DRIVER_MAN_SUFFIX) in macro
1851        substitutions to work better with BSD make
1852
1853commit 9f9d3fcd3dca04b7d960d8777e8f8ba612fa1510
1854Author: Adam Jackson <ajax@nwnk.net>
1855Date:   Mon Oct 17 22:57:35 2005 +0000
1856
1857    More 1.7 braindamage: define EXTRA_DIST in terms of @DRIVER_NAME@ instead
1858        of indirectly
1859
1860commit 286bf9de5baebd75ca129e50af9dc5f66dbf4e4f
1861Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
1862Date:   Mon Oct 17 00:09:05 2005 +0000
1863
1864    Use sed & cpp to substitute variables in driver man pages
1865
1866commit 0db428f930db99d70897ca90b9ec0e130f4e6635
1867Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
1868Date:   Tue Sep 27 22:04:08 2005 +0000
1869
1870    Add some more documentation files for siliconmotion driver
1871
1872commit bdc896858ed819dcb79bb7443bfa57d63c8e0fad
1873Author: Daniel Stone <daniel@fooishbar.org>
1874Date:   Thu Aug 18 09:03:48 2005 +0000
1875
1876    Update autogen.sh to one that does objdir != srcdir.
1877
1878commit a3add2e05412767c49ca1c0a1069cd5805ea09e9
1879Author: Kevin E Martin <kem@kem.org>
1880Date:   Fri Jul 29 21:22:44 2005 +0000
1881
1882    Various changes preparing packages for RC0:
1883    - Verify and update package version numbers as needed
1884    - Implement versioning scheme
1885    - Change bug address to point to bugzilla bug entry form
1886    - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
1887        reenable it)
1888    - Fix makedepend to use pkgconfig and pass distcheck
1889    - Update build script to build macros first
1890    - Update modular Xorg version
1891
1892commit 5754df51d9b0f8bb8dac7b8c0072da929f1241f0
1893Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
1894Date:   Tue Jul 26 22:12:58 2005 +0000
1895
1896    Build system for siliconmotion
1897
1898commit 4b98eb4b30d694139d5e597c445d65d637ab7472
1899Author: Adam Jackson <ajax@nwnk.net>
1900Date:   Mon Jul 11 02:29:59 2005 +0000
1901
1902    Prep for modular builds by adding guarded #include "config.h" everywhere.
1903
1904commit 6389dd3dc1259865a4b5fcc6b6c7b3f4429593cf
1905Author: Daniel Stone <daniel@fooishbar.org>
1906Date:   Fri Jul 1 22:43:12 2005 +0000
1907
1908    Change all misc.h and os.h references to <X11/foo.h>.
1909
1910commit 1dc135becf5898950e04c84cc4d87870840140c1
1911Author: Alex Deucher <agd5f@yahoo.com>
1912Date:   Thu Jun 30 00:14:26 2005 +0000
1913
1914    - add 800x480 mode to smi driver (bug 3639)
1915
1916commit 0670b675c2133dd7c29f79bdf17d24d64181537d
1917Author: Adam Jackson <ajax@nwnk.net>
1918Date:   Sat Jun 25 21:16:56 2005 +0000
1919
1920    Bug #3626: _X_EXPORT tags for video and input drivers.
1921
1922commit 39112b558fdccd2b0a15b8e41d6215e3b0e6e7bd
1923Author: Daniel Stone <daniel@fooishbar.org>
1924Date:   Wed Apr 20 12:25:29 2005 +0000
1925
1926    Fix includes right throughout the Xserver tree:
1927    change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
1928    change "foo.h", "extensions/foo.h" and "X11/foo.h" to
1929        <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
1930    change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
1931
1932commit c34e24d83a0f84ad90b7cbaba78d54cc779f74d5
1933Author: Adam Jackson <ajax@nwnk.net>
1934Date:   Fri Sep 17 03:04:54 2004 +0000
1935
1936    Bug #1192: Remove cfb support from drivers where its use is an option.
1937        Delete xf24_32bpp, as s3virge was the last user. Fix up some comments
1938        to refer to fb rather than cfb.
1939
1940commit 61457616aea5d5d7d98e869d3b24e989c2404d6b
1941Author: Adam Jackson <ajax@nwnk.net>
1942Date:   Mon Aug 16 09:13:15 2004 +0000
1943
1944    Bug #1087: Make sure all the *Weak symbols are documented in the import
1945        list, so the loader knows not to complain about unresolved symbols when
1946        an optional module isn't loaded. This typically manifests as warnings
1947        about fbdevHW symbols when the user isn't using the framebuffer
1948        console.
1949
1950commit 74176c460a4f5206cbc7cd7b9f48d1b6cedae7cb
1951Author: Eric Anholt <anholt@freebsd.org>
1952Date:   Sat Jul 31 01:21:51 2004 +0000
1953
1954    Rename some COMPOSITE macros and enums to avoid conflicting with the
1955        COMPOSITE extension's new macro. These appear to only be used
1956        internally.
1957
1958commit 0f239a7f12e1c0a0b7ede424b0f1eb0fe189e9d6
1959Author: Adam Jackson <ajax@nwnk.net>
1960Date:   Sat Jul 31 01:21:19 2004 +0000
1961
1962    Change several LoaderSymbol calls introduced by the bug #400 patch to
1963    *Weak() resolver functions.
1964
1965commit 865ba2a4c1107bb82d22ed648f8a1d63c833d6fc
1966Author: Adam Jackson <ajax@nwnk.net>
1967Date:   Fri Jul 30 20:30:54 2004 +0000
1968
1969    Bug #400 (partial): Driver fixes for the dlloader. When using dlloader, all
1970        framebuffer formats except cfb and the overlay modes should work, and
1971        r128 and radeon need to be loaded from the ati driver (both issues to
1972        be fixed soon). Tested on i740, s3virge, mach64, tdfx, vesa, and vga
1973        drivers. elfloader users shouldn't be affected.
1974
1975commit 9a58bc9adbc982680dd8df27caeb9a5819f2adad
1976Author: Eric Anholt <anholt@freebsd.org>
1977Date:   Wed Jun 16 09:23:38 2004 +0000
1978
1979    DRI XFree86-4_3_99_12-merge import
1980
1981commit 1f957fb7e44762197b0fc5a3b7def25c7888929a
1982Author: Egbert Eich <eich@suse.de>
1983Date:   Wed May 26 16:24:09 2004 +0000
1984
1985    Fixing setting of physical framebuffer base for several drivers. C&T
1986        driver: Fixed setting of minimal clocks for HiQV chipsets. Neomagic
1987        driver: improved support for lowres double scan modes.
1988
1989commit 445708ff1249e96628dd6b11e20f83e568fb4ad1
1990Author: Egbert Eich <eich@suse.de>
1991Date:   Fri Apr 23 19:45:06 2004 +0000
1992
1993    Merging XORG-CURRENT into trunk
1994
1995commit 90141c8b6da8e6b57f2e4bae486a3d39c4069a8b
1996Author: Egbert Eich <eich@suse.de>
1997Date:   Sun Mar 14 08:33:31 2004 +0000
1998
1999    Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
2000
2001commit 1082b4e0760359234cb5f51b953bbffc65d594ec
2002Author: Egbert Eich <eich@suse.de>
2003Date:   Wed Mar 3 12:12:24 2004 +0000
2004
2005    Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
2006
2007commit b1c51d42211f715043a3252550ef2fde1a3065e5
2008Author: Egbert Eich <eich@suse.de>
2009Date:   Thu Feb 26 13:35:54 2004 +0000
2010
2011    readding XFree86's cvs IDs
2012
2013commit 2ae35696e96079b192c2cac4e092f6deeb300325
2014Author: Egbert Eich <eich@suse.de>
2015Date:   Thu Feb 26 09:23:23 2004 +0000
2016
2017    Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
2018
2019commit ac5b2461e620df7026eefda6a389127e7d41f67d
2020Author: Kaleb Keithley <kaleb@freedesktop.org>
2021Date:   Fri Dec 19 20:55:14 2003 +0000
2022
2023    XFree86 4.3.99.902 (RC 2)
2024
2025commit 14cd4af100e1deb1c7b63e9f19587e38ce1f08f2
2026Author: Kaleb Keithley <kaleb@freedesktop.org>
2027Date:   Tue Nov 25 19:28:39 2003 +0000
2028
2029    XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
2030
2031commit 1684aa7a21a194b6e7dd518f3895c9b2dfce229a
2032Author: Kaleb Keithley <kaleb@freedesktop.org>
2033Date:   Fri Nov 14 16:48:55 2003 +0000
2034
2035    XFree86 4.3.0.1
2036
2037commit 78af703cb019a60cc93843efcd4889ccb15abd13
2038Author: Kaleb Keithley <kaleb@freedesktop.org>
2039Date:   Fri Nov 14 16:48:55 2003 +0000
2040
2041    Initial revision
2042