public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Arun Chandran <achandran@mvista.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: Power saving using Display port HPD
Date: Thu, 10 Apr 2014 09:24:11 +0200	[thread overview]
Message-ID: <20140410072411.GL9262@phenom.ffwll.local> (raw)
In-Reply-To: <CAFdej01zjUY7AiXbHAW0TwFD9NadN667GwrhzdmiR=+eL+knvw@mail.gmail.com>

On Thu, Apr 10, 2014 at 12:06:15PM +0530, Arun Chandran wrote:
> I have connected only a DP monitor on Bayley Bay platform and booting
> ubuntu 13.10 with the kernel
> http://cgit.freedesktop.org/drm-intel/log/?h=drm-intel-fixes.
> 
> I am experimenting with the HPD feature of display port with debug
> messages enabled. (drm.debug=0xe).
> 
> When I plug in/out DP cable I am able to see the below kernel messages
> and ubuntu desktop is displayed on the DP monitor
> 
> ##############################
> 
> 
> root@arun-valley-view:~# uname -a
> Linux arun-valley-view 3.14.0-00528-g67e9d82 #34 SMP PREEMPT Wed Apr 9
> 18:48:30 IST 2014 i686 i686 i686 GNU/Linux
> 
> root@arun-valley-view:~# dmesg -c
> 
> [ 1028.506188] [drm:intel_hpd_irq_handler] hotplug event received,
> stat 0x00100000
> [ 1028.506217] [drm:intel_hpd_irq_handler] Received HPD interrupt on
> PIN 5 - cnt: 0
> [ 1028.513858] [drm:i915_hotplug_work_func] running encoder hotplug functions
> [ 1028.513880] [drm:i915_hotplug_work_func] Connector eDP-1 (pin 5)
> received hotplug event.
> [ 1028.513896] [drm:i915_hotplug_work_func] Connector HDMI-A-2 (pin 5)
> received hotplug event.
> [ 1028.513913] [drm:_edp_panel_vdd_on] Turning eDP VDD on
> [ 1028.513931] [drm:_edp_panel_vdd_on] PP_STATUS: 0x80000008
> PP_CONTROL: 0xabcd000f
> [ 1028.515064] [drm:intel_dp_get_dpcd] DPCD: 11 0a 84 01 01 00 01 80
> 02 00 00 00 00 00 00
> [ 1028.516563] [drm:intel_dp_check_link_status] TMDS-22: channel EQ
> not ok, retraining
> [ 1028.530884] [drm:intel_dp_set_signal_levels] Using signal levels 00000000
> [ 1028.546113] [drm:intel_dp_set_signal_levels] Using signal levels 00000000
> [ 1028.547233] [drm:intel_dp_start_link_train] clock recovery OK
> [ 1028.548711] [drm:intel_dp_complete_link_train] Channel EQ done. DP
> Training successful
> [ 1028.549264] [drm:intel_dp_detect] [CONNECTOR:23:eDP-1]
> [ 1028.549761] [drm:intel_dp_probe_oui] Sink OUI: 00e04c
> [ 1028.550262] [drm:intel_dp_probe_oui] Branch OUI: 000000
> [ 1028.550343] [drm:intel_hdmi_detect] [CONNECTOR:21:HDMI-A-2]
> [ 1028.550595] [drm:gmbus_xfer] GMBUS [i915 gmbus dpc] NAK for addr: 0050 r(1)
> [ 1028.550611] [drm:drm_do_probe_ddc_edid] drm: skipping non-existent
> adapter i915 gmbus dpc
> 
> ##################################
> 
> After booting I am executing the below steps
> 
> 1) unplug DP cable.
> 
> 2) Mask the pin 18 (HPD) of DP cable using a paper strip then connect it
> back
>     I have checked the dmesg output and the there is no messages related to
> HPD. So kernel is
>     unaware that I have connected a DP monitor
> 
> But still I see ubuntu desktop coming on the DP monitor.  This means kernel
> does not stop pumping display data after step 1.
> 
> Is this the right behavior? . When kernel knows that the last existing
> display is removed (via the HPD feature) it can save power by stopping the
> data output to DP monitor (or shutting down the DP hardware related part.)
> 
> Does anybody knows how to use the HPD feature to save power? Or anybody has
> done this before?

Yes, this is expected behaviour. Userspace asked the kernel to shovel
pixels to the DP screen, the kernel obeyed. If you want to kill the pipe
when unplugged, you need to make that policy decision in userspace.

This is similar to how dpms off is driven by userspace and not the kernel.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

  parent reply	other threads:[~2014-04-10  7:24 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-10  6:36 Power saving using Display port HPD Arun Chandran
2014-04-10  7:22 ` Jani Nikula
2014-04-10  7:24 ` Daniel Vetter [this message]
2014-04-10  7:39   ` Jani Nikula
2014-04-10 10:28   ` Arun Chandran
2014-04-14  7:43     ` Arun Chandran
2014-04-14  7:47       ` Daniel Vetter
2014-04-14  8:17         ` Imre Deak
2014-04-15 19:32           ` Daniel Vetter
2014-04-15 20:01             ` Imre Deak
2014-04-15 21:13               ` Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140410072411.GL9262@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=achandran@mvista.com \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox