Re: [Intel-gfx] [PATCH] drm/i915/ppgtt: Prevent NULL deref in reset ioctl

2013-12-19 Thread Ben Widawsky
On Fri, Dec 20, 2013 at 07:05:10AM +0100, Daniel Vetter wrote: > On Fri, Dec 20, 2013 at 12:22 AM, Ben Widawsky > wrote: > > ctx = i915_gem_context_get(file->driver_priv, args->ctx_id); > > - if (IS_ERR(ctx)) { > > + if (IS_ERR_OR_NULL(ctx)) { > > We now have half the callers

Re: [Intel-gfx] [PATCH 1/3] drm/i915: add wait_for_vblank argument to intel_enable_pipe

2013-12-19 Thread Jani Nikula
On Thu, 19 Dec 2013, Paulo Zanoni wrote: > From: Paulo Zanoni > > Depending on the HW gen and the connector type, the pipe won't start > running right after we call intel_enable_pipe, so that > intel_wait_for_vblank call we currently have will just sit there for > the full 50ms timeout. So this p

Re: [Intel-gfx] [PATCH] ACPI / video: Use native backlight control interface by default

2013-12-19 Thread Aaron Lu
On Thu, Dec 05, 2013 at 08:50:21AM +0100, Daniel Vetter wrote: > On Thu, Dec 5, 2013 at 3:32 AM, Matthew Garrett wrote: > > We had problems with the Intel backlight driver the last time we tried > > this, so let's push this through their tree for testing first? Cc:ed > > intel-gfx and Daniel Vette

Re: [Intel-gfx] [PATCH] drm/i915/ppgtt: Prevent NULL deref in reset ioctl

2013-12-19 Thread Daniel Vetter
On Fri, Dec 20, 2013 at 12:22 AM, Ben Widawsky wrote: > ctx = i915_gem_context_get(file->driver_priv, args->ctx_id); > - if (IS_ERR(ctx)) { > + if (IS_ERR_OR_NULL(ctx)) { We now have half the callers check for IS_ERR and the others not. Afaics i915_gem_context_get can only ret

Re: [Intel-gfx] [PATCH 2/5] drm/i915: Parse EDID probed modes for DRRS support

2013-12-19 Thread Vandana Kannan
On Dec-19-2013 5:21 PM, Jani Nikula wrote: > On Tue, 17 Dec 2013, Vandana Kannan wrote: >> From: Pradeep Bhat >> >> This patch and finds out the lowest refresh rate supported for the resolution >> same as the fixed_mode, based on the implementaion find_panel_downclock. >> It also checks the VBT f

[Intel-gfx] [PATCH] drm/i915/ppgtt: Prevent NULL deref in reset ioctl

2013-12-19 Thread Ben Widawsky
If we look up an invalid context ID, the idr will return NULL. The ptr is unconditionally dereferenced afterwards causing a problem. Note that if the context does not exist, we still return success. This appears to be the behavior desired by gem_reset_stats --subtest ban Introduced in v3 of commi

Re: [Intel-gfx] [PATCH 02/19] drm/i915: get/put runtime PM without holding rps.hw_lock

2013-12-19 Thread Paulo Zanoni
2013/12/19 Daniel Vetter : > On Thu, Dec 19, 2013 at 7:30 PM, Jesse Barnes > wrote: >> So we have these runtime_pm_get/put calls all over now. Is the plan to >> convert those to specific wells as we add support for new platforms so >> we can have fine grained well control rather than just global

Re: [Intel-gfx] [PATCH 02/19] drm/i915: get/put runtime PM without holding rps.hw_lock

2013-12-19 Thread Daniel Vetter
On Thu, Dec 19, 2013 at 7:30 PM, Jesse Barnes wrote: > So we have these runtime_pm_get/put calls all over now. Is the plan to > convert those to specific wells as we add support for new platforms so > we can have fine grained well control rather than just global control? > I guess I need to dig o

Re: [Intel-gfx] [PATCH 3/3] drm/i915: remove the vblank_wait hack from HSW+

2013-12-19 Thread Daniel Vetter
On Thu, Dec 19, 2013 at 10:12 PM, Paulo Zanoni wrote: > From: Paulo Zanoni > > When I forked haswell_crtc_enable I copied all the code from > ironlake_crtc_enable. The last piece of the function contains a big > comment with a call to intel_wait_for_vblank. After this fork, we > rearranged the Ha

[Intel-gfx] [PATCH 3/3] drm/i915: remove the vblank_wait hack from HSW+

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni When I forked haswell_crtc_enable I copied all the code from ironlake_crtc_enable. The last piece of the function contains a big comment with a call to intel_wait_for_vblank. After this fork, we rearranged the Haswell code so that it enables the planes as the very last step of

[Intel-gfx] [PATCH 2/3] drm/i915: don't wait for vblank after enabling pipe on HSW

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Because on Haswell, the pipe is never running at this point, so we hit the 50ms timeout waiting for nothing. We already have two other places where we wait for vblanks on haswell_crtc_enable, so we're safe. This gets us rid of one instance of "vblank wait timed out" for each m

[Intel-gfx] [PATCH 1/3] drm/i915: add wait_for_vblank argument to intel_enable_pipe

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Depending on the HW gen and the connector type, the pipe won't start running right after we call intel_enable_pipe, so that intel_wait_for_vblank call we currently have will just sit there for the full 50ms timeout. So this patch adds an argument that will allow us to avoid the

[Intel-gfx] [PATCH] drm/i915: fix fastboot pfit disable hack to update pipe w/h

2013-12-19 Thread Jesse Barnes
When fastbooting, we read out the pipe timings early on, and then in a panel fitted config, disable the fitter later. But we weren't updating the pipe src h/w, which meant the mouse cursor was clipped to the pfitted size rather than the native size set later. Fix that up so the cursor is visible

Re: [Intel-gfx] [PATCH 5/6] drm/i915: don't wait for power cycle when waiting for power off

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 09:38:45 -0800 Jesse Barnes wrote: > On Thu, 19 Dec 2013 14:29:43 -0200 > Paulo Zanoni wrote: > > > From: Paulo Zanoni > > > > Function ironlake_wait_panel_off should just wait for the power off > > delay, while function ironlake_wait_panel_power_cycle should wait for > >

Re: [Intel-gfx] intel-drm-nightly 3.13rc3 broke i830 - more debug

2013-12-19 Thread Thomas Richter
Hi Daniel, Quick shot in the dark: Can you please try the below diff? If that doesn't work please remove the locking in that function completely (i.e. remove the calls to drm_modset_lock|unlock_all). If that doesn't help please compile a pristine -nightly with lockdep (CONFIG_PROVE_LOCKING) re

Re: [Intel-gfx] [PATCH 02/19] drm/i915: get/put runtime PM without holding rps.hw_lock

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 11:54:52 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > We'll need this when we merge PC8 and Runtime PM: the PC8 > enable/disable functions need that lock. > > Also, it's good practice to not hold a lock for longer than strictly > needed. > > Signed-off-by: Paulo Zano

Re: [Intel-gfx] [PATCH 6/6] drm/i915: set the backlight panel delays registers to 1

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:44 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > Because we already do the wait in software: see > ironlake_wait_backlight_on and ironlake_edp_wait_backlight_off. > > For the "backlight on" delay, even BSpec says we need to program 0x1 > to PP_ON_DELAYS 12:0. >

Re: [Intel-gfx] [PATCH 5/6] drm/i915: don't wait for power cycle when waiting for power off

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:43 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > Function ironlake_wait_panel_off should just wait for the power off > delay, while function ironlake_wait_panel_power_cycle should wait for > the panel cycle (that's required after we turn the panel off, before > we

Re: [Intel-gfx] [PATCH 4/6] drm/i915: remove a column of zeros from the eDP wait definitions

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:42 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > I like how the macros are nicely column-aligned, so we can properly > compare what each macro waits for, but a column full of zeroes doesn't > really help anything: it just makes the lines bigger, and they're > alre

Re: [Intel-gfx] [PATCH 3/6] drm/i915: reset eDP timestamps on resume

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:41 -0200 Paulo Zanoni wrote: > + * Reset everything, otherwise when suspend/resume gets very fast, we > + * delay the resume based on the values that were set when we were still > + * suspending. > + */ > + intel_dp->last_power_on = tmp_jiffies -

Re: [Intel-gfx] [PATCH 2/6] drm/i915: save some time when waiting the eDP timings

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:40 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > The eDP spec defines some points where after you do action A, you have > to wait some time before action B. The thing is that in our driver > action B does not happen exactly after action A, but we still use > mslee

Re: [Intel-gfx] [PATCH 1/6] drm/i915: init the DP panel power seq variables earlier

2013-12-19 Thread Jesse Barnes
On Thu, 19 Dec 2013 14:29:39 -0200 Paulo Zanoni wrote: > From: Paulo Zanoni > > Our driver has two different ways of waiting for panel power > sequencing delays. One of these ways is through > ironlake_wait_panel_status, which implicitly uses the values written > to our registers. The other way

[Intel-gfx] [PATCH 0/6] eDP panel power sequencing optimizations

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Hi These patches save a lot of time on our eDP panel power sequencing times. We were doing a lot of needless waits, so now our load times should be much shorter. This series should improve a little bit our driver load time, and it should greatly improve our suspend time. The

[Intel-gfx] [PATCH 3/6] drm/i915: reset eDP timestamps on resume

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni The eDP code records a few timestamps containing the last time we took some actions, because we need to wait before doing some other actions. The problem is that if we store a timestamp when suspending and then look at it when resuming, we'll ignore the unknown amount of time w

[Intel-gfx] [PATCH 4/6] drm/i915: remove a column of zeros from the eDP wait definitions

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni I like how the macros are nicely column-aligned, so we can properly compare what each macro waits for, but a column full of zeroes doesn't really help anything: it just makes the lines bigger, and they're already way past 80 columns. I imagine this column was used in the past,

[Intel-gfx] [PATCH 2/6] drm/i915: save some time when waiting the eDP timings

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni The eDP spec defines some points where after you do action A, you have to wait some time before action B. The thing is that in our driver action B does not happen exactly after action A, but we still use msleep() calls directly. What this patch does is that we record the timest

[Intel-gfx] [PATCH 5/6] drm/i915: don't wait for power cycle when waiting for power off

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Function ironlake_wait_panel_off should just wait for the power off delay, while function ironlake_wait_panel_power_cycle should wait for the panel cycle (that's required after we turn the panel off, before we enable it again). The problem is that, currently, ironlake_wait_pan

[Intel-gfx] [PATCH 6/6] drm/i915: set the backlight panel delays registers to 1

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Because we already do the wait in software: see ironlake_wait_backlight_on and ironlake_edp_wait_backlight_off. For the "backlight on" delay, even BSpec says we need to program 0x1 to PP_ON_DELAYS 12:0. For the "backlight off" delay, if we don't do the same thing, when we cal

[Intel-gfx] [PATCH 1/6] drm/i915: init the DP panel power seq variables earlier

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Our driver has two different ways of waiting for panel power sequencing delays. One of these ways is through ironlake_wait_panel_status, which implicitly uses the values written to our registers. The other way is through the functions that call intel_wait_until_after, and on th

Re: [Intel-gfx] intel-drm-nightly 3.13rc3 broke i830 - more debug

2013-12-19 Thread Daniel Vetter
On Thu, Dec 19, 2013 at 04:46:17PM +0100, Daniel Vetter wrote: > On Thu, Dec 19, 2013 at 04:07:35PM +0100, Thomas Richter wrote: > > Hi Daniel, hi folks, > > > > here is more debug output from the blank screen/hang on the i830 > > based laptop: > > Quick shot in the dark: Can you please try the b

Re: [Intel-gfx] intel-drm-nightly 3.13rc3 broke i830 - more debug

2013-12-19 Thread Daniel Vetter
On Thu, Dec 19, 2013 at 04:07:35PM +0100, Thomas Richter wrote: > Hi Daniel, hi folks, > > here is more debug output from the blank screen/hang on the i830 > based laptop: Quick shot in the dark: Can you please try the below diff? If that doesn't work please remove the locking in that function c

[Intel-gfx] intel-drm-nightly 3.13rc3 broke i830 - more debug

2013-12-19 Thread Thomas Richter
Hi Daniel, hi folks, here is more debug output from the blank screen/hang on the i830 based laptop: Dec 19 15:48:19 tyleet kernel: [ 10.919155] [drm:drm_pci_init], Dec 19 15:48:19 tyleet kernel: [ 11.317545] lib80211_crypt: registered algorithm 'NULL' Dec 19 15:48:19 tyleet kernel: [ 1

[Intel-gfx] intel-drm-nightly: hang and black screen on i830

2013-12-19 Thread Thomas Richter
Hi Daniel, hi folks, back from a couple of business trips, so finally some time to look into the i830 support on this old laptop. Sorry to say that the current drm-nightly does not work at all. It just generates a hang, resulting in a black screen and nothing else. All you can do there is to

[Intel-gfx] [PATCH 11/19] drm/i915: don't get/put PC8 reference on freeze/thaw

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni We already get runtime PM references, and PC8 is now part of runtime PM, so this is enough. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_drv.c | 5 - 1 file changed, 5 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv

[Intel-gfx] [PATCH 17/19] drm/i915: rename __hsw_do_{en, dis}able_pc8

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni After we removed all the intermediate abstractions, we can rename these functions to just hsw_{en,dis}able_pc8. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_drv.c | 4 ++-- drivers/gpu/drm/i915/intel_display.c | 4 ++-- drivers/gpu/drm/i915/intel_drv.h

[Intel-gfx] [PATCH 13/19] drm/i915: don't get/put PC8 when getting/putting power wells

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Because we already get/put runtime PM every time we get/put any power domain, and now PC8 and runtime PM are the same thing. With this, we can also now kill the hsw_{en,dis}able_package_c8 functions. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/intel_display.c | 20

[Intel-gfx] [PATCH 15/19] drm/i915: move pc8.irqs_disabled to pm.irqs_disabled

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni When other platforms add runtime PM support they will also need to disable interrupts, so move the variable to the runtime PM struct. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_debugfs.c | 6 drivers/gpu/drm/i915/i915_drv.h | 14 - drivers/

[Intel-gfx] [PATCH 19/19] drm/i915: init pm.suspended earlier

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Function intel_init_runtime_pm is supposed to start allowing runtime PM from that point, but it's called very late on the driver initialization code, to prevent the driver from trying to suspend while still initializing. The problem is that variables are accessed earlier than t

[Intel-gfx] [PATCH 16/19] drm/i915: kill struct i915_package_c8

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni The only remaining field of the struct was the lock, which was unused. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_drv.h | 6 -- drivers/gpu/drm/i915/intel_pm.c | 1 - 2 files changed, 7 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/g

[Intel-gfx] [PATCH 10/19] drm/i915: remove an indirection level on PC8 functions

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni After the latest changes, the indirection is useless. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/intel_display.c | 16 ++-- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel

[Intel-gfx] [PATCH 14/19] drm/i915: remove dev_priv->pc8.enabled

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni It was just being used on debugfs and on a WARN inside hsw_set_power_well. But now that we PC8 is part of runtime PM and we get/put runtime PM when we get/put any power domain, we shouldn't need the WARN anymore. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_debu

[Intel-gfx] [PATCH 04/19] drm/i915: extract __hsw_do_{en, dis}able_package_c8

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni When we merge PC8 and runtime PM, these new functions are going to be called by the runtime suspend/resume functions, and their callers are going to be removed. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/intel_display.c | 64 +--- 1

[Intel-gfx] [PATCH 12/19] drm/i915: get/put runtime PM references for GMBUS and DP AUX

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni We had these intel_aux_display_runtime_{get,put} abstractions that would just get/put PC8 references, but now that runtime PM and PC8 are the same stuff, we just need the runtime PM references, so just get/put runtime PM directly, because that's what the rest of our code does.

[Intel-gfx] [PATCH 18/19] drm/i915: update the PC8 and runtime PM documentation.

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Now that PC8 got much simpler, there are less things to document. Also, runtime PM already has a nice documentation, so we don't need to re-explain it on our driver. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_drv.h | 56 +++

[Intel-gfx] [PATCH 09/19] drm/i915: kill pc8.disable_count

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Since after the latest patches it's only being used to prevent getting/putting the runtime PM refcount. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_debugfs.c | 1 - drivers/gpu/drm/i915/i915_drv.h | 1 - drivers/gpu/drm/i915/intel_display.c | 14 ---

[Intel-gfx] [PATCH 00/19] Make PC8 become part of runtime PM

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Hi This patch series makes the PC8 feature become part of the runtime PM feature. They won't be 2 separate features anymore, but just one. You can find some good arguments for this in the commit message of patch 5. - Patch 1 is just a bikeshed that can be discarded if neede

[Intel-gfx] [PATCH 06/19] drm/i915: get/put runtime PM when we get/put a power domain

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Any power domain will require the HW to be in PCI D0 state, so just do the simple thing. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/intel_pm.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c

[Intel-gfx] [PATCH 01/19] drm/i915: rename modeset_update_power_wells

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni To modeset_update_crtc_power_domains, since this function is responsible for updating all the power domains of all CRTCs after a modeset. In the future we should also run this function on all platforms, not just Haswell. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i

[Intel-gfx] [PATCH 08/19] drm/i915: make gpu_idle be part of runtime PM, not PC8

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Because PC8 is part of runtime PM, and platforms without PC8 will need gpu_idle for runtime PM support. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_debugfs.c | 1 - drivers/gpu/drm/i915/i915_drv.h | 3 ++- drivers/gpu/drm/i915/intel_display.c | 32 +

[Intel-gfx] [PATCH 02/19] drm/i915: get/put runtime PM without holding rps.hw_lock

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni We'll need this when we merge PC8 and Runtime PM: the PC8 enable/disable functions need that lock. Also, it's good practice to not hold a lock for longer than strictly needed. Signed-off-by: Paulo Zanoni --- drivers/gpu/drm/i915/i915_debugfs.c | 12 +++- 1 file chan

[Intel-gfx] [PATCH 05/19] drm/i915: make PC8 be part of runtime PM suspend/resume

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni Currently, when our driver becomes idle for i915_pc8_timeout (default: 5s) we enable PC8, so we save some power, but not everything we can. Then, while PC8 is enabled, if we stay idle for more autosuspend_delay_ms (default: 10s) we'll enter runtime PM and put the graphics devic

[Intel-gfx] [PATCH 03/19] drm/i915: add forcewake functions that don't touch runtime PM

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni To solve a chicken-and-egg problem. Currently when we get/put forcewake we also get/put runtime PM and this works fine because the runtime PM code doesn't need forcewake. But we're going to merge PC8 and runtime PM into a single feature, and the PC8 code (the LCPLL code) does n

[Intel-gfx] [PATCH 07/19] drm/i915: remove dev_priv->pc8.requirements_met

2013-12-19 Thread Paulo Zanoni
From: Paulo Zanoni The requirements_met variable was used to track two things: enabled CRTCs and the power well. After the latest chagnes, we get a runtime PM reference whenever we get any of the power domains, and we get power domains when we enable CRTCs or the power well, so we should already

Re: [Intel-gfx] [PATCH] drm/edid: Populate picture aspect ratio for CEA modes

2013-12-19 Thread Alex Deucher
On Thu, Dec 19, 2013 at 5:04 AM, Vandana Kannan wrote: > Adding picture aspect ratio for CEA modes based on CEA-861D Table 3 or > CEA-861E Table 4. This is useful for filling up the detail in AVI > infoframe. > > v2: Ville's review comments incorporated > Added picture aspect ratio as part of edid

[Intel-gfx] [Patch v2 11/13] ACPI, i915: replace open-coded _DSM specific code with helper functions

2013-12-19 Thread Jiang Liu
Use helper functions to simplify _DSM related code in i915 driver. Function intel_dsm() is used to check functions supported by ACPI _DSM method, but it has strange check for special value 0x8002. After digging into nouveau driver, I think the check is copied from nouveau driver and is useless

Re: [Intel-gfx] Minor bug in intel-gpu-tools

2013-12-19 Thread Zanoni, Paulo R
Copying the appropriate mailing list. Thanks for the report! > From: Patrick McMunn [mailto:doctorwho...@gmail.com] > Sent: Thursday, December 19, 2013 7:59 AM > To: Zanoni, Paulo R > Subject: Minor bug in intel-gpu-tools > > I noticed that if I run "./configure --enable-shader-debugger", the co

Re: [Intel-gfx] [PATCH 2/5] drm/i915: Parse EDID probed modes for DRRS support

2013-12-19 Thread Jani Nikula
On Tue, 17 Dec 2013, Vandana Kannan wrote: > From: Pradeep Bhat > > This patch and finds out the lowest refresh rate supported for the resolution > same as the fixed_mode, based on the implementaion find_panel_downclock. > It also checks the VBT fields to see if panel supports seamless DRRS or no

[Intel-gfx] [PATCH] drm/edid: Populate picture aspect ratio for CEA modes

2013-12-19 Thread Vandana Kannan
Adding picture aspect ratio for CEA modes based on CEA-861D Table 3 or CEA-861E Table 4. This is useful for filling up the detail in AVI infoframe. v2: Ville's review comments incorporated Added picture aspect ratio as part of edid_cea_modes instead of DRM_MODE Signed-off-by: Vandana Kannan Revi

[Intel-gfx] [PATCH 4/5] drm/i915: Idleness detection for DRRS

2013-12-19 Thread Vandana Kannan
Adding support to detect display idleness by tracking page flip from user space. Switch to low refresh rate is triggered after 2 seconds of idleness. The delay is configurable. If there is a page flip or call to update the plane, then high refresh rate is applied. The feature is not used in dual-di

[Intel-gfx] [PATCH 3/5] drm/i915: Add support for DRRS to switch RR

2013-12-19 Thread Vandana Kannan
From: Pradeep Bhat This patch computes and stored 2nd M/N/TU for switching to different refresh rate dynamically. PIPECONF_EDP_RR_MODE_SWITCH bit helps toggle between alternate refresh rates programmed in 2nd M/N/TU registers. v2: Daniel's review comments Computing M2/N2 in compute_config and st

[Intel-gfx] [PATCH 1/5] drm/i915: Adding VBT fields to support eDP DRRS feature

2013-12-19 Thread Vandana Kannan
From: Pradeep Bhat This patch reads the DRRS support and Mode type from VBT fields. The read information will be stored in VBT struct during BIOS parsing. The above functionality is needed for decision making whether DRRS feature is supported in i915 driver for eDP panels. This information helps

[Intel-gfx] [PATCH 0/5] Enabling DRRS in the kernel

2013-12-19 Thread Vandana Kannan
Dynamic Refresh Rate Switching (DRRS) is a power conservation feature which enabled swtiching between low and high refresh rates based on the usage scenario. This feature is applciable for internal eDP panel. Indication that the panel supports DRRS is given by the panel EDID, whic

[Intel-gfx] [PATCH 5/5] drm/i915/bdw: Add support for DRRS to switch RR

2013-12-19 Thread Vandana Kannan
For Broadwell, there is one instance of Transcoder MN values per transcoder. For dynamic switching between multiple refreshr rates, M/N values may be reprogrammed on the fly. Link N programming triggers update of all data and link M & N registers and the new M/N values will be used in the next fram

[Intel-gfx] [PATCH 2/5] drm/i915: Parse EDID probed modes for DRRS support

2013-12-19 Thread Vandana Kannan
From: Pradeep Bhat This patch and finds out the lowest refresh rate supported for the resolution same as the fixed_mode, based on the implementaion find_panel_downclock. It also checks the VBT fields to see if panel supports seamless DRRS or not. Based on above data it marks whether eDP panel sup