From: Dave Airlie Date: Wed, 5 Jun 2013 04:35:08 +0000 (+1000) Subject: Merge branch 'drm-nouveau-fixes-3.10' of git://anongit.freedesktop.org/git/nouveau... X-Git-Tag: v3.10-rc5~7^2 X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flinux.git;a=commitdiff_plain;h=0e32fde96bb9c1fa8fa477e52c1d6ae2f4995cea Merge branch 'drm-nouveau-fixes-3.10' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-fixes Multiple nouveau regression fixes, hdmi audio, s/r and dac load detection * 'drm-nouveau-fixes-3.10' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: drm/nv50/kms: use dac loadval from vbios, where it's available drm/nv50/disp: force dac power state during load detect drm/nv50-nv84/fifo: fix resume regression introduced by playlist race fix drm/nv84/disp: Fix HDMI audio regression --- 0e32fde96bb9c1fa8fa477e52c1d6ae2f4995cea diff --cc drivers/gpu/drm/nouveau/core/engine/disp/dacnv50.c index ed7415e5e220,a60a5accb540..f02fd9f443ff --- a/drivers/gpu/drm/nouveau/core/engine/disp/dacnv50.c +++ b/drivers/gpu/drm/nouveau/core/engine/disp/dacnv50.c @@@ -50,9 -50,10 +50,11 @@@ nv50_dac_sense(struct nv50_disp_priv *p { const u32 doff = (or * 0x800); int load = -EINVAL; + nv_mask(priv, 0x61a004 + doff, 0x807f0000, 0x80150000); + nv_wait(priv, 0x61a004 + doff, 0x80000000, 0x00000000); nv_wr32(priv, 0x61a00c + doff, 0x00100000 | loadval); - udelay(9500); + mdelay(9); + udelay(500); nv_wr32(priv, 0x61a00c + doff, 0x80000000); load = (nv_rd32(priv, 0x61a00c + doff) & 0x38000000) >> 27; nv_wr32(priv, 0x61a00c + doff, 0x00000000);