Re: [Intel-gfx] [PATCH] drm: atomic helper: do not unreference error pointer
On Fri, Mar 11, 2016 at 12:17:26PM +, Lionel Landwerlin wrote: > 562c5b4d8986 didn't quite fix the issue of dealing with an error > pointer. We can't free/unref an error pointer so reset it to NULL. > > Many thanks to Dan Carpenter for pointing this out again. > > Signed-off-by: Lionel Landwerlin > Cc: Dan Carpenter > Cc: Daniel Stone > Cc: Daniel Vetter > Cc: Matt Roper > Cc: dri-de...@lists.freedesktop.org > Fixes: 562c5b4d8986 ("drm: fix blob pointer check") Applied to drm-misc. Also I guess I've run out of my quota of silly stuff I merge pretty fast ... ;-) Cheers, Daniel > --- > drivers/gpu/drm/drm_atomic_helper.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/drm_atomic_helper.c > b/drivers/gpu/drm/drm_atomic_helper.c > index 892de99..2bb90fa 100644 > --- a/drivers/gpu/drm/drm_atomic_helper.c > +++ b/drivers/gpu/drm/drm_atomic_helper.c > @@ -2926,6 +2926,7 @@ void drm_atomic_helper_legacy_gamma_set(struct drm_crtc > *crtc, > NULL); > if (IS_ERR(blob)) { > ret = PTR_ERR(blob); > + blob = NULL; > goto fail; > } > > -- > 2.7.0 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH 2/2] drm/i915: Retry after 30ms if we fail to resume DP MST
On Fri, Mar 11, 2016 at 10:57:02AM -0500, Lyude wrote: > For whatever reason, I've found that some laptops aren't immediately > capable of doing aux transactions with their docks when they come out of > standby. While I'm still not entirely sure what the cause of this is, > sleeping for 30ms and then retrying drm_dp_mst_topology_mgr_resume() > should be a sufficient enough workaround until we find a real fix. > > CC: sta...@vger.kernel.org > Signed-off-by: Lyude > --- > drivers/gpu/drm/i915/intel_dp.c | 13 + > 1 file changed, 13 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > index 1d8de43..8cc5f6f 100644 > --- a/drivers/gpu/drm/i915/intel_dp.c > +++ b/drivers/gpu/drm/i915/intel_dp.c > @@ -6114,6 +6114,19 @@ void intel_dp_mst_resume(struct drm_device *dev) > > ret = > drm_dp_mst_topology_mgr_resume(&intel_dig_port->dp.mst_mgr); > if (ret != 0) { > + /* > + * For some reason, some laptops can't bring > + * their MST docks back up immediately after > + * resume and need to wait a short period of > + * time before aux transactions with the dock > + * become functional again. Until we find a > + * proper fix for this, this workaround should > + * suffice > + */ > + msleep(30); > + ret = > drm_dp_mst_topology_mgr_resume(&intel_dig_port->dp.mst_mgr); > + } Hm, since it's the dp aux that fails (and not something higher up apparently) shouldnt' we have this massive retry somewhere in the dp aux helpers maybe? DP resume in general is a bit fragile, maybe we're just missing a lot of retries in general? Either way this needs a lot more details. Comment definitely should start out with FIXME, and the commit message should have a protocol of all the experiments you've done thus far. Yes this means a ridiculously long commit message, but in roughly 2 weeks someone else will go wtf on this, and then they must be able to read up the full story. And we need links to bugzillas and mail threads, too. And please Cc: Art with this one too. Thanks, Daniel > + if (ret != 0) { > intel_dp_check_mst_status(&intel_dig_port->dp); > } > } > -- > 2.5.0 > > ___ > dri-devel mailing list > dri-de...@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH 1/2] drm/i915: Call intel_dp_mst_resume() before resuming displays
On Fri, Mar 11, 2016 at 10:57:01AM -0500, Lyude wrote: > Since we need MST devices ready before we try to resume displays, > calling this after intel_display_resume() can result in some issues with > various laptop docks where the monitor won't turn back on after > suspending the system. > > This order was originally changed in > > commit e7d6f7d70829 ("drm/i915: resume MST after reading back hw state") > > In order to fix some unclaimed register errors, however the actual cause > of those has since been fixed. > > CC: sta...@vger.kernel.org > Signed-off-by: Lyude Don't we need to first apply patch 2/2 to avoid breaking systems in-between? -Daniel > --- > drivers/gpu/drm/i915/i915_drv.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index f357058..08854ae 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -761,12 +761,12 @@ static int i915_drm_resume(struct drm_device *dev) > dev_priv->display.hpd_irq_setup(dev); > spin_unlock_irq(&dev_priv->irq_lock); > > + intel_dp_mst_resume(dev); > + > drm_modeset_lock_all(dev); > intel_display_resume(dev); > drm_modeset_unlock_all(dev); > > - intel_dp_mst_resume(dev); > - > /* >* ... but also need to make sure that hotplug processing >* doesn't cause havoc. Like in the driver load code we don't > -- > 2.5.0 > > ___ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [RFC/PATCH xf86-video-intel] sna: Let modestting + glamor handle gen9+
On Fri, Mar 11, 2016 at 5:07 AM, Timo Aaltonen wrote: > 29.02.2016, 16:47, Hans de Goede kirjoitti: >> sna has no meaningfull accel for gen9+, this causes problems with i.e. >> apps using XVideo since the sprite XVideo support does not work well >> for many apps. >> >> Therefor it is better to just let the xserver fall back to modesetting + >> glamor. This is implemented by returning FALSE from the probe methods, >> just like how nouveau handles falling back to modesetting for newer cards. >> >> BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1305369 >> Signed-off-by: Hans de Goede > > I've been trying to make this work, but there are cases where it fails bad: > > # a config file with a Device section that loads 'intel' makes the > server fail > [10.153] (EE) No devices detected. > [10.153] (EE) > Fatal server error: > [10.153] (EE) no screens found(EE) I'd be awfully tempted to call that NOTABUG.. I mean, it would fail in same way if you had a .conf that tried to force ati ddx on a system without a radeon card.. BR, -R > ie. no fallback in that case > > # with X run as root (wrapper or not), same thing different cause > [ 145.943] (EE) modeset(0): drmSetMaster failed: Invalid argument > [ 145.943] (EE) > Fatal server error: > [ 145.943] (EE) AddScreen/ScreenInit failed for driver 0 > > > but it does work with startx run by a user. Tests done on Debian with > 1.18.1 and intel ddx git. > > -- > t > ___ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] Possible 4.5 i915 Skylake regression
On Wed, Feb 17, 2016 at 8:18 AM, Daniel Vetter wrote: > On Tue, Feb 16, 2016 at 09:26:35AM -0800, Andy Lutomirski wrote: >> On Tue, Feb 16, 2016 at 9:12 AM, Andy Lutomirski wrote: >> > On Tue, Feb 16, 2016 at 8:12 AM, Daniel Vetter wrote: >> >> On Mon, Feb 15, 2016 at 06:58:33AM -0800, Andy Lutomirski wrote: >> >>> On Sun, Feb 14, 2016 at 6:59 PM, Andy Lutomirski wrote: >> >>> > Hi- >> >>> > >> >>> > On 4.5-rc3 on a Dell XPS 13 9350 (Skylake i915, no nvidia on this >> >>> > model), shortly after resume, I saw a single black flash on the >> >>> > screen. The log said: >> >>> > >> >>> > [Feb13 07:05] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* >> >>> > CPU pipe A FIFO underrun >> >>> > >> >>> > I haven't seen this on 4.4. >> >>> > >> >>> > I'd be happy to dig up debugging info, but I don't know what would be >> >>> > useful. I have no i915 module options set. >> >>> >> >>> It's flashing quite frequently now, although I seem to get the >> >>> underrun warning only once per resume. >> >> >> >> We shut up the warning irq source to avoid hijacking an entire cpu core >> >> ;-) >> >> >> >> There's a fix from Matt right after 4.5-rc4 in Linus' branch. I'm hoping >> >> that should help. >> > >> > Do you mean: >> > >> > commit e2e407dc093f530b771ee8bf8fe1be41e3cea8b3 >> > Author: Matt Roper >> > Date: Mon Feb 8 11:05:28 2016 -0800 >> > >> > drm/i915: Pretend cursor is always on for ILK-style WM calculations >> > (v2) >> > >> > If so, it didn't help. I'm currently doing a full rebuild just in >> > case I messed something up, though. >> > >> >> Definitely not fixed. It seems to be okay after a reboot until the >> first suspend/resume. >> >> This happened after resuming. Five cents says it's the root cause. > > That's interesting, but doesn't ring a bell unfortunately. Can you try to > attempt a bisect? > I'm giving up on my attempt to bisect for now. After a bunch of false starts to avoid this crap, I'm stuck at 651174a4a0ccaf41e14fadc4bc525d61ae7f7b18, which is based on 4.3-rc3 and doesn't merge cleanly up to 4.4. It's also annoying because it reproduces reasonably quickly but not instantaneously, and I can never reproduce it before a suspend/resume, so my bisection attempts are full of errors. --Andy > Thanks, Daniel > >> >> [ 160.361200] WARNING: CPU: 2 PID: 2512 at >> drivers/gpu/drm/i915/intel_uncore.c:599 >> hsw_unclaimed_reg_debug+0x69/0x90 [i915]() >> [ 160.361209] Unclaimed register detected before writing to register 0x20a8 >> [ 160.361213] Modules linked in: rfcomm fuse ccm cmac xt_CHECKSUM >> ipt_MASQUERADE nf_nat_masquerade_ipv4 tun nf_conntrack_netbios_ns >> nf_conntrack_broadcast ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 >> xt_conntrack ebtable_filter ebtable_nat ebtable_broute bridge stp llc >> ebtables ip6table_raw ip6table_mangle ip6table_security ip6table_nat >> nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_filter >> ip6_tables iptable_raw iptable_mangle iptable_security iptable_nat >> nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack bnep >> arc4 iwlmvm mac80211 snd_hda_codec_hdmi snd_hda_codec_realtek >> hid_multitouch snd_hda_codec_generic iwlwifi snd_hda_intel intel_rapl >> snd_hda_codec x86_pkg_temp_thermal coretemp kvm_intel snd_hwdep >> cfg80211 snd_hda_core kvm snd_seq uvcvideo snd_seq_device >> i2c_designware_platform >> [ 160.361385] i2c_designware_core btusb snd_pcm videobuf2_vmalloc >> wmi_mof vfat dell_wmi fat videobuf2_memops btrtl btbcm btintel >> bluetooth dell_laptop dell_smbios dcdbas videobuf2_v4l2 snd_timer >> videobuf2_core rtsx_pci_ms snd irqbypass videodev memstick >> ghash_clmulni_intel joydev mei_me efi_pstore mei i2c_i801 soundcore >> efivars pcspkr idma64 shpchp virt_dma media rfkill intel_lpss_pci >> processor_thermal_device intel_soc_dts_iosf wmi acpi_als kfifo_buf >> int3403_thermal tpm_tis industrialio pinctrl_sunrisepoint tpm >> intel_hid int3400_thermal pinctrl_intel intel_lpss_acpi sparse_keymap >> int340x_thermal_zone acpi_thermal_rel intel_lpss nfsd acpi_pad >> auth_rpcgss nfs_acl lockd binfmt_misc grace sunrpc dm_crypt i915 >> i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt >> fb_sys_fops drm rtsx_pci_sdmmc >> [ 160.361548] mmc_core crct10dif_pclmul crc32_pclmul crc32c_intel >> rtsx_pci serio_raw i2c_hid video >> [ 160.361575] CPU: 2 PID: 2512 Comm: gnome-shell Not tainted >> 4.5.0-rc4-acpi+ #59 >> [ 160.361581] Hardware name: Dell Inc. XPS 13 9350/07TYC2, BIOS 1.1.9 >> 12/18/2015 >> [ 160.361588] 0086 604232f7 88024d55ba60 >> 81449d83 >> [ 160.361601] 88024d55baa8 a01e15e8 88024d55ba98 >> 81094252 >> [ 160.361612] 88026f4d 20a8 88026f4d >> fefe >> [ 160.361624] Call Trace: >> [ 160.361644] [] dump_stack+0x65/0x92 >> [ 160.361660] [] warn_slowpath_common+0x82/0xc0 >> [ 160.361671] [] warn_slowpath_fmt+0x5c/0x80 >> [ 160.361764] [] hsw_unclaimed_reg_debug+0x69/0x90 [i915] >> [
[Intel-gfx] [Regression report] Weekly regression report WW11
WW11 Regression report Last week regressions +---+---+++ | BugId | Summary | Created on | Bisect | +---+---+++ | 94416 | [KBL HSW] [Regression] kms_frontbuffer_tracki | 2016-03-06 | No | | 94430 | [HSW+nvidia] regression: display becomes "dis | 2016-03-07 | No | +---+---+++ Previous regressions +---+---+++ | BugId | Summary | Created on | Bisect | +---+---+++ | 72782 | [945GM bisected] screen blank on S3 resume on | 2013-12-17 | Yes| | 81537 | [snb dp regression] dp retry forever due to s | 2014-07-19 | No | | 84855 | [ILK regression]igt kms_rotation_crc/sprite-r | 2014-10-10 | No | | 84974 | [VLV eDP-LVDS bisected] powerdomains: Screen | 2014-10-14 | Yes| | 87131 | [PNV regression] igt/gem_exec_lut_handle take | 2014-12-09 | No | | 87662 | [ALL 3.18 Bisected] DVI --rotation inverted c | 2014-12-24 | Yes| | 87725 | [BDW Bisected] OglBatch7 performance reduced | 2014-12-26 | Yes| | 87726 | [BDW Bisected] OglDrvCtx performance reduced | 2014-12-26 | Yes| | 88124 | i915: regression: after DP connected monitor | 2015-01-06 | No | | 88439 | [BDW Bisected]igt/gem_reloc_vs_gpu/forked-fau | 2015-01-15 | Yes| | 89334 | [945 regression] 4.0-rc1 kernel GPU hang: ec | 2015-02-26 | No | | 89629 | [i965 regression]igt/kms_rotation_crc/sprite- | 2015-03-18 | No | | 89632 | [i965 regression]igt/kms_universal_plane/univ | 2015-03-18 | No | | 89728 | [HSW/BDW/BSW/BYT bisected] igt / pm_rps / res | 2015-03-23 | Yes| | 89872 | [ HSW Bisected ] VGA was white screen when re | 2015-04-02 | Yes| | 90112 | [BSW bisected] OglGSCloth/Lightsmark/CS/ Port | 2015-04-20 | Yes| | 90134 | [BSW Bisected]GFXBench3_gl_driver/GFXBench3_g | 2015-04-22 | Yes| | 90368 | [SNB BSW SKL BXT] bisected igt/kms_3d has har | 2015-05-08 | Yes| | 90732 | [BDW/BSW Bisected]igt/gem_reloc_vs_gpu/forked | 2015-05-29 | Yes| | 90808 | [BDW Bisected]igt/gem_ctx_param_basic/invalid | 2015-06-02 | Yes| | 90994 | [BDW regression] pm_rpm subtests fail and giv | 2015-06-16 | No | | 91378 | [hsw dp regression] 06ea66b6 (5.4GHz link clo | 2015-07-17 | No | | 91844 | [HSW Regression] intel_do_flush_locked failed | 2015-09-02 | No | | 91959 | [865g 3.19 regression] Desktop image is disto | 2015-09-10 | No | | 91974 | [bisected] unrecoverable black screen after k | 2015-09-11 | Yes| | 92050 | [regression]/bug introduced by commit [0e572f | 2015-09-19 | No | | 92083 | [regression] [git pull] drm for 4.3 | 2015-09-23 | No | | 92096 | regression/bug introduced by commit [0e572fe7 | 2015-09-24 | No | | 92237 | [SNB]Horrible noise (audio) via DisplayPort [ | 2015-10-02 | No | | 92414 | [Intel-gfx] As of kernel 4.3-rc1 system will | 2015-10-10 | Yes| | 92502 | [SKL] [Regression] igt/kms_flip/2x-flip-vs-ex | 2015-10-16 | No | | 92575 | [4.2 regression] Massive graphics corruption | 2015-10-21 | No | | 92972 | Black screen on Intel NUC hardware (i915) pos | 2015-11-16 | No | | 93122 | [SNB BAT IGT regression] pm_rpm started skipp | 2015-11-26 | No | | 93263 | 945GM regression since 4.3| 2015-12-05 | No | | 93393 | Regression for Skylake modesetting in kernel | 2015-12-16 | No | | 93509 | [SNB] [4.4 regression] vblank wait timed out | 2015-12-26 | No | | 93608 | bisected: i915 SNB modeset crash in ac9b82365 | 2016-01-06 | Yes| | 93698 | [BAT BYT regression] WARNING "Unclaimed regis | 2016-01-13 | No | | 93802 | [IVB bisected] switching to tty1 causes fifo | 2016-01-20 | Yes| | 93971 | video framerate performance regression with U | 2016-02-02 | No | | 94337 | Linux 4.5 regression: FIFO underruns on Skyla | 2016-02-29 | No | +---+---+++ ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Fix MST audio enabling
On Fri, 11 Mar 2016, Ander Conselvan De Oliveira wrote: > [ text/plain ] > On Fri, 2016-03-11 at 17:37 +0200, Ville Syrjälä wrote: >> On Fri, Mar 11, 2016 at 05:33:06PM +0200, Ander Conselvan de Oliveira wrote: >> > Commit 3d52ccf52f2c ("drm/i915: start adding dp mst audio") erroneously >> > added a check for MST encoder to ilk_audio_codec_enable instead of the >> > hsw+ equivalent. That causes the HDMI path to be used, resulting in a >> > wrong register value. >> > >> > Cc: Libin Yang >> > Cc: drm-intel-fi...@lists.freedesktop.org >> > Fixes: commit 3d52ccf52f2c ("drm/i915: start adding dp mst audio") >> > Signed-off-by: Ander Conselvan de Oliveira < >> > ander.conselvan.de.olive...@intel.com> >> > --- >> > drivers/gpu/drm/i915/intel_audio.c | 6 +++--- >> > 1 file changed, 3 insertions(+), 3 deletions(-) >> > >> > diff --git a/drivers/gpu/drm/i915/intel_audio.c >> > b/drivers/gpu/drm/i915/intel_audio.c >> > index 30f9214..f5fccf7 100644 >> > --- a/drivers/gpu/drm/i915/intel_audio.c >> > +++ b/drivers/gpu/drm/i915/intel_audio.c >> > @@ -329,7 +329,8 @@ static void hsw_audio_codec_enable(struct drm_connector >> > *connector, >> >tmp = I915_READ(HSW_AUD_CFG(pipe)); >> >tmp &= ~AUD_CONFIG_N_VALUE_INDEX; >> >tmp &= ~AUD_CONFIG_PIXEL_CLOCK_HDMI_MASK; >> > - if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT)) >> > + if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT) || >> > + intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DP_MST)) >> >> Humm. I thought had I asked all of these to be changed to has_dp_encoder. >> I wonder if I imagined it or if I was just ignored. > > Ah, yes. Libin sent a patch to fix the same bug and you asked for that [1] and > even R-b the follow up version even though it didn't use it everywhere. But it > looks like Daniel didn't merge it since he wanted all uses converted to > has_dp_encoders. We want the minimal fix first now because by bikeshedding we let the bug slip to v4.5, and we need cc: stable on this. BR, Jani. > > [1] https://patchwork.freedesktop.org/patch/68902/ > [2] https://patchwork.freedesktop.org/patch/69525/ > > >> >> >tmp |= AUD_CONFIG_N_VALUE_INDEX; >> >else >> >tmp |= audio_config_hdmi_pixel_clock(adjusted_mode); >> > @@ -476,8 +477,7 @@ static void ilk_audio_codec_enable(struct drm_connector >> > *connector, >> >tmp &= ~AUD_CONFIG_N_VALUE_INDEX; >> >tmp &= ~AUD_CONFIG_N_PROG_ENABLE; >> >tmp &= ~AUD_CONFIG_PIXEL_CLOCK_HDMI_MASK; >> > - if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT) || >> > - intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DP_MST)) >> > + if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT)) >> >tmp |= AUD_CONFIG_N_VALUE_INDEX; >> >else >> >tmp |= audio_config_hdmi_pixel_clock(adjusted_mode); >> > -- >> > 2.4.3 >> > >> > ___ >> > Intel-gfx mailing list >> > Intel-gfx@lists.freedesktop.org >> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx >> > ___ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PULL] topic/drm-misc
On Wed, Mar 09, 2016 at 10:56:46AM +0100, Daniel Vetter wrote: > Hi Dave, > > I expect this to be the final drm-misc pull for 4.6: > - color manager core patch from Lionel - i915 side is ready too, but will > only land in 4.7, but I figured it's better to land this earlier for > better coordination with other plane stuff (like alpha/blending) going > on. > - more mode_fixup dummy func removal from Carlos (I think that's all now). > - atomic connector stealing fixes Maarten (maybe this time around, Maarten > added testcases for it to igt too). Color manager patch from Lionel needed some fixup. And somehow the 2nd pull request got lost, so third time's the charm ;-) I've thrown the SAD extraction patch from Ville on top for this one. -Daniel The following changes since commit 44ab4042178bd596275927ea050980aa4257581b: Merge branch 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next (2016-02-26 13:02:57 +1000) are available in the git repository at: git://anongit.freedesktop.org/drm-intel tags/topic/drm-misc-2016-03-14 for you to fetch changes up to c1f415c9acb5877c408d9311eb837d7d50636a68: drm: atomic helper: do not unreference error pointer (2016-03-13 19:39:54 +0100) Carlos Palminha (15): drm/cirrus: removed optional dummy crtc mode_fixup function. drm/mgag200: removed optional dummy crtc mode_fixup function. drm/udl: removed optional dummy crtc mode_fixup function. drm/gma: removed optional dummy crtc mode_fixup function. drm/rcar-du: removed optional dummy crtc mode_fixup function. drm/omapdrm: removed optional dummy crtc mode_fixup function. drm/msm/mdp: removed optional dummy crtc mode_fixup function. drm/shmobile: removed optional dummy crtc mode_fixup function. drm/sti: removed optional dummy crtc mode_fixup function. drm/atmel-hlcdc: remove optional dummy crtc mode_fixup function. drm/nouveau/dispnv04: removed optional dummy crtc mode_fixup function. drm/virtio: removed optional dummy crtc mode_fixup function. drm/fsl-dcu: removed optional dummy crtc mode_fixup function. drm/bochs: removed optional dummy crtc mode_fixup function. drm/ast: removed optional dummy crtc mode_fixup function. Lionel Landwerlin (3): drm: introduce pipe color correction properties drm: fix blob pointer check drm: atomic helper: do not unreference error pointer Liu Ying (1): drm/crtc: Use drm_mode_object_put() in __drm_framebuffer_unregister() Maarten Lankhorst (7): drm/atomic: Clean up update_output_state. drm/atomic: Pass connector and state to update_connector_routing. drm/atomic: Always call steal_encoder, v2. drm/atomic: Handle encoder stealing from set_config better. drm/atomic: Handle encoder assignment conflicts in a separate check, v3. drm/atomic: Clean up steal_encoder, v2. drm/atomic: Clean up update_connector_routing. Ville Syrjälä (1): drm/edid: Extract SADs properly from multiple audio data blocks Documentation/DocBook/gpu.tmpl | 59 +++- drivers/gpu/drm/ast/ast_mode.c | 8 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 9 - drivers/gpu/drm/bochs/bochs_kms.c | 8 - drivers/gpu/drm/cirrus/cirrus_mode.c | 13 - drivers/gpu/drm/drm_atomic.c | 88 +- drivers/gpu/drm/drm_atomic_helper.c| 362 - drivers/gpu/drm/drm_crtc.c | 39 ++- drivers/gpu/drm/drm_crtc_helper.c | 33 +++ drivers/gpu/drm/drm_edid.c | 17 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 8 - drivers/gpu/drm/gma500/cdv_intel_display.c | 13 +- drivers/gpu/drm/gma500/gma_display.c | 7 - drivers/gpu/drm/gma500/gma_display.h | 3 - drivers/gpu/drm/gma500/mdfld_intel_display.c | 2 - drivers/gpu/drm/gma500/oaktrail_crtc.c | 1 - drivers/gpu/drm/gma500/psb_intel_display.c | 1 - drivers/gpu/drm/mgag200/mgag200_mode.c | 13 - drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 8 - drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 8 - drivers/gpu/drm/nouveau/dispnv04/crtc.c| 8 - drivers/gpu/drm/omapdrm/omap_crtc.c| 8 - drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 9 - drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 8 - drivers/gpu/drm/sti/sti_crtc.c | 9 - drivers/gpu/drm/udl/udl_modeset.c | 9 - drivers/gpu/drm/virtio/virtgpu_display.c | 8 - include/drm/drm_atomic_helper.h| 3 + include/drm/drm_crtc.h | 48 +++- include/drm/drm_crtc_helper.h | 3 + include/uapi/drm/drm_mode.h| 15 + 31 files changed, 536 insertions(+), 292 deletions(-) -- Daniel Vetter Software Engineer, Intel Corpor
Re: [Intel-gfx] [PATCH 2/2] drm/i915: Restrict usage of live status check
On Fri, 11 Mar 2016, Shashank Sharma wrote: > [ text/plain ] > This patch restricts usage of live status check for HDMI detection. > While testing certain (monitor + cable) combinations with various > intel platforms, it seems that live status register is not reliable > on some older devices. So limit the live_status check from VLV onwards. > > This fixes a regression introduced in: > commit 237ed86c693d8a8e4db476976aeb30df4deac74b > Author: Sonika Jindal > Date: Tue Sep 15 09:44:20 2015 +0530 > drm/i915: Check live status before reading edid This is in v4.4, which means the fix will need to be backported too, so please send a patch fixing the bug *first*, instead of depending on an optimization patch. BR, Jani. > > Signed-off-by: Shashank Sharma > --- > drivers/gpu/drm/i915/intel_hdmi.c | 18 +- > 1 file changed, 13 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c > b/drivers/gpu/drm/i915/intel_hdmi.c > index b523a2f..ca1fb57 100644 > --- a/drivers/gpu/drm/i915/intel_hdmi.c > +++ b/drivers/gpu/drm/i915/intel_hdmi.c > @@ -1397,6 +1397,7 @@ intel_hdmi_detect(struct drm_connector *connector, bool > force) > enum drm_connector_status status; > struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector); > struct drm_i915_private *dev_priv = to_i915(connector->dev); > + struct drm_device *dev = connector->dev; > bool live_status = true; > unsigned int try = 8; > > @@ -1404,14 +1405,21 @@ intel_hdmi_detect(struct drm_connector *connector, > bool force) > connector->base.id, connector->name); > > intel_display_power_get(dev_priv, POWER_DOMAIN_GMBUS); > - live_status = intel_digital_port_connected(dev_priv, > - hdmi_to_dig_port(intel_hdmi)); > - while (!live_status && try--) { > - msleep(10); > + > + /* > + * The live status register doesn't work reliably with certain > + * cables/monitors, on old platforms. So restrict the live status > + * check to be applied from VLV onwards. > + */ > + if (INTEL_INFO(dev)->gen >= 7 && !IS_IVYBRIDGE(dev)) { > live_status = intel_digital_port_connected(dev_priv, > hdmi_to_dig_port(intel_hdmi)); > + while (!live_status && try--) { > + msleep(10); > + live_status = intel_digital_port_connected(dev_priv, > + hdmi_to_dig_port(intel_hdmi)); > + } > } > - > intel_hdmi_unset_edid(connector); > > if (intel_hdmi_set_edid(connector, live_status)) { -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx