update to 2.6.29-rc6
thanks Ben Hutchings <ben@decadent.org.uk> for forward ported drivers-gpu-drm-radeon-request_firmware.patch. svn path=/dists/trunk/linux-2.6/; revision=12954
This commit is contained in:
parent
26cd241947
commit
e31d3099ff
|
@ -1,4 +1,4 @@
|
|||
linux-2.6 (2.6.29~rc5-1~experimental.1) UNRELEASED; urgency=low
|
||||
linux-2.6 (2.6.29~rc6-1~experimental.1) UNRELEASED; urgency=low
|
||||
|
||||
* New upstream release
|
||||
- tg3 use request_firmware and firmware nuked
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 3e3f2f1f9514969b9df1b64a9a12a7a5a1aa7550 Mon Sep 17 00:00:00 2001
|
||||
From 0c5cd2de22213db543529e803d0159a0e12ea7b6 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Wed, 15 Oct 2008 01:29:35 +0100
|
||||
Subject: [PATCH 06/24] radeon: Use request_firmware() to load CP microcode
|
||||
Subject: [PATCH] radeon: Use request_firmware() to load CP microcode
|
||||
|
||||
Tested on Radeon 7500 (RV200) with and without firmware installed.
|
||||
---
|
||||
|
@ -11,10 +11,10 @@ Tested on Radeon 7500 (RV200) with and without firmware installed.
|
|||
3 files changed, 83 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
|
||||
index a93d249..09ed655 100644
|
||||
index b0414ee..fb97c8a 100644
|
||||
--- a/drivers/gpu/drm/Kconfig
|
||||
+++ b/drivers/gpu/drm/Kconfig
|
||||
@@ -35,7 +35,7 @@ config DRM_R128
|
||||
@@ -37,7 +37,7 @@ config DRM_R128
|
||||
config DRM_RADEON
|
||||
tristate "ATI Radeon"
|
||||
depends on DRM && PCI
|
||||
|
@ -24,10 +24,10 @@ index a93d249..09ed655 100644
|
|||
Choose this option if you have an ATI Radeon graphics card. There
|
||||
are both PCI and AGP versions. You don't need to choose this to
|
||||
diff --git a/drivers/gpu/drm/radeon/radeon_cp.c b/drivers/gpu/drm/radeon/radeon_cp.c
|
||||
index dcebb4b..a460149 100644
|
||||
index 92965db..efe6e59 100644
|
||||
--- a/drivers/gpu/drm/radeon/radeon_cp.c
|
||||
+++ b/drivers/gpu/drm/radeon/radeon_cp.c
|
||||
@@ -35,10 +35,23 @@
|
||||
@@ -36,10 +36,23 @@
|
||||
#include "radeon_drv.h"
|
||||
#include "r300_reg.h"
|
||||
|
||||
|
@ -53,7 +53,7 @@ index dcebb4b..a460149 100644
|
|||
static int radeon_do_cleanup_cp(struct drm_device * dev);
|
||||
static void radeon_do_cp_start(drm_radeon_private_t * dev_priv);
|
||||
|
||||
@@ -318,37 +331,34 @@ static void radeon_init_pipes(drm_radeon_private_t *dev_priv)
|
||||
@@ -319,37 +332,34 @@ static void radeon_init_pipes(drm_radeon_private_t *dev_priv)
|
||||
*/
|
||||
|
||||
/* Load the microcode for the CP */
|
||||
|
@ -88,7 +88,7 @@ index dcebb4b..a460149 100644
|
|||
- RADEON_WRITE(RADEON_CP_ME_RAM_DATAL,
|
||||
- R100_cp_microcode[i][0]);
|
||||
- }
|
||||
+ fw_name = FIRMWARE_R100;
|
||||
+ fw_name = FIRMWARE_R100;
|
||||
} else if (((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R200) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV250) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV280) ||
|
||||
|
@ -104,7 +104,7 @@ index dcebb4b..a460149 100644
|
|||
} else if (((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R300) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R350) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV350) ||
|
||||
@@ -356,31 +366,16 @@ static void radeon_cp_load_microcode(drm_radeon_private_t * dev_priv)
|
||||
@@ -357,31 +367,16 @@ static void radeon_cp_load_microcode(drm_radeon_private_t * dev_priv)
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS400) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480)) {
|
||||
DRM_INFO("Loading R300 Microcode\n");
|
||||
|
@ -139,7 +139,7 @@ index dcebb4b..a460149 100644
|
|||
} else if (((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV515) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R520) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV530) ||
|
||||
@@ -388,11 +383,41 @@ static void radeon_cp_load_microcode(drm_radeon_private_t * dev_priv)
|
||||
@@ -389,11 +384,41 @@ static void radeon_cp_load_microcode(drm_radeon_private_t * dev_priv)
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV560) ||
|
||||
((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV570)) {
|
||||
DRM_INFO("Loading R500 Microcode\n");
|
||||
|
@ -184,7 +184,7 @@ index dcebb4b..a460149 100644
|
|||
}
|
||||
}
|
||||
}
|
||||
@@ -1216,6 +1241,14 @@ static int radeon_do_init_cp(struct drm_device * dev, drm_radeon_init_t * init)
|
||||
@@ -1224,6 +1249,14 @@ static int radeon_do_init_cp(struct drm_device *dev, drm_radeon_init_t *init,
|
||||
radeon_set_pcigart(dev_priv, 1);
|
||||
}
|
||||
|
||||
|
@ -197,9 +197,9 @@ index dcebb4b..a460149 100644
|
|||
+ }
|
||||
+ }
|
||||
radeon_cp_load_microcode(dev_priv);
|
||||
radeon_cp_init_ring_buffer(dev, dev_priv);
|
||||
radeon_cp_init_ring_buffer(dev, dev_priv, file_priv);
|
||||
|
||||
@@ -1442,6 +1475,10 @@ void radeon_do_release(struct drm_device * dev)
|
||||
@@ -1450,6 +1483,10 @@ void radeon_do_release(struct drm_device * dev)
|
||||
|
||||
/* deallocate kernel resources */
|
||||
radeon_do_cleanup_cp(dev);
|
||||
|
@ -211,7 +211,7 @@ index dcebb4b..a460149 100644
|
|||
}
|
||||
|
||||
diff --git a/drivers/gpu/drm/radeon/radeon_drv.h b/drivers/gpu/drm/radeon/radeon_drv.h
|
||||
index 3bbb871..51984d7 100644
|
||||
index 490bc7c..046343f 100644
|
||||
--- a/drivers/gpu/drm/radeon/radeon_drv.h
|
||||
+++ b/drivers/gpu/drm/radeon/radeon_drv.h
|
||||
@@ -31,6 +31,9 @@
|
||||
|
@ -224,7 +224,7 @@ index 3bbb871..51984d7 100644
|
|||
/* General customization:
|
||||
*/
|
||||
|
||||
@@ -317,6 +320,9 @@ typedef struct drm_radeon_private {
|
||||
@@ -321,6 +324,9 @@ typedef struct drm_radeon_private {
|
||||
int num_gb_pipes;
|
||||
int track_flush;
|
||||
drm_local_map_t *mmio;
|
||||
|
|
Loading…
Reference in New Issue