All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@intel.com>
To: "Lee, Shawn C" <shawn.c.lee@intel.com>, intel-gfx@lists.freedesktop.org
Cc: Cooper Chiou <cooper.chiou@intel.com>,
	Lee@freedesktop.org, Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: Re: [PATCH] drm/i915: Release power well if load DMC failed
Date: Wed, 21 Nov 2018 09:53:41 +0200	[thread overview]
Message-ID: <877eh6g92y.fsf@intel.com> (raw)
In-Reply-To: <1542787159-32662-1-git-send-email-shawn.c.lee@intel.com>

On Tue, 20 Nov 2018, "Lee, Shawn C" <shawn.c.lee@intel.com> wrote:
> Driver obtain power well at intel_csr_ucode_init().
> And release it after load DMC firmware successful.

Correct.

> An issue happened when DMC was not found or failed
> to load. Power well would not be released and just
> output some error messages. Driver have to release
> power well properly to keep put/get balance.

No. We intentionally do not release it until dmc firmware load succeeds.

See the comment in intel_csr_ucode_init(), as well as this in the branch
where dmc load fails:

		dev_notice(dev_priv->drm.dev,
			   "Failed to load DMC firmware %s."
			   " Disabling runtime power management.\n",
			   csr->fw_path);

We don't support runtime pm without dmc on platforms with dmc.

BR,
Jani.

>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Jose Roberto de Souza <jose.souza@intel.com>
> Cc: Cooper Chiou <cooper.chiou@intel.com>
>
> Signed-off-by: Lee, Shawn C <shawn.c.lee@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_csr.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
> index a516697bf57d..8d04d7b6f00a 100644
> --- a/drivers/gpu/drm/i915/intel_csr.c
> +++ b/drivers/gpu/drm/i915/intel_csr.c
> @@ -425,8 +425,6 @@ static void csr_load_work_fn(struct work_struct *work)
>  	if (dev_priv->csr.dmc_payload) {
>  		intel_csr_load_program(dev_priv);
>  
> -		intel_display_power_put(dev_priv, POWER_DOMAIN_INIT);
> -
>  		DRM_INFO("Finished loading DMC firmware %s (v%u.%u)\n",
>  			 dev_priv->csr.fw_path,
>  			 CSR_VERSION_MAJOR(csr->version),
> @@ -440,6 +438,7 @@ static void csr_load_work_fn(struct work_struct *work)
>  			   INTEL_UC_FIRMWARE_URL);
>  	}
>  
> +	intel_display_power_put(dev_priv, POWER_DOMAIN_INIT);
>  	release_firmware(fw);
>  }

-- 
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2018-11-21  7:53 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-21  7:59 [PATCH] drm/i915: Release power well if load DMC failed Lee, Shawn C
2018-11-21  7:53 ` Jani Nikula [this message]
2018-11-21  8:15   ` Lee, Shawn C
2018-11-21  9:05     ` Jani Nikula
2018-11-21  9:17       ` Lee, Shawn C
2018-11-21  9:29         ` Jani Nikula
2018-11-22  4:49           ` Lee, Shawn C
2018-11-21  8:01 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-11-21 13:46 ` ✓ Fi.CI.IGT: " Patchwork

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=877eh6g92y.fsf@intel.com \
    --to=jani.nikula@intel.com \
    --cc=Lee@freedesktop.org \
    --cc=cooper.chiou@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=rodrigo.vivi@intel.com \
    --cc=shawn.c.lee@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.