[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

X Strike Force X.Org X11 SVN commit: r1977 - in trunk/driver/xserver-xorg-video-ati/debian: . patches



Author: dnusinow
Date: 2006-04-25 22:12:36 -0400 (Tue, 25 Apr 2006)
New Revision: 1977

Removed:
   trunk/driver/xserver-xorg-video-ati/debian/patches/02_ppc_fix.diff
Modified:
   trunk/driver/xserver-xorg-video-ati/debian/changelog
   trunk/driver/xserver-xorg-video-ati/debian/patches/series
Log:
* Remove obsolete 02_ppc_fix.diff. Now incorporated upstream.

Modified: trunk/driver/xserver-xorg-video-ati/debian/changelog
===================================================================
--- trunk/driver/xserver-xorg-video-ati/debian/changelog	2006-04-26 01:56:41 UTC (rev 1976)
+++ trunk/driver/xserver-xorg-video-ati/debian/changelog	2006-04-26 02:12:36 UTC (rev 1977)
@@ -3,8 +3,9 @@
   * New upstream release
   * Use dh_install with --list-missing
   * Add build-dep on quilt
+  * Remove obsolete 02_ppc_fix.diff. Now incorporated upstream.
 
- -- David Nusinow <dnusinow@debian.org>  Tue, 25 Apr 2006 21:56:09 -0400
+ -- David Nusinow <dnusinow@debian.org>  Tue, 25 Apr 2006 22:11:48 -0400
 
 xserver-xorg-video-ati (1:6.5.7.3-3) unstable; urgency=low
 

Deleted: trunk/driver/xserver-xorg-video-ati/debian/patches/02_ppc_fix.diff
===================================================================
--- trunk/driver/xserver-xorg-video-ati/debian/patches/02_ppc_fix.diff	2006-04-26 01:56:41 UTC (rev 1976)
+++ trunk/driver/xserver-xorg-video-ati/debian/patches/02_ppc_fix.diff	2006-04-26 02:12:36 UTC (rev 1977)
@@ -1,362 +0,0 @@
-Index: xf86-video-ati-X11R7.0-6.5.7.3/src/radeon.h
-===================================================================
---- xf86-video-ati-X11R7.0-6.5.7.3.orig/src/radeon.h	2006-01-12 22:54:09.000000000 -0500
-+++ xf86-video-ati-X11R7.0-6.5.7.3/src/radeon.h	2006-02-26 17:46:29.000000000 -0500
-@@ -147,10 +147,16 @@
-     CARD32            cap0_trig_cntl;
-     CARD32            cap1_trig_cntl;
-     CARD32            bus_cntl;
--    CARD32            surface_cntl;
-     CARD32            bios_4_scratch;
-     CARD32            bios_5_scratch;
-     CARD32            bios_6_scratch;
-+    CARD32            surface_cntl;
-+    CARD32            surfaces[8][3];
-+    CARD32            mc_agp_location;
-+    CARD32            mc_fb_location;
-+    CARD32            display_base_addr;
-+    CARD32            display2_base_addr;
-+    CARD32            ov0_base_addr;
- 
- 				/* Other registers to save for VT switches */
-     CARD32            dp_datatype;
-@@ -158,8 +164,6 @@
-     CARD32            clock_cntl_index;
-     CARD32            amcgpio_en_reg;
-     CARD32            amcgpio_mask;
--    
--    CARD32            surfaces[8][3];
- 
- 				/* CRTC registers */
-     CARD32            crtc_gen_cntl;
-Index: xf86-video-ati-X11R7.0-6.5.7.3/src/radeon_driver.c
-===================================================================
---- xf86-video-ati-X11R7.0-6.5.7.3.orig/src/radeon_driver.c	2006-01-12 22:54:09.000000000 -0500
-+++ xf86-video-ati-X11R7.0-6.5.7.3/src/radeon_driver.c	2006-02-26 17:46:30.000000000 -0500
-@@ -129,6 +129,7 @@
- static int RADEONValidateMergeModes(ScrnInfoPtr pScrn);
- static void RADEONSetDynamicClock(ScrnInfoPtr pScrn, int mode);
- static void RADEONUpdatePanelSize(ScrnInfoPtr pScrn);
-+static void RADEONSaveMemMapRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save);
- 
- /* psuedo xinerama support */
- 
-@@ -2253,81 +2254,56 @@
- }
- 
- /* Set up MC_FB_LOCATION and related registers */
--static void
--RADEONSetFBLocation(ScrnInfoPtr pScrn)
-+static void RADEONInitMemMapRegisters(ScrnInfoPtr pScrn,RADEONSavePtr save,
-+				      RADEONInfoPtr info)
- {
--    RADEONInfoPtr  info = RADEONPTR(pScrn);
-     RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn);
-     unsigned char *RADEONMMIO = info->MMIO;
--    CARD32 mc_fb_location;
--    CARD32 mc_agp_location = INREG(RADEON_MC_AGP_LOCATION);
--    CARD32 bus_cntl = INREG(RADEON_BUS_CNTL);
--    
--    OUTREG (RADEON_BUS_CNTL, bus_cntl | RADEON_BUS_MASTER_DIS);
--    RADEONWaitForIdleMMIO(pScrn);
- 
--    /* This function has many problems with newer cards.
--     * Even with older cards, all registers changed here are not
--     * restored properly when X quits, this will also cause 
--     * various problems, especially with radeonfb.
--     * Since we don't have DRI support for R300 and above cards, 
--     * we just hardcode these values for now.
--     * Need to revisit this whole function!!!
--     */
-+    /* Default to existing values */
-+    save->mc_fb_location = INREG(RADEON_MC_FB_LOCATION);
-+    save->mc_agp_location = INREG(RADEON_MC_AGP_LOCATION);
- 
-+    /*
-+     * Warning: A lot of the stuff down there is fairly bogus. For example,
-+     * we use CONFIG_APER_SIZE which is only _half_ of the PCI exposed area
-+     * since we might expose our VRAM in 2 different non overlapping apertures
-+     * depending on how the card is bootstrapped.
-+     *
-+     * This will have to be fixed some day ...
-+     */
-     if (info->IsIGP) {
--	mc_fb_location = INREG(RADEON_NB_TOM);
-+	save->mc_fb_location = INREG(RADEON_NB_TOM);
- 
-+	/* Hack ... FIXME or at least move elsewhere*/
- 	OUTREG(RADEON_GRPH2_BUFFER_CNTL,
- 	       INREG(RADEON_GRPH2_BUFFER_CNTL) & ~0x7f0000);
- 
-     } else
- #ifdef XF86DRI
-     if ( info->directRenderingEnabled && info->drmMinor < 10 ) {
--	mc_fb_location = (INREG(RADEON_CONFIG_APER_SIZE) - 1) & 0xffff0000U;
-+	save->mc_fb_location = (INREG(RADEON_CONFIG_APER_SIZE) - 1) & 0xffff0000U;
-     } else
- #endif
-     {
- 	CARD32 aper0_base = INREG(RADEON_CONFIG_APER_0_BASE);
- 
--	mc_fb_location = (aper0_base >> 16)
--		       | ((aper0_base + (INREG(RADEON_CONFIG_APER_SIZE) - 1)
--			   ) & 0xffff0000U);
-+	save->mc_fb_location = (aper0_base >> 16)
-+		| ((aper0_base + (INREG(RADEON_CONFIG_APER_SIZE) - 1)
-+		    ) & 0xffff0000U);
-     }
- 
--    info->fbLocation = (mc_fb_location & 0xffff) << 16;
-+    info->fbLocation = (save->mc_fb_location & 0xffff) << 16;
- 
--    if (((mc_agp_location & 0xffff) << 16) !=
--	((mc_fb_location & 0xffff0000U) + 0x10000)) {
--	mc_agp_location = mc_fb_location & 0xffff0000U;
--	mc_agp_location |= (mc_agp_location + 0x10000) >> 16;
-+    if (((save->mc_agp_location & 0xffff) << 16) !=
-+	((save->mc_fb_location & 0xffff0000U) + 0x10000)) {
-+	save->mc_agp_location = save->mc_fb_location & 0xffff0000U;
-+	save->mc_agp_location |= (save->mc_agp_location + 0x10000) >> 16;
-     }
- 
--    RADEONWaitForIdleMMIO(pScrn);
--
--    OUTREG(RADEON_MC_FB_LOCATION, mc_fb_location);
--    OUTREG(RADEON_MC_AGP_LOCATION, mc_agp_location);
--    OUTREG(RADEON_DISPLAY_BASE_ADDR, info->fbLocation);
--    if (info->HasCRTC2)
--	OUTREG(RADEON_DISPLAY2_BASE_ADDR, info->fbLocation);
--    OUTREG(RADEON_OV0_BASE_ADDR, info->fbLocation);
--
--    OUTREG (RADEON_BUS_CNTL, bus_cntl);
--    RADEONWaitForIdleMMIO(pScrn);
--
--    /* Set display0/1 priority up on r3/4xx in the memory controller for 
--     * high res modes if the user specifies HIGH for displaypriority 
--     * option.
--     */
--    if ((info->DispPriority == 2) && IS_R300_VARIANT) {
--        CARD32 mc_init_misc_lat_timer = INREG(R300_MC_INIT_MISC_LAT_TIMER);
--	if (info->MergedFB || pRADEONEnt->HasSecondary) {
--	    mc_init_misc_lat_timer |= 0x1100; /* display 0 and 1 */
--	} else {
--	    mc_init_misc_lat_timer |= 0x0100; /* display 0 only */
--	}
--	OUTREG(R300_MC_INIT_MISC_LAT_TIMER, mc_init_misc_lat_timer);
--    }
-+    save->display_base_addr = info->fbLocation;
-+    save->display2_base_addr = info->fbLocation;
-+    save->ov0_base_addr = info->fbLocation;
- 
- }
- 
-@@ -5518,6 +5494,8 @@
- 	unsigned char *RADEONMMIO = info->MMIO;
- 
- 	if (!fbdevHWModeInit(pScrn, pScrn->currentMode)) return FALSE;
-+	RADEONSaveMemMapRegisters(pScrn, &info->ModeReg);
-+	info->fbLocation = (info->ModeReg.mc_fb_location & 0xffff) << 16;
- 	info->ModeReg.surface_cntl = INREG(RADEON_SURFACE_CNTL);
-     } else {
- 	if (!RADEONModeInit(pScrn, pScrn->currentMode)) return FALSE;
-@@ -5605,8 +5583,6 @@
-     hasDRI = info->directRenderingEnabled;
- #endif
- 
--    RADEONSetFBLocation(pScrn);
--
-     if (!fbScreenInit(pScreen, info->FB,
- 		      pScrn->virtualX, pScrn->virtualY,
- 		      pScrn->xDpi, pScrn->yDpi, pScrn->displayWidth,
-@@ -5837,7 +5813,66 @@
-     return TRUE;
- }
- 
--/* Write common registers (initialized to 0) */
-+/* Write memory mapping registers */
-+static void RADEONRestoreMemMapRegisters(ScrnInfoPtr pScrn,
-+					 RADEONSavePtr restore)
-+{
-+    RADEONInfoPtr  info       = RADEONPTR(pScrn);
-+    unsigned char *RADEONMMIO = info->MMIO;
-+    int i;
-+
-+    /* Write memory mapping registers only if their value change
-+     * since we must ensure no access is done while they are
-+     * reprogrammed
-+     */
-+    if (INREG(RADEON_MC_FB_LOCATION) != restore->mc_fb_location ||
-+	INREG(RADEON_MC_AGP_LOCATION) != restore->mc_agp_location) {
-+	CARD32 tmp;
-+
-+	/* Make sure engine is idle. We assume the CCE is stopped
-+	 * at this point
-+	 */
-+	RADEONWaitForIdleMMIO(pScrn);
-+
-+	/* Stop display & memory access */
-+	tmp = INREG(RADEON_CRTC_EXT_CNTL);
-+	OUTREG(RADEON_CRTC_EXT_CNTL, tmp | RADEON_CRTC_DISPLAY_DIS);
-+	tmp = INREG(RADEON_CRTC_GEN_CNTL);
-+	tmp &= ~RADEON_CRTC_CUR_EN;
-+	tmp |= RADEON_CRTC_DISP_REQ_EN_B;
-+	OUTREG(RADEON_CRTC_GEN_CNTL, tmp);
-+	if (info->HasCRTC2) {
-+		tmp = INREG(RADEON_CRTC2_GEN_CNTL);
-+		tmp &= ~RADEON_CRTC2_CUR_EN;
-+		tmp |= RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_DISP_REQ_EN_B;
-+		OUTREG(RADEON_CRTC2_GEN_CNTL, tmp);
-+	}
-+	tmp = INREG(RADEON_OV0_SCALE_CNTL);
-+	tmp &= ~RADEON_SCALER_ENABLE;
-+
-+	/* Clear all surfaces */
-+	for (i = 0; i < 8; i++) {
-+	    OUTREG(RADEON_SURFACE0_INFO + 16 * i, 0);
-+	    OUTREG(RADEON_SURFACE0_LOWER_BOUND + 16 * i, 0);
-+	    OUTREG(RADEON_SURFACE0_UPPER_BOUND + 16 * i, 0);
-+	}
-+
-+	/* Make sure the chip settles down and set new map*/ 
-+	usleep(100000);
-+	OUTREG(RADEON_MC_FB_LOCATION, restore->mc_fb_location);
-+ 	OUTREG(RADEON_MC_AGP_LOCATION, restore->mc_agp_location);
-+	/* Make sure map fully reached the chip */
-+	(void)INREG(RADEON_MC_FB_LOCATION);
-+
-+    }
-+    
-+    /* Restore base addresses */
-+    OUTREG(RADEON_DISPLAY_BASE_ADDR, restore->display_base_addr);
-+    OUTREG(RADEON_DISPLAY2_BASE_ADDR, restore->display2_base_addr);
-+    OUTREG(RADEON_OV0_BASE_ADDR, restore->ov0_base_addr);
-+}
-+
-+/* Write common registers */
- static void RADEONRestoreCommonRegisters(ScrnInfoPtr pScrn,
- 					 RADEONSavePtr restore)
- {
-@@ -6457,6 +6492,7 @@
- 
-     /* For Non-dual head card, we don't have private field in the Entity */
-     if (!info->HasCRTC2) {
-+	RADEONRestoreMemMapRegisters(pScrn, restore);
- 	RADEONRestoreCommonRegisters(pScrn, restore);
- 	RADEONRestoreCrtcRegisters(pScrn, restore);
- 	RADEONRestoreFPRegisters(pScrn, restore);
-@@ -6474,10 +6510,12 @@
-      * order. Regardless the order of X server issuing the calls, we
-      * have to ensure we set registers in the right order!!!  Otherwise
-      * we may get a blank screen.
-+     *
-+     * We always restore MemMap first, the saverec should be up to date
-+     * in all cases
-      */
-     if (info->IsSecondary) {
--	if (!pRADEONEnt->RestorePrimary  && !info->IsSwitching)
--	    RADEONRestoreCommonRegisters(pScrn, restore);
-+	RADEONRestoreMemMapRegisters(pScrn, restore);
- 	RADEONRestoreCrtc2Registers(pScrn, restore);
- 	RADEONRestorePLL2Registers(pScrn, restore);
- 
-@@ -6488,15 +6526,14 @@
- 	if (pRADEONEnt->RestorePrimary) {
- 	    pRADEONEnt->RestorePrimary = FALSE;
- 
-+	    RADEONRestoreCommonRegisters(pScrn, &restore0);
- 	    RADEONRestoreCrtcRegisters(pScrn, &restore0);
- 	    RADEONRestoreFPRegisters(pScrn, &restore0);
- 	    RADEONRestorePLLRegisters(pScrn, &restore0);
- 	    pRADEONEnt->IsSecondaryRestored = FALSE;
- 	}
-     } else {
--	if (!pRADEONEnt->IsSecondaryRestored)
--	    RADEONRestoreCommonRegisters(pScrn, restore);
--
-+	RADEONRestoreMemMapRegisters(pScrn, restore);
- 	if (info->MergedFB) {
- 	    RADEONRestoreCrtc2Registers(pScrn, restore);
- 	    RADEONRestorePLL2Registers(pScrn, restore);
-@@ -6506,6 +6543,7 @@
- 	    info->IsSwitching) {
- 	    pRADEONEnt->IsSecondaryRestored = FALSE;
- 
-+	    RADEONRestoreCommonRegisters(pScrn, restore);
- 	    RADEONRestoreCrtcRegisters(pScrn, restore);
- 	    RADEONRestoreFPRegisters(pScrn, restore);
- 	    RADEONRestorePLLRegisters(pScrn, restore);
-@@ -6520,6 +6558,19 @@
- #endif
- }
- 
-+/* Read memory map */
-+static void RADEONSaveMemMapRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save)
-+{
-+    RADEONInfoPtr  info       = RADEONPTR(pScrn);
-+    unsigned char *RADEONMMIO = info->MMIO;
-+
-+    save->mc_fb_location     = INREG(RADEON_MC_FB_LOCATION);
-+    save->mc_agp_location    = INREG(RADEON_MC_AGP_LOCATION);
-+    save->display_base_addr  = INREG(RADEON_DISPLAY_BASE_ADDR);
-+    save->display2_base_addr = INREG(RADEON_DISPLAY2_BASE_ADDR);
-+    save->ov0_base_addr      = INREG(RADEON_OV0_BASE_ADDR);
-+}
-+
- /* Read common registers */
- static void RADEONSaveCommonRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save)
- {
-@@ -6703,6 +6754,7 @@
-     RADEONInfoPtr  info = RADEONPTR(pScrn);
- 
-     RADEONTRACE(("RADEONSaveMode(%p)\n", save));
-+    RADEONSaveMemMapRegisters(pScrn, save);
-     RADEONSaveCommonRegisters(pScrn, save);
-     if (info->IsSecondary) {
- 	RADEONSaveCrtc2Registers(pScrn, save);
-@@ -6731,6 +6783,7 @@
- 
-     RADEONTRACE(("RADEONSave\n"));
-     if (info->FBDev) {
-+	RADEONSaveMemMapRegisters(pScrn, save);
- 	fbdevHWSave(pScrn);
- 	return;
-     }
-@@ -6914,6 +6967,22 @@
-     int stop_req, max_stop_req;
-     float read_return_rate, time_disp1_drop_priority;
- 
-+    /* 
-+     * Set display0/1 priority up on r3/4xx in the memory controller for 
-+     * high res modes if the user specifies HIGH for displaypriority 
-+     * option.
-+     */
-+    if ((info->DispPriority == 2) && IS_R300_VARIANT) {
-+        CARD32 mc_init_misc_lat_timer = INREG(R300_MC_INIT_MISC_LAT_TIMER);
-+	if (info->MergedFB || pRADEONEnt->HasSecondary) {
-+	    mc_init_misc_lat_timer |= 0x1100; /* display 0 and 1 */
-+	} else {
-+	    mc_init_misc_lat_timer |= 0x0100; /* display 0 only */
-+	}
-+	OUTREG(R300_MC_INIT_MISC_LAT_TIMER, mc_init_misc_lat_timer);
-+    }
-+
-+
-     /* R420 family not supported yet */
-     if (info->ChipFamily == CHIP_FAMILY_R420) return; 
- 
-@@ -8016,6 +8085,7 @@
- 
-     info->Flags = mode->Flags;
- 
-+    RADEONInitMemMapRegisters(pScrn, save, info);
-     RADEONInitCommonRegisters(save, info);
-     if (info->IsSecondary) {
- 	if (!RADEONInitCrtc2Registers(pScrn, save, mode, info))
-@@ -8396,7 +8466,6 @@
-     } else
- 	if (!RADEONModeInit(pScrn, pScrn->currentMode)) return FALSE;
- 
--    RADEONSetFBLocation(pScrn);
-     if (!info->IsSecondary)
- 	RADEONRestoreSurfaces(pScrn, &info->ModeReg);
- #ifdef XF86DRI

Modified: trunk/driver/xserver-xorg-video-ati/debian/patches/series
===================================================================
--- trunk/driver/xserver-xorg-video-ati/debian/patches/series	2006-04-26 01:56:41 UTC (rev 1976)
+++ trunk/driver/xserver-xorg-video-ati/debian/patches/series	2006-04-26 02:12:36 UTC (rev 1977)
@@ -1,2 +1 @@
 01_ati_r128_update_chip_identification.diff
-02_ppc_fix.diff



Reply to: