diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-05 16:02:01 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-05 16:02:01 -0700 | 
| commit | fc1caf6eafb30ea185720e29f7f5eccca61ecd60 (patch) | |
| tree | 666dabc25a9b02e5c05f9eba32fa6b0d8027341a /drivers/gpu/drm/nouveau/nv50_crtc.c | |
| parent | 9779714c8af09d57527f18d9aa2207dcc27a8687 (diff) | |
| parent | 96576a9e1a0cdb8a43d3af5846be0948f52b4460 (diff) | |
| download | olio-linux-3.10-fc1caf6eafb30ea185720e29f7f5eccca61ecd60.tar.xz olio-linux-3.10-fc1caf6eafb30ea185720e29f7f5eccca61ecd60.zip  | |
Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
* 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (204 commits)
  agp: intel-agp: do not use PCI resources before pci_enable_device()
  agp: efficeon-agp: do not use PCI resources before pci_enable_device()
  drm: kill BKL from common code
  drm/kms: Simplify setup of the initial I2C encoder config.
  drm,io-mapping: Specify slot to use for atomic mappings
  drm/radeon/kms: only expose underscan on avivo chips
  drm/radeon: add new pci ids
  drm: Cleanup after failing to create master->unique and dev->name
  drm/radeon: tone down overchatty acpi debug messages.
  drm/radeon/kms: enable underscan option for digital connectors
  drm/radeon/kms: fix calculation of h/v scaling factors
  drm/radeon/kms/igp: sideport is AMD only
  drm/radeon/kms: handle the case of no active displays properly in the bandwidth code
  drm: move ttm global code to core drm
  drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it.
  drm/radeon/kms: make sure HPD is set to NONE on analog-only connectors
  drm/radeon/kms: make sure rio_mem is valid before unmapping it
  drm/agp/i915: trim stolen space to 32M
  drm/i915: Unset cursor if out-of-bounds upon mode change (v4)
  drm/i915: Unreference object not handle on creation
  ...
Diffstat (limited to 'drivers/gpu/drm/nouveau/nv50_crtc.c')
| -rw-r--r-- | drivers/gpu/drm/nouveau/nv50_crtc.c | 42 | 
1 files changed, 2 insertions, 40 deletions
diff --git a/drivers/gpu/drm/nouveau/nv50_crtc.c b/drivers/gpu/drm/nouveau/nv50_crtc.c index b4e4a3b05ea..5d11ea10166 100644 --- a/drivers/gpu/drm/nouveau/nv50_crtc.c +++ b/drivers/gpu/drm/nouveau/nv50_crtc.c @@ -440,47 +440,15 @@ nv50_crtc_prepare(struct drm_crtc *crtc)  {  	struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc);  	struct drm_device *dev = crtc->dev; -	struct drm_encoder *encoder; -	uint32_t dac = 0, sor = 0;  	NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index); -	/* Disconnect all unused encoders. */ -	list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { -		struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); - -		if (!drm_helper_encoder_in_use(encoder)) -			continue; - -		if (nv_encoder->dcb->type == OUTPUT_ANALOG || -		    nv_encoder->dcb->type == OUTPUT_TV) -			dac |= (1 << nv_encoder->or); -		else -			sor |= (1 << nv_encoder->or); -	} - -	list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { -		struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); - -		if (nv_encoder->dcb->type == OUTPUT_ANALOG || -		    nv_encoder->dcb->type == OUTPUT_TV) { -			if (dac & (1 << nv_encoder->or)) -				continue; -		} else { -			if (sor & (1 << nv_encoder->or)) -				continue; -		} - -		nv_encoder->disconnect(nv_encoder); -	} -  	nv50_crtc_blank(nv_crtc, true);  }  static void  nv50_crtc_commit(struct drm_crtc *crtc)  { -	struct drm_crtc *crtc2;  	struct drm_device *dev = crtc->dev;  	struct drm_nouveau_private *dev_priv = dev->dev_private;  	struct nouveau_channel *evo = dev_priv->evo; @@ -491,20 +459,14 @@ nv50_crtc_commit(struct drm_crtc *crtc)  	nv50_crtc_blank(nv_crtc, false); -	/* Explicitly blank all unused crtc's. */ -	list_for_each_entry(crtc2, &dev->mode_config.crtc_list, head) { -		if (!drm_helper_crtc_in_use(crtc2)) -			nv50_crtc_blank(nouveau_crtc(crtc2), true); -	} -  	ret = RING_SPACE(evo, 2);  	if (ret) {  		NV_ERROR(dev, "no space while committing crtc\n");  		return;  	}  	BEGIN_RING(evo, 0, NV50_EVO_UPDATE, 1); -	OUT_RING(evo, 0); -	FIRE_RING(evo); +	OUT_RING  (evo, 0); +	FIRE_RING (evo);  }  static bool  |