diff options
author | hasso <hasso@pkgsrc.org> | 2009-09-11 06:38:36 +0000 |
---|---|---|
committer | hasso <hasso@pkgsrc.org> | 2009-09-11 06:38:36 +0000 |
commit | 400f97f10e5586c74d82ad4f6cb8596f318f2e91 (patch) | |
tree | 0cb1f524b889e390853f89624b352f75293d508f /x11/xf86-video-ati | |
parent | 5d0862f928cfd1fbdd159b2ac5e725ab9b39a517 (diff) | |
download | pkgsrc-400f97f10e5586c74d82ad4f6cb8596f318f2e91.tar.gz |
Update to 6.12.3.
It contains numerous fixes to 6.12.2 backported from
master over the last few months, along with PCI IDs
for some new hardware.
Adam Jackson (1):
Fix misleading filenames in DRI setup failure messages
Alex Deucher (42):
R6xx/R7xx: set proper 3D client driver name for r600
radeon: chip family typo
R6xx/R7xx: cleanup macro
radeon: remove old crtc size heuristics
radeon: fix tmds_pll randr property
Revert "DCE3/3.2: cleanup dpms after previous changes"
Remove old messages
Endian fixes for object table
RS690: add quirk for acer board
AVIVO: fix for cursor corruption issue
r2xx/r3xx/r4xx: further i2c fixups
AVIVO: make sure cursor width isn't negative
RV410: SE variants only have 1 quad pipe
AVIVO: fix cursor corruption/flickering issues
R6xx/r7xx: fix CURSOR_SWAPPING_* macros
AVIVO: better fix for cursor flickering/corruption issues
radeon: fix several dpms issues
r2xx-r4xx: fix typo in last i2c fix and clarify hw i2c pin sel
AVIVO: move cusor offscreen when disabling
AVIVO: fix cursor corruption bands for real
AVIVO: set default cursor mode in cursor init
RS690/RS740: fix connector enumeration in some cases
RS690: gpio/connector fixes
R3xx-R5xx: don't set TX_OFFSET_RS in RS_INST_COUNT
r3xx-r5xx: switch to 1/12 subpixel precision
R3xx/R4xx tex vid: increase the guardband limit for rendering with a tri
RV770: add missing pci id
radeon: try harder when checking if a card is posted
r4xx: Add some missing pci ids
Add RV740 (HD4770) support
atom: connector quirk
Add some missing M96 pci ids
RV280: Add an AGP quirk
RV280: another AGP quirk
Add an r420 AGP quirk
radeon: Set PCI/PCIE bus type properly per asic
radeon: fix typo in object header to connector type conversion
radeon: add some new r7xx pci ids
RS880: enable accel
RV280: add agp quirk
RV740: disable small DFS transfers
RV280: add agp quirk
Bryce Harrington (3):
radeon: AGPMode quirk needed for HP Omnibook 6200
radeon: AGPMode quirk needed for IBM Thinkpad T40 with Mobility M7 LW
radeon: AGPMode quirk needed for SiS
Dave Airlie (13):
radeon: fix DDC on rv410 VGA ports for non-atom use.
radeon: tweak ddc fix for all r300s.
radeon: fix r600 shadow fb mode with cursor allocation in wrong place
radeon/tv: fix typo in crtc register modifications
r100/r200: dont emit wrong clamp modes.
atom/tvout: set the correct scaler up for tv out
atombios: store dac detect result into save register.
atom: recall crtc source script after tv dpms on
radeon: move detected monitor type debugging.
r600: fix bad unit in texture setup
ati: update for resources/RAC API removal
ati: change to using ABI version check
ati 6.12.3
Fredrik Höglund (1):
Check if the composite op is supported in R200CheckComposite.
Markus Gapp (1):
Add quirk for asus hd3450 board
Michel Dänzer (2):
Clear the framebuffer before initializing modes.
Pre-R600 EXA: Fix coordinate limits off-by-one error.
Roland Scheidegger (1):
R6xx/R7xx: fix pixel centers
Diffstat (limited to 'x11/xf86-video-ati')
-rw-r--r-- | x11/xf86-video-ati/Makefile | 5 | ||||
-rw-r--r-- | x11/xf86-video-ati/distinfo | 12 | ||||
-rw-r--r-- | x11/xf86-video-ati/patches/patch-aa | 165 | ||||
-rw-r--r-- | x11/xf86-video-ati/patches/patch-ab | 21 | ||||
-rw-r--r-- | x11/xf86-video-ati/patches/patch-ac | 30 |
5 files changed, 18 insertions, 215 deletions
diff --git a/x11/xf86-video-ati/Makefile b/x11/xf86-video-ati/Makefile index 72b0d92edd0..8ae1320ade5 100644 --- a/x11/xf86-video-ati/Makefile +++ b/x11/xf86-video-ati/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.12 2009/06/11 06:55:28 hasso Exp $ +# $NetBSD: Makefile,v 1.13 2009/09/11 06:38:36 hasso Exp $ -DISTNAME= xf86-video-ati-6.12.2 -PKGREVISION= 1 +DISTNAME= xf86-video-ati-6.12.3 CATEGORIES= x11 MASTER_SITES= ${MASTER_SITE_XORG:=driver/} EXTRACT_SUFX= .tar.bz2 diff --git a/x11/xf86-video-ati/distinfo b/x11/xf86-video-ati/distinfo index f74d23e5fe0..1f99d85cabd 100644 --- a/x11/xf86-video-ati/distinfo +++ b/x11/xf86-video-ati/distinfo @@ -1,8 +1,6 @@ -$NetBSD: distinfo,v 1.9 2009/06/11 06:55:28 hasso Exp $ +$NetBSD: distinfo,v 1.10 2009/09/11 06:38:36 hasso Exp $ -SHA1 (xf86-video-ati-6.12.2.tar.bz2) = a09a579ece160e714774d3a54da3e1f2bc48ec36 -RMD160 (xf86-video-ati-6.12.2.tar.bz2) = 79f6be946e121a9a27240f1a6b05b7dce0714a2f -Size (xf86-video-ati-6.12.2.tar.bz2) = 902480 bytes -SHA1 (patch-aa) = 36602ec8e62ac1b854a51d666811376890871fd5 -SHA1 (patch-ab) = bb01db0635ab92d7379d31ca3890e574e8450886 -SHA1 (patch-ac) = 605892e355f028d83b5db112f5c68a72bcc5e4b0 +SHA1 (xf86-video-ati-6.12.3.tar.bz2) = 9c48902fcbd020b38fa62779dfb82124cff33a0e +RMD160 (xf86-video-ati-6.12.3.tar.bz2) = d2438ef6b35206c0063bb9d42c62cea544bba2ca +Size (xf86-video-ati-6.12.3.tar.bz2) = 915171 bytes +SHA1 (patch-ac) = e8b4eb3f92ccb4f4741d9a1abf444eea01b74ca0 diff --git a/x11/xf86-video-ati/patches/patch-aa b/x11/xf86-video-ati/patches/patch-aa deleted file mode 100644 index 7e61a03b702..00000000000 --- a/x11/xf86-video-ati/patches/patch-aa +++ /dev/null @@ -1,165 +0,0 @@ -$NetBSD: patch-aa,v 1.5 2009/06/11 06:55:28 hasso Exp $ - -Accumulated cursor fixes from 6.12 branch. Should fix cursor corruption -issues: - -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=0ea75453 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=f2aaa708 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=998fd244 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=666b0ff9 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=fbb04716 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=cb8081a8 -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=b6cd47ec -http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?h=6.12-branch&id=f2c0fa5e - ---- src/radeon_cursor.c.orig 2009-06-10 21:33:32 +0300 -+++ src/radeon_cursor.c 2009-06-10 21:34:01 +0300 -@@ -73,14 +73,17 @@ - #define CURSOR_SWAPPING_DECL_MMIO unsigned char *RADEONMMIO = info->MMIO; - #define CURSOR_SWAPPING_START() \ - do { \ -+ if (info->ChipFamily < CHIP_FAMILY_R600) \ - OUTREG(RADEON_SURFACE_CNTL, \ - (info->ModeReg->surface_cntl | \ - RADEON_NONSURF_AP0_SWP_32BPP | RADEON_NONSURF_AP1_SWP_32BPP) & \ - ~(RADEON_NONSURF_AP0_SWP_16BPP | RADEON_NONSURF_AP1_SWP_16BPP)); \ - } while (0) --#define CURSOR_SWAPPING_END() (OUTREG(RADEON_SURFACE_CNTL, \ -- info->ModeReg->surface_cntl)) -- -+#define CURSOR_SWAPPING_END() \ -+ do { \ -+ if (info->ChipFamily < CHIP_FAMILY_R600) \ -+ OUTREG(RADEON_SURFACE_CNTL, info->ModeReg->surface_cntl); \ -+ } while (0) - #else - - #define CURSOR_SWAPPING_DECL_MMIO -@@ -97,13 +100,14 @@ avivo_setup_cursor(xf86CrtcPtr crtc, Boo - RADEONInfoPtr info = RADEONPTR(crtc->scrn); - unsigned char *RADEONMMIO = info->MMIO; - -- OUTREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset, 0); -+ /* always use the same cursor mode even if the cursor is disabled, -+ * otherwise you may end up with cursor curruption bands -+ */ -+ OUTREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset, (AVIVO_D1CURSOR_MODE_24BPP << AVIVO_D1CURSOR_MODE_SHIFT)); - - if (enable) { - OUTREG(AVIVO_D1CUR_SURFACE_ADDRESS + radeon_crtc->crtc_offset, - info->fbLocation + radeon_crtc->cursor_offset + pScrn->fbOffset); -- OUTREG(AVIVO_D1CUR_SIZE + radeon_crtc->crtc_offset, -- ((CURSOR_WIDTH - 1) << 16) | (CURSOR_HEIGHT - 1)); - OUTREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset, - AVIVO_D1CURSOR_EN | (AVIVO_D1CURSOR_MODE_24BPP << AVIVO_D1CURSOR_MODE_SHIFT)); - } -@@ -138,9 +142,6 @@ radeon_crtc_show_cursor (xf86CrtcPtr crt - - if (IS_AVIVO_VARIANT) { - avivo_lock_cursor(crtc, TRUE); -- OUTREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset, -- INREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset) -- | AVIVO_D1CURSOR_EN); - avivo_setup_cursor(crtc, TRUE); - avivo_lock_cursor(crtc, FALSE); - } else { -@@ -171,9 +172,6 @@ radeon_crtc_hide_cursor (xf86CrtcPtr crt - - if (IS_AVIVO_VARIANT) { - avivo_lock_cursor(crtc, TRUE); -- OUTREG(AVIVO_D1CUR_CONTROL+ radeon_crtc->crtc_offset, -- INREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset) -- & ~(AVIVO_D1CURSOR_EN)); - avivo_setup_cursor(crtc, FALSE); - avivo_lock_cursor(crtc, FALSE); - } else { -@@ -196,6 +194,7 @@ void - radeon_crtc_set_cursor_position (xf86CrtcPtr crtc, int x, int y) - { - ScrnInfoPtr pScrn = crtc->scrn; -+ RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn); - RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; - int crtc_id = radeon_crtc->crtc_id; - RADEONInfoPtr info = RADEONPTR(pScrn); -@@ -210,15 +209,38 @@ radeon_crtc_set_cursor_position (xf86Crt - if (yorigin >= CURSOR_HEIGHT) yorigin = CURSOR_HEIGHT - 1; - - if (IS_AVIVO_VARIANT) { -+ int w = CURSOR_WIDTH; -+ - /* avivo cursor spans the full fb width */ - if (crtc->rotatedData == NULL) { - x += crtc->x; - y += crtc->y; - } -+ -+ if (pRADEONEnt->Controller[0]->enabled && -+ pRADEONEnt->Controller[1]->enabled) { -+ int cursor_end, frame_end; -+ -+ cursor_end = x - xorigin + w; -+ frame_end = crtc->x + mode->CrtcHDisplay; -+ -+ if (cursor_end >= frame_end) { -+ w = w - (cursor_end - frame_end); -+ if (!(frame_end & 0x7f)) -+ w--; -+ } else { -+ if (!(cursor_end & 0x7f)) -+ w--; -+ } -+ if (w <= 0) -+ w = 1; -+ } -+ - avivo_lock_cursor(crtc, TRUE); - OUTREG(AVIVO_D1CUR_POSITION + radeon_crtc->crtc_offset, ((xorigin ? 0 : x) << 16) - | (yorigin ? 0 : y)); - OUTREG(AVIVO_D1CUR_HOT_SPOT + radeon_crtc->crtc_offset, (xorigin << 16) | yorigin); -+ OUTREG(AVIVO_D1CUR_SIZE + radeon_crtc->crtc_offset, ((w - 1) << 16) | (CURSOR_HEIGHT - 1)); - avivo_lock_cursor(crtc, FALSE); - } else { - if (mode->Flags & V_DBLSCAN) -@@ -320,23 +342,17 @@ Bool RADEONCursorInit(ScreenPtr pScreen) - { - ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; - RADEONInfoPtr info = RADEONPTR(pScrn); -+ unsigned char *RADEONMMIO = info->MMIO; - xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); -- int width; -- int width_bytes; -- int height; -- int size_bytes; - int c; - -- size_bytes = CURSOR_WIDTH * 4 * CURSOR_HEIGHT; -- width = pScrn->displayWidth; -- width_bytes = width * (pScrn->bitsPerPixel / 8); -- height = ((size_bytes * xf86_config->num_crtc) + width_bytes - 1) / width_bytes; -- int align = IS_AVIVO_VARIANT ? 4096 : 256; -- -- if (!info->useEXA) { -- for (c = 0; c < xf86_config->num_crtc; c++) { -- xf86CrtcPtr crtc = xf86_config->crtc[c]; -- RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; -+ for (c = 0; c < xf86_config->num_crtc; c++) { -+ xf86CrtcPtr crtc = xf86_config->crtc[c]; -+ RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; -+ -+ if (!info->useEXA) { -+ int size_bytes = CURSOR_WIDTH * 4 * CURSOR_HEIGHT; -+ int align = IS_AVIVO_VARIANT ? 4096 : 256; - - radeon_crtc->cursor_offset = - radeon_legacy_allocate_memory(pScrn, &radeon_crtc->cursor_mem, size_bytes, align); -@@ -350,6 +366,10 @@ Bool RADEONCursorInit(ScreenPtr pScreen) - c, - (unsigned int)radeon_crtc->cursor_offset); - } -+ /* set the cursor mode the same on both crtcs to avoid corruption */ -+ if (IS_AVIVO_VARIANT) -+ OUTREG(AVIVO_D1CUR_CONTROL + radeon_crtc->crtc_offset, -+ (AVIVO_D1CURSOR_MODE_24BPP << AVIVO_D1CURSOR_MODE_SHIFT)); - } - - return xf86_cursors_init (pScreen, CURSOR_WIDTH, CURSOR_HEIGHT, diff --git a/x11/xf86-video-ati/patches/patch-ab b/x11/xf86-video-ati/patches/patch-ab deleted file mode 100644 index 461eda601b4..00000000000 --- a/x11/xf86-video-ati/patches/patch-ab +++ /dev/null @@ -1,21 +0,0 @@ -$NetBSD: patch-ab,v 1.3 2009/06/11 06:55:28 hasso Exp $ - -Fix coordinate limits off-by-one error causing hardware freezes: -http://bugs.freedesktop.org/show_bug.cgi?id=21598 - ---- src/radeon_exa_funcs.c.orig 2009-06-10 21:36:23 +0300 -+++ src/radeon_exa_funcs.c 2009-06-10 21:36:43 +0300 -@@ -532,11 +532,11 @@ Bool FUNC_NAME(RADEONDrawInit)(ScreenPtr - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Setting EXA maxPitchBytes\n"); - - info->accel_state->exa->maxPitchBytes = 16320; -- info->accel_state->exa->maxX = 8192; -+ info->accel_state->exa->maxX = 8191; - #else - info->accel_state->exa->maxX = 16320 / 4; - #endif -- info->accel_state->exa->maxY = 8192; -+ info->accel_state->exa->maxY = 8191; - - if (xf86ReturnOptValBool(info->Options, OPTION_EXA_VSYNC, FALSE)) { - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "EXA VSync enabled\n"); diff --git a/x11/xf86-video-ati/patches/patch-ac b/x11/xf86-video-ati/patches/patch-ac index d29ae1c9f61..5375d4982e4 100644 --- a/x11/xf86-video-ati/patches/patch-ac +++ b/x11/xf86-video-ati/patches/patch-ac @@ -1,29 +1,21 @@ -$NetBSD: patch-ac,v 1.3 2008/07/14 04:01:07 tnn Exp $ +$NetBSD: patch-ac,v 1.4 2009/09/11 06:38:36 hasso Exp $ ---- configure.orig 2008-06-27 01:39:04.000000000 +0200 -+++ configure -@@ -21440,23 +21440,15 @@ _ACEOF - fi - - --if test "$DRI" != no; then -+if test "x$DRI" = xauto; then - as_ac_File=`echo "ac_cv_file_${sdkdir}/dri.h" | $as_tr_sh` - { echo "$as_me:$LINENO: checking for ${sdkdir}/dri.h" >&5 - echo $ECHO_N "checking for ${sdkdir}/dri.h... $ECHO_C" >&6; } +--- configure.orig 2009-09-10 06:00:38 +0300 ++++ configure 2009-09-10 21:07:01 +0300 +@@ -23340,16 +23340,8 @@ $as_echo_n "checking for $XORG_SGML_PATH if { as_var=$as_ac_File; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + $as_echo_n "(cached) " >&6 else - test "$cross_compiling" = yes && -- { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5 --echo "$as_me: error: cannot check for file existence when cross compiling" >&2;} +- { { $as_echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5 +-$as_echo "$as_me: error: cannot check for file existence when cross compiling" >&2;} - { (exit 1); exit 1; }; } --if test -r "${sdkdir}/dri.h"; then +-if test -r "$XORG_SGML_PATH/X11/defs.ent"; then - eval "$as_ac_File=yes" -else eval "$as_ac_File=no" fi -fi - ac_res=`eval echo '${'$as_ac_File'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 - echo "${ECHO_T}$ac_res" >&6; } + ac_res=`eval 'as_val=${'$as_ac_File'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 |