summaryrefslogtreecommitdiff
path: root/x11/xf86-video-ati6
diff options
context:
space:
mode:
authorwiz <wiz>2013-10-31 00:07:23 +0000
committerwiz <wiz>2013-10-31 00:07:23 +0000
commit0f389145b589ccb75f441aa5caac26d455f6b431 (patch)
treed948453872e84e45448fe20021e6f6ac351100fe /x11/xf86-video-ati6
parent29691ec0f50c553109f68f71ed14d209c8dff790 (diff)
downloadpkgsrc-0f389145b589ccb75f441aa5caac26d455f6b431.tar.gz
Since this package is only used on NetBSD, pull over all patches from
xsrc. Bump PKGREVISION.
Diffstat (limited to 'x11/xf86-video-ati6')
-rw-r--r--x11/xf86-video-ati6/Makefile3
-rw-r--r--x11/xf86-video-ati6/distinfo11
-rw-r--r--x11/xf86-video-ati6/options.mk4
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_atombios__crtc.c130
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_atombios__output.c203
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_legacy__crtc.c24
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__accelfuncs.c12
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__crtc.c41
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__dri.c85
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__driver.c23
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__exa__render.c22
-rw-r--r--x11/xf86-video-ati6/patches/patch-src_radeon__render.c46
12 files changed, 600 insertions, 4 deletions
diff --git a/x11/xf86-video-ati6/Makefile b/x11/xf86-video-ati6/Makefile
index 22df8635571..19cea8e0cbc 100644
--- a/x11/xf86-video-ati6/Makefile
+++ b/x11/xf86-video-ati6/Makefile
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.3 2013/08/29 19:59:29 wiz Exp $
+# $NetBSD: Makefile,v 1.4 2013/10/31 00:07:23 wiz Exp $
DISTNAME= xf86-video-ati-6.14.6
PKGNAME= ${DISTNAME:S/ati/ati6/}
+PKGREVISION= 1
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_XORG:=driver/}
EXTRACT_SUFX= .tar.bz2
diff --git a/x11/xf86-video-ati6/distinfo b/x11/xf86-video-ati6/distinfo
index dc434c5193f..c4942fcc034 100644
--- a/x11/xf86-video-ati6/distinfo
+++ b/x11/xf86-video-ati6/distinfo
@@ -1,5 +1,14 @@
-$NetBSD: distinfo,v 1.2 2013/06/18 17:13:11 wiz Exp $
+$NetBSD: distinfo,v 1.3 2013/10/31 00:07:23 wiz Exp $
SHA1 (xf86-video-ati-6.14.6.tar.bz2) = b30383c7e5487c1df403a3af19fce8626d617a8d
RMD160 (xf86-video-ati-6.14.6.tar.bz2) = e285bff97a23f6e6f8553f1c010c840e6df882a8
Size (xf86-video-ati-6.14.6.tar.bz2) = 1139495 bytes
+SHA1 (patch-src_atombios__crtc.c) = e6ec24fdc63e3744db9442ab5e12ffe6949eef19
+SHA1 (patch-src_atombios__output.c) = ce3720c1d1cfd1f65023cea2745259af30a59add
+SHA1 (patch-src_legacy__crtc.c) = 6be802fa29797265efeceaadec9607de334dbfc8
+SHA1 (patch-src_radeon__accelfuncs.c) = f9d0ba2a0b7f62a56eecea117c4339f0e18b1e52
+SHA1 (patch-src_radeon__crtc.c) = c22e5a9c4119a4c6aa3f64f83b326effe270c96c
+SHA1 (patch-src_radeon__dri.c) = 479f58f8493543220b931182ab105309f8c035ab
+SHA1 (patch-src_radeon__driver.c) = 16bf5852e3ad684fca9c64768822868d4a224500
+SHA1 (patch-src_radeon__exa__render.c) = 831dd1e89bce2b7d8fd323b6b714cb457d2824b2
+SHA1 (patch-src_radeon__render.c) = 919c108ba8bafdcdb4e0fba80da621674a62de8c
diff --git a/x11/xf86-video-ati6/options.mk b/x11/xf86-video-ati6/options.mk
index 5914fa53745..722d01cac9a 100644
--- a/x11/xf86-video-ati6/options.mk
+++ b/x11/xf86-video-ati6/options.mk
@@ -1,8 +1,8 @@
-# $NetBSD: options.mk,v 1.1 2013/06/18 17:13:11 wiz Exp $
+# $NetBSD: options.mk,v 1.2 2013/10/31 00:07:23 wiz Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.xf86-video-ati6
PKG_SUPPORTED_OPTIONS= xf86-video-ati6-kms
-PKG_SUGGESTED_OPTIONS=
+PKG_SUGGESTED_OPTIONS=
.include "../../mk/bsd.options.mk"
diff --git a/x11/xf86-video-ati6/patches/patch-src_atombios__crtc.c b/x11/xf86-video-ati6/patches/patch-src_atombios__crtc.c
new file mode 100644
index 00000000000..ff7f380bb99
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_atombios__crtc.c
@@ -0,0 +1,130 @@
+$NetBSD: patch-src_atombios__crtc.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/atombios_crtc.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/atombios_crtc.c
+@@ -87,7 +87,7 @@ atombios_lock_crtc(atomBiosHandlePtr ato
+ data.exec.pspace = &crtc_data;
+
+ if (RHDAtomBiosFunc(atomBIOS->pScrn, atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("%s CRTC %d success\n", lock? "Lock":"Unlock", crtc);
++/* ErrorF("%s CRTC %d success\n", lock? "Lock":"Unlock", crtc); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -110,7 +110,7 @@ atombios_enable_crtc(atomBiosHandlePtr a
+ data.exec.pspace = &crtc_data;
+
+ if (RHDAtomBiosFunc(atomBIOS->pScrn, atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("%s CRTC %d success\n", state? "Enable":"Disable", crtc);
++/* ErrorF("%s CRTC %d success\n", state? "Enable":"Disable", crtc); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -133,7 +133,7 @@ atombios_enable_crtc_memreq(atomBiosHand
+ data.exec.pspace = &crtc_data;
+
+ if (RHDAtomBiosFunc(atomBIOS->pScrn, atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("%s CRTC memreq %d success\n", state? "Enable":"Disable", crtc);
++/* ErrorF("%s CRTC memreq %d success\n", state? "Enable":"Disable", crtc); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -157,7 +157,7 @@ atombios_blank_crtc(atomBiosHandlePtr at
+ data.exec.pspace = &crtc_data;
+
+ if (RHDAtomBiosFunc(atomBIOS->pScrn, atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("%s CRTC %d success\n", state? "Blank":"Unblank", crtc);
++/* ErrorF("%s CRTC %d success\n", state? "Blank":"Unblank", crtc); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -231,7 +231,7 @@ atombios_set_crtc_timing(xf86CrtcPtr crt
+ data.exec.pspace = &param;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set CRTC Timing success\n");
++/* ErrorF("Set CRTC Timing success\n"); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -282,7 +282,7 @@ atombios_set_crtc_dtd_timing(xf86CrtcPtr
+ data.exec.pspace = &param;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set DTD CRTC Timing success\n");
++/* ErrorF("Set DTD CRTC Timing success\n"); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -336,7 +336,7 @@ atombios_pick_pll(xf86CrtcPtr crtc)
+ } else
+ radeon_crtc->pll_id = radeon_crtc->crtc_id;
+
+- ErrorF("Picked PLL %d\n", radeon_crtc->pll_id);
++/* ErrorF("Picked PLL %d\n", radeon_crtc->pll_id); */
+
+ for (o = 0; o < xf86_config->num_output; o++) {
+ output = xf86_config->output[o];
+@@ -449,11 +449,11 @@ static uint32_t atombios_adjust_pll(xf86
+ args.v1.ucTransmitterID = radeon_encoder->encoder_id;
+ args.v1.ucEncodeMode = atombios_get_encoder_mode(output);
+
+- ErrorF("before %d\n", args.v1.usPixelClock);
++/* ErrorF("before %d\n", args.v1.usPixelClock); */
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+ adjusted_clock = le16_to_cpu(args.v1.usPixelClock) * 10;
+ }
+- ErrorF("after %d\n", args.v1.usPixelClock);
++/* ErrorF("after %d\n", args.v1.usPixelClock); */
+ break;
+ case 3:
+ args.v3.sInput.usPixelClock = cpu_to_le16(adjusted_clock / 10);
+@@ -467,7 +467,7 @@ static uint32_t atombios_adjust_pll(xf86
+ // if SS
+ // args.v3.sInput.ucDispPllConfig |= DISPPLL_CONFIG_SS_ENABLE;
+
+- ErrorF("before %d 0x%x\n", args.v3.sInput.usPixelClock, args.v3.sInput.ucDispPllConfig);
++/* ErrorF("before %d 0x%x\n", args.v3.sInput.usPixelClock, args.v3.sInput.ucDispPllConfig); */
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+ adjusted_clock = args.v3.sOutput.ulDispPllFreq * 10;
+ if (args.v3.sOutput.ucRefDiv) {
+@@ -478,8 +478,8 @@ static uint32_t atombios_adjust_pll(xf86
+ pll_flags |= RADEON_PLL_USE_POST_DIV;
+ info->pll.post_div = args.v3.sOutput.ucPostDiv;
+ }
+- ErrorF("after %d %d %d\n", args.v3.sOutput.ulDispPllFreq,
+- args.v3.sOutput.ucRefDiv, args.v3.sOutput.ucPostDiv);
++/* ErrorF("after %d %d %d\n", args.v3.sOutput.ulDispPllFreq,
++ args.v3.sOutput.ucRefDiv, args.v3.sOutput.ucPostDiv); */
+ }
+ break;
+ default:
+@@ -568,7 +568,7 @@ atombios_crtc_set_dcpll(xf86CrtcPtr crtc
+ data.exec.pspace = &args;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set DCPLL success\n");
++/* ErrorF("Set DCPLL success\n"); */
+ return;
+ }
+
+@@ -710,7 +710,7 @@ atombios_crtc_set_pll(xf86CrtcPtr crtc,
+ data.exec.pspace = &args;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set CRTC %d PLL success\n", radeon_crtc->crtc_id);
++/* ErrorF("Set CRTC %d PLL success\n", radeon_crtc->crtc_id); */
+ return;
+ }
+
+@@ -991,8 +991,8 @@ atombios_crtc_mode_set(xf86CrtcPtr crtc,
+ tilingChanged = RADEONSetTiling(pScrn);
+ }
+
+- ErrorF("Mode %dx%d - %d %d %d\n", adjusted_mode->CrtcHDisplay, adjusted_mode->CrtcVDisplay,
+- adjusted_mode->CrtcHTotal, adjusted_mode->CrtcVTotal, adjusted_mode->Flags);
++/* ErrorF("Mode %dx%d - %d %d %d\n", adjusted_mode->CrtcHDisplay, adjusted_mode->CrtcVDisplay,
++ adjusted_mode->CrtcHTotal, adjusted_mode->CrtcVTotal, adjusted_mode->Flags); */
+
+ RADEONInitMemMapRegisters(pScrn, info->ModeReg, info);
+ RADEONRestoreMemMapRegisters(pScrn, info->ModeReg);
diff --git a/x11/xf86-video-ati6/patches/patch-src_atombios__output.c b/x11/xf86-video-ati6/patches/patch-src_atombios__output.c
new file mode 100644
index 00000000000..5537f9c4677
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_atombios__output.c
@@ -0,0 +1,203 @@
+$NetBSD: patch-src_atombios__output.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/atombios_output.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/atombios_output.c
+@@ -234,7 +234,7 @@ atombios_output_dac_setup(xf86OutputPtr
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Output DAC%d setup success\n", num);
++/* ErrorF("Output DAC%d setup success\n", num); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -298,7 +298,7 @@ atombios_output_tv_setup(xf86OutputPtr o
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Output TV setup success\n");
++/* ErrorF("Output TV setup success\n"); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -333,7 +333,7 @@ atombios_external_tmds_setup(xf86OutputP
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("External TMDS setup success\n");
++/* ErrorF("External TMDS setup success\n"); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -364,7 +364,7 @@ atombios_output_ddia_setup(xf86OutputPtr
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("DDIA setup success\n");
++/* ErrorF("DDIA setup success\n"); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -503,7 +503,7 @@ atombios_output_digital_setup(xf86Output
+ data.exec.dataSpace = (void *)&space;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Output digital setup success\n");
++/* ErrorF("Output digital setup success\n"); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -826,7 +826,7 @@ atombios_output_dig_encoder_setup(xf86Ou
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Output DIG%d encoder setup success\n", radeon_output->dig_encoder);
++/* ErrorF("Output DIG%d encoder setup success\n", radeon_output->dig_encoder); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -1011,10 +1011,12 @@ atombios_output_dig_transmitter_setup(xf
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
++/*
+ if (IS_DCE32_VARIANT)
+ ErrorF("Output UNIPHY%d transmitter setup success\n", num);
+ else
+ ErrorF("Output DIG%d transmitter setup success\n", num);
++*/
+ return ATOM_SUCCESS;
+ }
+
+@@ -1299,7 +1301,7 @@ atombios_output_yuv_setup(xf86OutputPtr
+
+ OUTREG(reg, temp);
+
+- ErrorF("crtc %d YUV %s setup success\n", radeon_crtc->crtc_id, enable ? "enable" : "disable");
++/* ErrorF("crtc %d YUV %s setup success\n", radeon_crtc->crtc_id, enable ? "enable" : "disable"); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -1357,7 +1359,7 @@ atombios_output_overscan_setup(xf86Outpu
+ data.exec.pspace = &overscan_param;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set CRTC %d Overscan success\n", radeon_crtc->crtc_id);
++/* ErrorF("Set CRTC %d Overscan success\n", radeon_crtc->crtc_id); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -1414,13 +1416,13 @@ atombios_output_scaler_setup(xf86OutputP
+ break;
+ }
+ disp_data.ucEnable = SCALER_ENABLE_MULTITAP_MODE;
+- ErrorF("Using TV scaler %x %x\n", disp_data.ucTVStandard, disp_data.ucEnable);
++/* ErrorF("Using TV scaler %x %x\n", disp_data.ucTVStandard, disp_data.ucEnable); */
+ } else if (radeon_output->active_device & (ATOM_DEVICE_CV_SUPPORT)) {
+ disp_data.ucTVStandard = ATOM_TV_CV;
+ disp_data.ucEnable = SCALER_ENABLE_MULTITAP_MODE;
+- ErrorF("Using CV scaler %x %x\n", disp_data.ucTVStandard, disp_data.ucEnable);
++/* ErrorF("Using CV scaler %x %x\n", disp_data.ucTVStandard, disp_data.ucEnable); */
+ } else if (radeon_output->Flags & RADEON_USE_RMX) {
+- ErrorF("Using RMX\n");
++/* ErrorF("Using RMX\n"); */
+ if (radeon_output->rmx_type == RMX_FULL)
+ disp_data.ucEnable = ATOM_SCALER_EXPANSION;
+ else if (radeon_output->rmx_type == RMX_CENTER)
+@@ -1428,7 +1430,7 @@ atombios_output_scaler_setup(xf86OutputP
+ else if (radeon_output->rmx_type == RMX_ASPECT)
+ disp_data.ucEnable = ATOM_SCALER_EXPANSION;
+ } else {
+- ErrorF("Not using RMX\n");
++/* ErrorF("Not using RMX\n"); */
+ if (IS_AVIVO_VARIANT)
+ disp_data.ucEnable = ATOM_SCALER_DISABLE;
+ else
+@@ -1442,10 +1444,10 @@ atombios_output_scaler_setup(xf86OutputP
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+ if (radeon_output->active_device & (ATOM_DEVICE_CV_SUPPORT | ATOM_DEVICE_TV_SUPPORT)
+ && info->ChipFamily >= CHIP_FAMILY_RV515 && info->ChipFamily <= CHIP_FAMILY_RV570) {
+- ErrorF("forcing TV scaler\n");
++/* ErrorF("forcing TV scaler\n"); */
+ atom_rv515_force_tv_scaler(output->scrn, radeon_crtc);
+ }
+- ErrorF("scaler %d setup success\n", radeon_crtc->crtc_id);
++/* ErrorF("scaler %d setup success\n", radeon_crtc->crtc_id); */
+ return ATOM_SUCCESS;
+ }
+
+@@ -1548,10 +1550,12 @@ atombios_output_dpms(xf86OutputPtr outpu
+ reg = INREG(RADEON_BIOS_3_SCRATCH);
+ OUTREG(RADEON_BIOS_3_SCRATCH, reg & ~ATOM_S3_DFP2I_ACTIVE);
+ }
+- if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS)
++ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) != ATOM_SUCCESS)
++/*
+ ErrorF("Output %s enable success\n",
+ device_name[radeon_get_device_index(radeon_output->active_device)]);
+ else
++*/
+ ErrorF("Output %s enable failed\n",
+ device_name[radeon_get_device_index(radeon_output->active_device)]);
+ if (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_DDI)
+@@ -1581,10 +1585,12 @@ atombios_output_dpms(xf86OutputPtr outpu
+ data.exec.pspace = &disp_data;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data)
+- == ATOM_SUCCESS)
++ != ATOM_SUCCESS)
++/*
+ ErrorF("Output %s disable success\n",
+ device_name[radeon_get_device_index(radeon_output->active_device)]);
+ else
++*/
+ ErrorF("Output %s disable failed\n",
+ device_name[radeon_get_device_index(radeon_output->active_device)]);
+ }
+@@ -1735,7 +1741,7 @@ atombios_set_output_crtc_source(xf86Outp
+ data.exec.dataSpace = (void *)&space;
+
+ if (RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Set CRTC %d Source success\n", radeon_crtc->crtc_id);
++/* ErrorF("Set CRTC %d Source success\n", radeon_crtc->crtc_id); */
+ return;
+ }
+
+@@ -2006,7 +2012,7 @@ atom_bios_dac_load_detect(atomBiosHandle
+ data.exec.pspace = &dac_data;
+
+ if (RHDAtomBiosFunc(atomBIOS->pScrn, atomBIOS, ATOMBIOS_EXEC, &data) == ATOM_SUCCESS) {
+- ErrorF("Dac detection success\n");
++/* ErrorF("Dac detection success\n"); */
+ return ATOM_SUCCESS ;
+ }
+
+@@ -2161,7 +2167,7 @@ RADEONDPEncoderService(xf86OutputPtr out
+
+ RHDAtomBiosFunc(info->atomBIOS->pScrn, info->atomBIOS, ATOMBIOS_EXEC, &data);
+
+- ErrorF("%s: %d %d\n", __func__, action, args.ucStatus);
++/* ErrorF("%s: %d %d\n", __func__, action, args.ucStatus); */
+ return args.ucStatus;
+ }
+
+@@ -2320,7 +2326,7 @@ atom_dp_i2c_address(I2CDevPtr dev, I2CSl
+ static Bool
+ atom_dp_i2c_start(I2CBusPtr bus, int timeout)
+ {
+- ErrorF("%s\n", __func__);
++/* ErrorF("%s\n", __func__); */
+ return TRUE;
+ }
+
+@@ -2467,8 +2473,8 @@ atom_dp_get_link_status(xf86OutputPtr ou
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "dp link status failed\n");
+ return FALSE;
+ }
+- ErrorF("link status %02x %02x %02x %02x %02x %02x\n", link_status[0], link_status[1],
+- link_status[2], link_status[3], link_status[4], link_status[5]);
++/* ErrorF("link status %02x %02x %02x %02x %02x %02x\n", link_status[0], link_status[1],
++ link_status[2], link_status[3], link_status[4], link_status[5]); */
+
+ return TRUE;
+ }
diff --git a/x11/xf86-video-ati6/patches/patch-src_legacy__crtc.c b/x11/xf86-video-ati6/patches/patch-src_legacy__crtc.c
new file mode 100644
index 00000000000..72dd54ea76e
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_legacy__crtc.c
@@ -0,0 +1,24 @@
+$NetBSD: patch-src_legacy__crtc.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/legacy_crtc.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/legacy_crtc.c
+@@ -305,7 +305,8 @@ RADEONRestorePLLRegisters(ScrnInfoPtr pS
+
+ #if defined(__powerpc__)
+ /* apparently restoring the pll causes a hang??? */
+- if (info->MacModel == RADEON_MAC_IBOOK)
++ if ((info->MacModel == RADEON_MAC_IBOOK) ||
++ (info->MacModel == RADEON_MAC_MINI_INTERNAL))
+ return;
+ #endif
+
+@@ -1260,7 +1261,8 @@ RADEONInitPLLRegisters(xf86CrtcPtr crtc,
+
+ #if defined(__powerpc__)
+ /* apparently programming this otherwise causes a hang??? */
+- if (info->MacModel == RADEON_MAC_IBOOK)
++ if ((info->MacModel == RADEON_MAC_IBOOK) ||
++ (info->MacModel == RADEON_MAC_MINI_INTERNAL))
+ save->ppll_div_3 = 0x000600ad;
+ else
+ #endif
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__accelfuncs.c b/x11/xf86-video-ati6/patches/patch-src_radeon__accelfuncs.c
new file mode 100644
index 00000000000..ab255955d4d
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__accelfuncs.c
@@ -0,0 +1,12 @@
+$NetBSD: patch-src_radeon__accelfuncs.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_accelfuncs.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_accelfuncs.c
+@@ -1332,7 +1332,6 @@ FUNC_NAME(RADEONAccelInit)(ScreenPtr pSc
+ #endif
+
+ #ifdef RENDER
+- info->RenderAccel = FALSE;
+ if (info->RenderAccel && info->xaaReq.minorversion >= 2) {
+
+ a->CPUToScreenAlphaTextureFlags = XAA_RENDER_POWER_OF_2_TILE_ONLY;
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__crtc.c b/x11/xf86-video-ati6/patches/patch-src_radeon__crtc.c
new file mode 100644
index 00000000000..dfb62f399e0
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__crtc.c
@@ -0,0 +1,41 @@
+$NetBSD: patch-src_radeon__crtc.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_crtc.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_crtc.c
+@@ -170,7 +170,7 @@ RADEONComputePLL_old(RADEONPLLPtr pll,
+
+ freq = freq * 1000;
+
+- ErrorF("freq: %lu\n", freq);
++/* ErrorF("freq: %lu\n", freq); */
+
+ if (flags & RADEON_PLL_USE_REF_DIV)
+ min_ref_div = max_ref_div = pll->reference_div;
+@@ -300,11 +300,13 @@ RADEONComputePLL_old(RADEONPLLPtr pll,
+ }
+ }
+
++/*
+ ErrorF("best_freq: %u\n", (unsigned int)best_freq);
+ ErrorF("best_feedback_div: %u\n", (unsigned int)best_feedback_div);
+ ErrorF("best_frac_feedback_div: %u\n", (unsigned int)best_frac_feedback_div);
+ ErrorF("best_ref_div: %u\n", (unsigned int)best_ref_div);
+ ErrorF("best_post_div: %u\n", (unsigned int)best_post_div);
++*/
+
+ if (best_freq == -1)
+ FatalError("Couldn't find valid PLL dividers\n");
+@@ -438,11 +440,13 @@ RADEONComputePLL_new(RADEONPLLPtr pll,
+ best_freq += pll->reference_freq * fb_div_frac;
+ best_freq = best_freq / (ref_div * post_div);
+
++/*
+ ErrorF("best_freq: %u\n", (unsigned int)best_freq);
+ ErrorF("best_feedback_div: %u\n", (unsigned int)fb_div);
+ ErrorF("best_frac_feedback_div: %u\n", (unsigned int)fb_div_frac);
+ ErrorF("best_ref_div: %u\n", (unsigned int)ref_div);
+ ErrorF("best_post_div: %u\n", (unsigned int)post_div);
++*/
+
+ done:
+ if (best_freq == 0)
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__dri.c b/x11/xf86-video-ati6/patches/patch-src_radeon__dri.c
new file mode 100644
index 00000000000..a30da594bfb
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__dri.c
@@ -0,0 +1,85 @@
+$NetBSD: patch-src_radeon__dri.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_dri.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_dri.c
+@@ -40,6 +40,8 @@
+
+ #include <string.h>
+ #include <stdio.h>
++#include <sys/types.h>
++#include <sys/mman.h>
+
+ /* Driver data structures */
+ #include "radeon.h"
+@@ -1056,9 +1058,8 @@ static Bool RADEONDRIPciInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[pci] %d kB allocated with handle 0x%08x\n",
+- info->dri->gartSize*1024,
+- (unsigned int)info->dri->pciMemHandle);
++ "[pci] %d kB allocated with handle 0x%08lx\n",
++ info->dri->gartSize*1024, info->dri->pciMemHandle);
+
+ RADEONDRIInitGARTValues(info);
+
+@@ -1069,12 +1070,11 @@ static Bool RADEONDRIPciInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[pci] ring handle = 0x%08x\n",
+- (unsigned int)info->dri->ringHandle);
++ "[pci] ring handle = 0x%08lx, size = 0x%08lx\n", info->dri->ringHandle, info->dri->ringMapSize);
+
+- if (drmMap(info->dri->drmFD, info->dri->ringHandle, info->dri->ringMapSize,
+- &info->dri->ring) < 0) {
+- xf86DrvMsg(pScreen->myNum, X_ERROR, "[pci] Could not map ring\n");
++ if ((ret = drmMap(info->dri->drmFD, info->dri->ringHandle, info->dri->ringMapSize,
++ &info->dri->ring)) < 0) {
++ xf86DrvMsg(pScreen->myNum, X_ERROR, "[pci] Could not map ring: ret %d\n", ret);
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+@@ -1091,8 +1091,8 @@ static Bool RADEONDRIPciInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[pci] ring read ptr handle = 0x%08x\n",
+- (unsigned int)info->dri->ringReadPtrHandle);
++ "[pci] ring read ptr handle = 0x%08lx\n",
++ info->dri->ringReadPtrHandle);
+
+ if (drmMap(info->dri->drmFD, info->dri->ringReadPtrHandle, info->dri->ringReadMapSize,
+ &info->dri->ringReadPtr) < 0) {
+@@ -1114,8 +1114,8 @@ static Bool RADEONDRIPciInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[pci] vertex/indirect buffers handle = 0x%08x\n",
+- (unsigned int)info->dri->bufHandle);
++ "[pci] vertex/indirect buffers handle = 0x%08lx\n",
++ info->dri->bufHandle);
+
+ if (drmMap(info->dri->drmFD, info->dri->bufHandle, info->dri->bufMapSize,
+ &info->dri->buf) < 0) {
+@@ -1137,8 +1137,8 @@ static Bool RADEONDRIPciInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[pci] GART texture map handle = 0x%08x\n",
+- (unsigned int)info->dri->gartTexHandle);
++ "[pci] GART texture map handle = 0x%08lx\n",
++ info->dri->gartTexHandle);
+
+ if (drmMap(info->dri->drmFD, info->dri->gartTexHandle, info->dri->gartTexMapSize,
+ &info->dri->gartTex) < 0) {
+@@ -1165,8 +1165,7 @@ static Bool RADEONDRIMapInit(RADEONInfoP
+ return FALSE;
+ }
+ xf86DrvMsg(pScreen->myNum, X_INFO,
+- "[drm] register handle = 0x%08x\n",
+- (unsigned int)info->dri->registerHandle);
++ "[drm] register handle = 0x%08lx\n", info->dri->registerHandle);
+
+ return TRUE;
+ }
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__driver.c b/x11/xf86-video-ati6/patches/patch-src_radeon__driver.c
new file mode 100644
index 00000000000..37133bded24
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__driver.c
@@ -0,0 +1,23 @@
+$NetBSD: patch-src_radeon__driver.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_driver.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_driver.c
+@@ -178,7 +178,7 @@ static const OptionInfoRec RADEONOptions
+ { OPTION_SCALER_WIDTH, "ScalerWidth", OPTV_INTEGER, {0}, FALSE },
+ #endif
+ #ifdef RENDER
+- { OPTION_RENDER_ACCEL, "RenderAccel", OPTV_BOOLEAN, {0}, FALSE },
++ { OPTION_RENDER_ACCEL, "RenderAccel", OPTV_BOOLEAN, {0}, TRUE },
+ { OPTION_SUBPIXEL_ORDER, "SubPixelOrder", OPTV_ANYSTR, {0}, FALSE },
+ #endif
+ { OPTION_CLOCK_GATING, "ClockGating", OPTV_BOOLEAN, {0}, FALSE },
+@@ -3761,7 +3761,8 @@ Bool RADEONScreenInit(SCREEN_INIT_ARGS_D
+
+ /* DRI finalisation */
+ #ifdef XF86DRI
+- if (info->directRenderingEnabled && info->cardType==CARD_PCIE &&
++ if (info->directRenderingEnabled &&
++ (info->cardType==CARD_PCIE || info->cardType==CARD_PCI) &&
+ info->dri->pKernelDRMVersion->version_minor >= 19)
+ {
+ if (RADEONDRISetParam(pScrn, RADEON_SETPARAM_PCIGART_LOCATION, info->dri->pciGartOffset) < 0)
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__exa__render.c b/x11/xf86-video-ati6/patches/patch-src_radeon__exa__render.c
new file mode 100644
index 00000000000..e1d80a46ae2
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__exa__render.c
@@ -0,0 +1,22 @@
+$NetBSD: patch-src_radeon__exa__render.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_exa_render.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_exa_render.c
+@@ -649,7 +649,7 @@ static Bool FUNC_NAME(R100PrepareComposi
+ CHECK_OFFSET(pDst, 0x0f, "destination");
+
+ if (!pSrc) {
+- pSrc = RADEONSolidPixmap(pScreen, cpu_to_le32(pSrcPicture->pSourcePict->solidFill.color));
++ pSrc = RADEONSolidPixmap(pScreen, pSrcPicture->pSourcePict->solidFill.color);
+ if (!pSrc)
+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
+ }
+@@ -661,7 +661,7 @@ static Bool FUNC_NAME(R100PrepareComposi
+ return FALSE;
+
+ if (pMaskPicture && !pMask) {
+- pMask = RADEONSolidPixmap(pScreen, cpu_to_le32(pMaskPicture->pSourcePict->solidFill.color));
++ pMask = RADEONSolidPixmap(pScreen, pMaskPicture->pSourcePict->solidFill.color);
+ if (!pMask) {
+ if (!pSrcPicture->pDrawable)
+ pScreen->DestroyPixmap(pSrc);
diff --git a/x11/xf86-video-ati6/patches/patch-src_radeon__render.c b/x11/xf86-video-ati6/patches/patch-src_radeon__render.c
new file mode 100644
index 00000000000..ff9e3a45359
--- /dev/null
+++ b/x11/xf86-video-ati6/patches/patch-src_radeon__render.c
@@ -0,0 +1,46 @@
+$NetBSD: patch-src_radeon__render.c,v 1.1 2013/10/31 00:07:24 wiz Exp $
+
+--- src/radeon_render.c.orig 2012-06-25 08:19:41.000000000 +0000
++++ src/radeon_render.c
+@@ -409,6 +409,9 @@ static Bool FUNC_NAME(R100SetupTexture)(
+ dst_pitch = RADEON_ALIGN(width * tex_bytepp, 64);
+ size = dst_pitch * height;
+
++ info->accel_state->texW[0] = width;
++ info->accel_state->texH[0] = height;
++
+ if ((flags & XAA_RENDER_REPEAT) && (height != 1) &&
+ (RADEON_ALIGN(width * tex_bytepp, 32) != dst_pitch))
+ return FALSE;
+@@ -432,7 +435,7 @@ static Bool FUNC_NAME(R100SetupTexture)(
+ txformat |= ATILog2(width) << RADEON_TXFORMAT_WIDTH_SHIFT;
+ txformat |= ATILog2(height) << RADEON_TXFORMAT_HEIGHT_SHIFT;
+ } else {
+- tex_size = (height << 16) | width;
++ tex_size = ((height - 1) << 16) | (width - 1);
+ txformat |= RADEON_TXFORMAT_NON_POWER2;
+ }
+
+@@ -462,7 +465,6 @@ static Bool FUNC_NAME(R100SetupTexture)(
+
+ if (info->accel_state->accel->NeedToSync)
+ info->accel_state->accel->Sync(pScrn);
+-
+ while (height--) {
+ memcpy(dst, src, width * tex_bytepp);
+ src += src_pitch;
+@@ -633,10 +635,10 @@ FUNC_NAME(R100SubsequentCPUToScreenTextu
+
+ r = width + l;
+ b = height + t;
+- fl = srcx;
+- fr = srcx + width;
+- ft = srcy;
+- fb = srcy + height;
++ fl = (float)srcx / info->accel_state->texW[0];
++ fr = (float)(srcx + width) / info->accel_state->texW[0];
++ ft = (float)srcy / info->accel_state->texH[0];
++ fb = (float)(srcy + height) / info->accel_state->texH[0];
+
+ #ifdef ACCEL_CP
+ BEGIN_RING(25);