Power saving using Display port HPD

Arun Chandran
2014-04-10T06:36:16Z

[-- Attachment #1.1: Type: text/plain, Size: 2856 bytes --]

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?

Regards,
Arun C

[-- Attachment #1.2: Type: text/html, Size: 4570 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org