Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 65d76fc4 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
  drm/radeon: bump the UMS driver version number to indicate rv740 fix
  drm/radeon/kms: free fence IB if it wasn't emited at IB free time
  drm/ttm: fix caching problem on non-PAT systems.
  drm/radeon/rv740: fix backend setup
  drm/radeon/kms: fix shared ddc detection
  drm/radeon/kms/rs600: add connector quirk
  vgaarb: fix "target=default" passing
parents f8b55f25 635f1a31
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -1428,6 +1428,9 @@ static void r700_gfx_init(struct drm_device *dev,

	gb_tiling_config |= R600_BANK_SWAPS(1);

	if ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV740)
		backend_map = 0x28;
	else
		backend_map = r700_get_tile_pipe_to_backend_map(dev_priv->r600_max_tile_pipes,
								dev_priv->r600_max_backends,
								(0xff << dev_priv->r600_max_backends) & 0xff);
+9 −0
Original line number Diff line number Diff line
@@ -206,6 +206,15 @@ static bool radeon_atom_apply_quirks(struct drm_device *dev,
			*connector_type = DRM_MODE_CONNECTOR_DVID;
	}

	/* Asrock RS600 board lists the DVI port as HDMI */
	if ((dev->pdev->device == 0x7941) &&
	    (dev->pdev->subsystem_vendor == 0x1849) &&
	    (dev->pdev->subsystem_device == 0x7941)) {
		if ((*connector_type == DRM_MODE_CONNECTOR_HDMIA) &&
		    (supported_device == ATOM_DEVICE_DFP3_SUPPORT))
			*connector_type = DRM_MODE_CONNECTOR_DVID;
	}

	/* a-bit f-i90hd - ciaranm on #radeonhd - this board has no DVI */
	if ((dev->pdev->device == 0x7941) &&
	    (dev->pdev->subsystem_vendor == 0x147b) &&
+2 −3
Original line number Diff line number Diff line
@@ -780,7 +780,7 @@ static enum drm_connector_status radeon_dvi_detect(struct drm_connector *connect
			 * connected and the DVI port disconnected.  If the edid doesn't
			 * say HDMI, vice versa.
			 */
			if (radeon_connector->shared_ddc && connector_status_connected) {
			if (radeon_connector->shared_ddc && (ret == connector_status_connected)) {
				struct drm_device *dev = connector->dev;
				struct drm_connector *list_connector;
				struct radeon_connector *list_radeon_connector;
@@ -1060,8 +1060,7 @@ radeon_add_atom_connector(struct drm_device *dev,
			return;
		}
		if (radeon_connector->ddc_bus && i2c_bus->valid) {
			if (memcmp(&radeon_connector->ddc_bus->rec, i2c_bus,
				    sizeof(struct radeon_i2c_bus_rec)) == 0) {
			if (radeon_connector->ddc_bus->rec.i2c_id == i2c_bus->i2c_id) {
				radeon_connector->shared_ddc = true;
				shared_ddc = true;
			}
+2 −1
Original line number Diff line number Diff line
@@ -106,9 +106,10 @@
 * 1.29- R500 3D cmd buffer support
 * 1.30- Add support for occlusion queries
 * 1.31- Add support for num Z pipes from GET_PARAM
 * 1.32- fixes for rv740 setup
 */
#define DRIVER_MAJOR		1
#define DRIVER_MINOR		31
#define DRIVER_MINOR		32
#define DRIVER_PATCHLEVEL	0

enum radeon_cp_microcode_version {
+2 −0
Original line number Diff line number Diff line
@@ -100,6 +100,8 @@ void radeon_ib_free(struct radeon_device *rdev, struct radeon_ib **ib)
	if (tmp == NULL) {
		return;
	}
	if (!tmp->fence->emited)
		radeon_fence_unref(&tmp->fence);
	mutex_lock(&rdev->ib_pool.mutex);
	tmp->free = true;
	mutex_unlock(&rdev->ib_pool.mutex);
Loading