rpms/kernel/F-11 drm-modesetting-radeon.patch, 1.76, 1.77 kernel.spec, 1.1552, 1.1553
Dave Airlie
airlied at fedoraproject.org
Fri Apr 17 04:14:19 UTC 2009
- Previous message (by thread): rpms/phoronix-test-suite/F-9 .cvsignore, 1.2, 1.3 import.log, 1.1, 1.2 phoronix-test-suite.spec, 1.1, 1.2 sources, 1.2, 1.3
- Next message (by thread): rpms/maniadrive/F-10 maniadrive.spec,1.11,1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: airlied
Update of /cvs/pkgs/rpms/kernel/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv616
Modified Files:
drm-modesetting-radeon.patch kernel.spec
Log Message:
* Fri Apr 17 2009 Dave Airlie <airlied at redhat.com>
- radeon drm: fix oops in LUT loading
drm-modesetting-radeon.patch:
Index: drm-modesetting-radeon.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/drm-modesetting-radeon.patch,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -r1.76 -r1.77
--- drm-modesetting-radeon.patch 17 Apr 2009 01:47:36 -0000 1.76
+++ drm-modesetting-radeon.patch 17 Apr 2009 04:14:18 -0000 1.77
@@ -1,3 +1,25 @@
+commit 9283b7e0503c439ccde80b808044e5581a4b3117
+Merge: 4fb1fe8 69c4926
+Author: Dave Airlie <airlied at redhat.com>
+Date: Fri Apr 17 14:08:45 2009 +1000
+
+ Merge remote branch 'origin/drm-rawhide' into drm-f11
+
+commit 69c492681103cd6d5db3434a1646dc71d354bdee
+Author: Dave Airlie <airlied at redhat.com>
+Date: Fri Apr 17 14:04:45 2009 +1000
+
+ radeon: fix agp test hook
+
+commit 33769d2b889e01e0026ce8980ce4f5803ce14d15
+Author: Dave Airlie <airlied at redhat.com>
+Date: Fri Apr 17 14:04:02 2009 +1000
+
+ radeon: fixup palette setting and add support for 30-bit.
+
+ The radeon palette can handle 30-bit on all cards. Also
+ fix oops when setting palette on disconnected crtc
+
commit 4fb1fe8e8696cd2fd7485ebf3fa01c0ac491a6ae
Merge: 18efcb5 37267b0
Author: Dave Airlie <airlied at redhat.com>
@@ -16810,10 +16832,10 @@
+}
diff --git a/drivers/gpu/drm/radeon/radeon_buffer.c b/drivers/gpu/drm/radeon/radeon_buffer.c
new file mode 100644
-index 0000000..7f3b75a
+index 0000000..3bc3d79
--- /dev/null
+++ b/drivers/gpu/drm/radeon/radeon_buffer.c
-@@ -0,0 +1,471 @@
+@@ -0,0 +1,473 @@
+/**************************************************************************
+ *
+ * Copyright 2007 Dave Airlie
@@ -16915,9 +16937,11 @@
+ man->io_size = dev->agp->agp_info.aper_size * 1024 * 1024;
+ man->io_addr = NULL;
+ man->flags = _DRM_FLAG_MEMTYPE_MAPPABLE |
-+ _DRM_FLAG_MEMTYPE_CSELECT | _DRM_FLAG_NEEDS_IOREMAP;
++ _DRM_FLAG_MEMTYPE_CSELECT;
+ if (radeon_no_gart_wb == 2)
+ man->flags |= _DRM_FLAG_MEMTYPE_CMA;
++ else
++ man->flags |= _DRM_FLAG_NEEDS_IOREMAP;
+ man->drm_bus_maptype = _DRM_AGP;
+ } else {
+ man->io_offset = dev_priv->gart_vm_start;
@@ -22674,10 +22698,10 @@
+
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c
new file mode 100644
-index 0000000..2d33137
+index 0000000..bb2f0d8
--- /dev/null
+++ b/drivers/gpu/drm/radeon/radeon_display.c
-@@ -0,0 +1,678 @@
+@@ -0,0 +1,680 @@
+/*
+ * Copyright 2007-8 Advanced Micro Devices, Inc.
+ * Copyright 2008 Red Hat Inc.
@@ -22724,7 +22748,6 @@
+ struct drm_radeon_private *dev_priv = dev->dev_private;
+ int i;
+
-+ DRM_DEBUG("%d\n", radeon_crtc->crtc_id);
+ RADEON_WRITE(AVIVO_DC_LUTA_CONTROL + radeon_crtc->crtc_offset, 0);
+
+ RADEON_WRITE(AVIVO_DC_LUTA_BLACK_OFFSET_BLUE + radeon_crtc->crtc_offset, 0);
@@ -22739,12 +22762,12 @@
+ RADEON_WRITE(AVIVO_DC_LUT_RW_MODE, 0);
+ RADEON_WRITE(AVIVO_DC_LUT_WRITE_EN_MASK, 0x0000003f);
+
++ RADEON_WRITE8(AVIVO_DC_LUT_RW_INDEX, 0);
+ for (i = 0; i < 256; i++) {
-+ RADEON_WRITE8(AVIVO_DC_LUT_RW_INDEX, i);
+ RADEON_WRITE(AVIVO_DC_LUT_30_COLOR,
-+ (radeon_crtc->lut_r[i] << 22) |
-+ (radeon_crtc->lut_g[i] << 12) |
-+ (radeon_crtc->lut_b[i] << 2));
++ (radeon_crtc->lut_r[i] << 20) |
++ (radeon_crtc->lut_g[i] << 10) |
++ (radeon_crtc->lut_b[i] << 0));
+ }
+
+ RADEON_WRITE(AVIVO_D1GRPH_LUT_SEL + radeon_crtc->crtc_offset, radeon_crtc->crtc_id);
@@ -22765,11 +22788,11 @@
+ dac2_cntl |= RADEON_DAC2_PALETTE_ACC_CTL;
+ RADEON_WRITE(RADEON_DAC_CNTL2, dac2_cntl);
+
++ RADEON_WRITE8(RADEON_PALETTE_INDEX, 0);
+ for (i = 0; i < 256; i++) {
-+ RADEON_WRITE8(RADEON_PALETTE_INDEX, i);
-+ RADEON_WRITE(RADEON_PALETTE_DATA,
-+ (radeon_crtc->lut_r[i] << 16) |
-+ (radeon_crtc->lut_g[i] << 8) |
++ RADEON_WRITE(RADEON_PALETTE_30_DATA,
++ (radeon_crtc->lut_r[i] << 20) |
++ (radeon_crtc->lut_g[i] << 10) |
+ (radeon_crtc->lut_b[i] << 0));
+ }
+}
@@ -22796,9 +22819,9 @@
+
+ if (regno==0)
+ DRM_DEBUG("gamma set %d\n", radeon_crtc->crtc_id);
-+ radeon_crtc->lut_r[regno] = red >> 8;
-+ radeon_crtc->lut_g[regno] = green >> 8;
-+ radeon_crtc->lut_b[regno] = blue >> 8;
++ radeon_crtc->lut_r[regno] = red >> 6;
++ radeon_crtc->lut_g[regno] = green >> 6;
++ radeon_crtc->lut_b[regno] = blue >> 6;
+}
+
+static void radeon_crtc_gamma_set(struct drm_crtc *crtc, u16 *red, u16 *green,
@@ -22810,22 +22833,25 @@
+ if (size != 256)
+ return;
+
++ if (!crtc->fb)
++ return;
++
+ if (crtc->fb->depth == 16) {
+ for (i = 0; i < 64; i++) {
+ if (i <= 31) {
+ for (j = 0; j < 8; j++) {
-+ radeon_crtc->lut_r[i * 8 + j] = red[i] >> 8;
-+ radeon_crtc->lut_b[i * 8 + j] = blue[i] >> 8;
++ radeon_crtc->lut_r[i * 8 + j] = red[i] >> 6;
++ radeon_crtc->lut_b[i * 8 + j] = blue[i] >> 6;
+ }
+ }
+ for (j = 0; j < 4; j++)
-+ radeon_crtc->lut_g[i * 4 + j] = green[i] >> 8;
++ radeon_crtc->lut_g[i * 4 + j] = green[i] >> 6;
+ }
+ } else {
+ for (i = 0; i < 256; i++) {
-+ radeon_crtc->lut_r[i] = red[i] >> 8;
-+ radeon_crtc->lut_g[i] = green[i] >> 8;
-+ radeon_crtc->lut_b[i] = blue[i] >> 8;
++ radeon_crtc->lut_r[i] = red[i] >> 6;
++ radeon_crtc->lut_g[i] = green[i] >> 6;
++ radeon_crtc->lut_b[i] = blue[i] >> 6;
+ }
+ }
+
@@ -22869,9 +22895,9 @@
+ radeon_crtc->mode_set.num_connectors = 0;
+
+ for (i = 0; i < 256; i++) {
-+ radeon_crtc->lut_r[i] = i;
-+ radeon_crtc->lut_g[i] = i;
-+ radeon_crtc->lut_b[i] = i;
++ radeon_crtc->lut_r[i] = i << 2;
++ radeon_crtc->lut_g[i] = i << 2;
++ radeon_crtc->lut_b[i] = i << 2;
+ }
+
+ if (dev_priv->is_atom_bios && (radeon_is_avivo(dev_priv) || radeon_r4xx_atom))
@@ -32191,7 +32217,7 @@
diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
new file mode 100644
-index 0000000..63f2c8f
+index 0000000..a1aff31
--- /dev/null
+++ b/drivers/gpu/drm/radeon/radeon_mode.h
@@ -0,0 +1,399 @@
@@ -32372,7 +32398,7 @@
+struct radeon_crtc {
+ struct drm_crtc base;
+ int crtc_id;
-+ u8 lut_r[256], lut_g[256], lut_b[256];
++ u16 lut_r[256], lut_g[256], lut_b[256];
+ bool enabled;
+ bool can_tile;
+ uint32_t crtc_offset;
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/kernel.spec,v
retrieving revision 1.1552
retrieving revision 1.1553
diff -u -r1.1552 -r1.1553
--- kernel.spec 17 Apr 2009 01:59:25 -0000 1.1552
+++ kernel.spec 17 Apr 2009 04:14:19 -0000 1.1553
@@ -1970,6 +1970,9 @@
%changelog
* Fri Apr 17 2009 Dave Airlie <airlied at redhat.com>
+- radeon drm: fix oops in LUT loading
+
+* Fri Apr 17 2009 Dave Airlie <airlied at redhat.com>
- drop ajax patch I rolled it in
* Fri Apr 17 2009 Dave Airlie <airlied at redhat.com>
- Previous message (by thread): rpms/phoronix-test-suite/F-9 .cvsignore, 1.2, 1.3 import.log, 1.1, 1.2 phoronix-test-suite.spec, 1.1, 1.2 sources, 1.2, 1.3
- Next message (by thread): rpms/maniadrive/F-10 maniadrive.spec,1.11,1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list