X Strike Force XFree86 SVN commit: r1410 - in trunk/debian: . patches
Author: branden
Date: 2004-05-17 17:03:45 -0500 (Mon, 17 May 2004)
New Revision: 1410
Added:
trunk/debian/patches/006_ati_radeon_fix_eternal_initialization.diff
Modified:
trunk/debian/CHANGESETS
trunk/debian/TODO
trunk/debian/changelog
trunk/debian/patches/024_ati_r128_and_radeon_enable_build_without_vgahw.diff
trunk/debian/patches/079_ati_radeon_fix_power_resume.diff
Log:
Apply Michel D?\195?\164nzer's fix for Radeon driver trying forever to initialize
card if card's firmware is not loaded. Add patch #006. Resync patches
#024, #079. (Closes: #246901)
Modified: trunk/debian/CHANGESETS
===================================================================
--- trunk/debian/CHANGESETS 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/CHANGESETS 2004-05-17 22:03:45 UTC (rev 1410)
@@ -102,4 +102,8 @@
patches #082 and #084.
1408
+Apply Michel Dänzer's fix for Radeon driver trying forever to initialize card if
+card's firmware is not loaded.
+ 1410
+
vim:set ai et sts=4 sw=4 tw=80:
Modified: trunk/debian/TODO
===================================================================
--- trunk/debian/TODO 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/TODO 2004-05-17 22:03:45 UTC (rev 1410)
@@ -12,9 +12,6 @@
These items are listed in descending order of priority; that is, the most
important items come first.
-* #246901: Apply Michel Dänzer's fix for Radeon driver trying forever to
- initialize card if card's firmware is not loaded.
- http://penguinppc.org/~daenzer/DRI/applied/radeon-accelinit.diff
* Fix upstream install rule that prevents Xcursor themes from being
installed on s390. As I understand it, this is client-side stuff and
there's not really any reason it shouldn't be made available on the s390
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/changelog 2004-05-17 22:03:45 UTC (rev 1410)
@@ -168,12 +168,16 @@
- some cosmetic changes.
(Ivan Pascal). [David Dawes]
+ * Apply Michel Dänzer's fix for Radeon driver trying forever to initialize
+ card if card's firmware is not loaded. Add patch #006. Resync patches
+ #024, #079. (Closes: #246901)
+
Changes by Fabio Massimo Di Nitto:
* Update xutils's package description to refer to bdftruncate and ucs2any
programs by their correct names.
- -- Branden Robinson <branden@debian.org> Mon, 17 May 2004 12:44:31 -0500
+ -- Branden Robinson <branden@debian.org> Mon, 17 May 2004 17:02:49 -0500
xfree86 (4.3.0.dfsg.1-1) unstable; urgency=low
Added: trunk/debian/patches/006_ati_radeon_fix_eternal_initialization.diff
===================================================================
--- trunk/debian/patches/006_ati_radeon_fix_eternal_initialization.diff 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/patches/006_ati_radeon_fix_eternal_initialization.diff 2004-05-17 22:03:45 UTC (rev 1410)
@@ -0,0 +1,68 @@
+$Id$
+
+Fix Radeon driver so it does not spin forever in RADEONCPGetBuffer() if the
+card's firmware has not been initalized. See Debian #246901.
+
+This patch by Michel Dänzer.
+
+Not submitted to XFree86; already on the DRI trunk.
+
+diff -urN xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon.h xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.h
+--- xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon.h 2004-05-17 13:21:05.000000000 -0500
++++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.h 2004-05-17 13:22:10.000000000 -0500
+@@ -566,6 +566,7 @@
+ extern void RADEONSelectBuffer(ScrnInfoPtr pScrn, int buffer);
+
+ extern Bool RADEONAccelInit(ScreenPtr pScreen);
++extern void RADEONAccelInitMMIO(ScreenPtr pScreen, XAAInfoRecPtr a);
+ extern void RADEONEngineInit(ScrnInfoPtr pScrn);
+ extern Bool RADEONCursorInit(ScreenPtr pScreen);
+ extern Bool RADEONDGAInit(ScreenPtr pScreen);
+@@ -577,6 +578,7 @@
+ extern void R300CGWorkaround(ScrnInfoPtr pScrn);
+
+ #ifdef XF86DRI
++extern void RADEONAccelInitCP(ScreenPtr pScreen, XAAInfoRecPtr a);
+ extern Bool RADEONDRIScreenInit(ScreenPtr pScreen);
+ extern void RADEONDRICloseScreen(ScreenPtr pScreen);
+ extern void RADEONDRIResume(ScreenPtr pScreen);
+diff -urN xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon_accelfuncs.c xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_accelfuncs.c
+--- xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon_accelfuncs.c 2004-05-17 13:21:05.000000000 -0500
++++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_accelfuncs.c 2004-05-17 13:22:10.000000000 -0500
+@@ -1169,7 +1169,7 @@
+ }
+ #endif
+
+-static void
++void
+ FUNC_NAME(RADEONAccelInit)(ScreenPtr pScreen, XAAInfoRecPtr a)
+ {
+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+@@ -1224,9 +1224,10 @@
+ | LEFT_EDGE_CLIPPING_NEGATIVE_X);
+ a->NumScanlineColorExpandBuffers = 1;
+ a->ScanlineColorExpandBuffers = info->scratch_buffer;
+- info->scratch_save
+- = xalloc(((pScrn->virtualX+31)/32*4)
+- + (pScrn->virtualX * info->CurrentLayout.pixel_bytes));
++ if (!info->scratch_save)
++ info->scratch_save
++ = xalloc(((pScrn->virtualX+31)/32*4)
++ + (pScrn->virtualX * info->CurrentLayout.pixel_bytes));
+ info->scratch_buffer[0] = info->scratch_save;
+ a->SetupForScanlineCPUToScreenColorExpandFill
+ = FUNC_NAME(RADEONSetupForScanlineCPUToScreenColorExpandFill);
+diff -urN xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon_driver.c xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c
+--- xc/programs/Xserver/hw/xfree86/drivers/ati~/radeon_driver.c 2004-05-17 13:21:20.000000000 -0500
++++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c 2004-05-17 13:22:10.000000000 -0500
+@@ -4746,7 +4746,9 @@
+ /* Now that mi, fb, drm and others have
+ done their thing, complete the DRI
+ setup. */
+- info->directRenderingEnabled = RADEONDRIFinishScreenInit(pScreen);
++ if (!(info->directRenderingEnabled = RADEONDRIFinishScreenInit(pScreen))) {
++ RADEONAccelInitMMIO(pScreen, info->accel);
++ }
+ }
+ if (info->directRenderingEnabled) {
+ if ((info->DispPriority == 1) && (!info->IsPCI)) {
Property changes on: trunk/debian/patches/006_ati_radeon_fix_eternal_initialization.diff
___________________________________________________________________
Name: svn:keywords
+ Id
Modified: trunk/debian/patches/024_ati_r128_and_radeon_enable_build_without_vgahw.diff
===================================================================
--- trunk/debian/patches/024_ati_r128_and_radeon_enable_build_without_vgahw.diff 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/patches/024_ati_r128_and_radeon_enable_build_without_vgahw.diff 2004-05-17 22:03:45 UTC (rev 1410)
@@ -237,7 +237,7 @@
fail2:
if(info->MMIO) RADEONUnmapMMIO(pScrn);
-@@ -5480,7 +5495,9 @@
+@@ -5482,7 +5497,9 @@
RADEONInfoPtr info = RADEONPTR(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
RADEONSavePtr save = &info->SavedReg;
@@ -247,7 +247,7 @@
RADEONTRACE(("RADEONSave\n"));
if (info->FBDev) {
-@@ -5489,19 +5506,21 @@
+@@ -5491,19 +5508,21 @@
}
if (!info->IsSecondary) {
@@ -272,7 +272,7 @@
save->dp_datatype = INREG(RADEON_DP_DATATYPE);
save->rbbm_soft_reset = INREG(RADEON_RBBM_SOFT_RESET);
save->clock_cntl_index = INREG(RADEON_CLOCK_CNTL_INDEX);
-@@ -5517,7 +5536,9 @@
+@@ -5519,7 +5538,9 @@
RADEONInfoPtr info = RADEONPTR(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
RADEONSavePtr restore = &info->SavedReg;
@@ -282,7 +282,7 @@
RADEONTRACE(("RADEONRestore\n"));
-@@ -5560,26 +5581,32 @@
+@@ -5562,26 +5583,32 @@
#endif
if (!info->IsSecondary) {
@@ -318,7 +318,7 @@
}
RADEONUnblank(pScrn);
-@@ -7022,8 +7049,10 @@
+@@ -7024,8 +7051,10 @@
RADEONTRACE(("RADEONFreeScreen\n"));
Modified: trunk/debian/patches/079_ati_radeon_fix_power_resume.diff
===================================================================
--- trunk/debian/patches/079_ati_radeon_fix_power_resume.diff 2004-05-17 18:23:46 UTC (rev 1409)
+++ trunk/debian/patches/079_ati_radeon_fix_power_resume.diff 2004-05-17 22:03:45 UTC (rev 1410)
@@ -18,7 +18,7 @@
NULL
};
-@@ -6927,9 +6928,22 @@
+@@ -6929,9 +6930,22 @@
{
ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
RADEONInfoPtr info = RADEONPTR(pScrn);
Reply to: