All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: "Srivatsa, Anusha" <anusha.srivatsa@intel.com>
Cc: "Nikula, Jani" <jani.nikula@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>,
	"Zanoni, Paulo R" <paulo.r.zanoni@intel.com>
Subject: Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
Date: Wed, 5 Sep 2018 12:31:22 -0700	[thread overview]
Message-ID: <20180905193122.GE26612@intel.com> (raw)
In-Reply-To: <83F5C7385F545743AD4FB2A62F75B07347F4D3A3@ORSMSX108.amr.corp.intel.com>

On Wed, Sep 05, 2018 at 11:55:32AM -0700, Srivatsa, Anusha wrote:
> 
> 
> >-----Original Message-----
> >From: Vivi, Rodrigo
> >Sent: Monday, September 3, 2018 10:27 PM
> >To: Deak, Imre <imre.deak@intel.com>
> >Cc: Srivatsa, Anusha <anusha.srivatsa@intel.com>; Nikula, Jani
> ><jani.nikula@intel.com>; intel-gfx@lists.freedesktop.org; Zanoni, Paulo R
> ><paulo.r.zanoni@intel.com>
> >Subject: Re: [Intel-gfx] [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
> >
> >On Mon, Sep 03, 2018 at 01:00:39PM +0300, Imre Deak wrote:
> >> On Mon, Aug 27, 2018 at 05:38:44PM -0700, Anusha Srivatsa wrote:
> >> > Add Support to load DMC on Icelake.
> >> >
> >> > While at it, also add support to load the firmware during system
> >> > resume.
> >> >
> >> > v2: load firmware during system resume.(Imre)
> >> >
> >> > v3: enable has_csr for icelake.(Jyoti)
> >> >
> >> > v4: Only load the firmware in this patch
> >> >
> >> > Cc: Jyoti Yadav <jyoti.r.yadav@intel.com>
> >> > Cc: Imre Deak <imre.deak@intel.com>
> >> > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> >> > Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> >> > Signed-off-by: Anusha Srivatsa <anusha.srivatsa@intel.com>
> >>
> >> Reviewed-by: Imre Deak <imre.deak@intel.com>
> >>
> >> Is it ok to push this already now that the ICL 1.07 firmware is in [1]
> >> or do we have to wait until it propagates to [2]?
> >
> >The main motivation behind having drm-firmware is the unpredictability of linux-
> >firmware.git pull requests acceptance. It may take 1 day or it may take 2 months.
> >
> >So on drm-firmware we at least have it public in a way OSVs could easisly
> >backport. Although hopefully by the end of 4.20 cycle I believe it will be there on
> >linux-firmware.git already.
> >
> >So if fw is already on drm-firmware and passing all tests we should be able to
> >push the patch to dinq.
> 
> I will be sending the PR to linux-firmware.git. I think it is safe to push this patch.
> 
> Regarding MODULE_FIRMWARE, Rodrigo, do you suggest I send that in a separate patch? In that case we can merge this patch as it is and have that as a separate one.

yeap, let's keep a separated patch for now since we are not sure
there is an rough consensus on getting it in one patch.

> 
> In future, maybe better to add MODULE_FIRMWARE in the original patch?

That is my idea.
Besides those points that I raised on the other branch of this thread
I remember of more two points in favor of having in only one patch:

In case this patch here lands on 4.20, but linux-firmware.git takes
4 weeks to pull the firmware the 4.20 will have the fw support, but
only 4.21 will have it fully supported with initrd installation etc.

So, if in few months from now OSVs decide to free their distro on 4.20
they will have to remember to backport this patch or force the firmware
to their initrd. But for sure by the time that OSVs get it the image
itself will be already on linux-firmware.git

And in unlikely case that it took months and months and firmware is not there
yet causing the bad messages for OSVs than the issue is easily fixed on
linux-firmware.git side.

Or they pull from drm-firmware or they help us convincing linux-firmware.git
to accept the pull.

> 
> Anusha 
> >Thanks,
> >Rodrigo.
> >
> >>
> >> [1] https://cgit.freedesktop.org/drm/drm-firmware/
> >> [2]
> >> https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmwar
> >> e.git
> >>
> >> > ---
> >> >  drivers/gpu/drm/i915/intel_csr.c        | 7 +++++++
> >> >  drivers/gpu/drm/i915/intel_runtime_pm.c | 3 +++
> >> >  2 files changed, 10 insertions(+)
> >> >
> >> > diff --git a/drivers/gpu/drm/i915/intel_csr.c
> >> > b/drivers/gpu/drm/i915/intel_csr.c
> >> > index 1ec4f09c61f6..6d9d47322405 100644
> >> > --- a/drivers/gpu/drm/i915/intel_csr.c
> >> > +++ b/drivers/gpu/drm/i915/intel_csr.c
> >> > @@ -34,6 +34,9 @@
> >> >   * low-power state and comes back to normal.
> >> >   */
> >> >
> >> > +#define I915_CSR_ICL "i915/icl_dmc_ver1_07.bin"
> >> > +#define ICL_CSR_VERSION_REQUIRED	CSR_VERSION(1, 7)
> >> > +
> >> >  #define I915_CSR_GLK "i915/glk_dmc_ver1_04.bin"
> >> >  MODULE_FIRMWARE(I915_CSR_GLK);
> >> >  #define GLK_CSR_VERSION_REQUIRED	CSR_VERSION(1, 4)
> >> > @@ -301,6 +304,8 @@ static uint32_t *parse_csr_fw(struct
> >drm_i915_private *dev_priv,
> >> >  	if (csr->fw_path == i915_modparams.dmc_firmware_path) {
> >> >  		/* Bypass version check for firmware override. */
> >> >  		required_version = csr->version;
> >> > +	} else if (IS_ICELAKE(dev_priv)) {
> >> > +		required_version = ICL_CSR_VERSION_REQUIRED;
> >> >  	} else if (IS_CANNONLAKE(dev_priv)) {
> >> >  		required_version = CNL_CSR_VERSION_REQUIRED;
> >> >  	} else if (IS_GEMINILAKE(dev_priv)) { @@ -458,6 +463,8 @@ void
> >> > intel_csr_ucode_init(struct drm_i915_private *dev_priv)
> >> >
> >> >  	if (i915_modparams.dmc_firmware_path)
> >> >  		csr->fw_path = i915_modparams.dmc_firmware_path;
> >> > +	else if (IS_ICELAKE(dev_priv))
> >> > +		csr->fw_path = I915_CSR_ICL;
> >> >  	else if (IS_CANNONLAKE(dev_priv))
> >> >  		csr->fw_path = I915_CSR_CNL;
> >> >  	else if (IS_GEMINILAKE(dev_priv))
> >> > diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> > b/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> > index 2852395125cd..bd7da068e813 100644
> >> > --- a/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> > +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
> >> > @@ -3563,6 +3563,9 @@ static void icl_display_core_init(struct
> >> > drm_i915_private *dev_priv,
> >> >
> >> >  	/* 7. Setup MBUS. */
> >> >  	icl_mbus_init(dev_priv);
> >> > +
> >> > +	if (resume && dev_priv->csr.dmc_payload)
> >> > +		intel_csr_load_program(dev_priv);
> >> >  }
> >> >
> >> >  static void icl_display_core_uninit(struct drm_i915_private
> >> > *dev_priv)
> >> > --
> >> > 2.17.1
> >> >
> >> _______________________________________________
> >> 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

  reply	other threads:[~2018-09-05 19:31 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-28  0:38 [PATCH 0/1] Load DMC v1.07 on Icelake Anusha Srivatsa
2018-08-28  0:38 ` [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake Anusha Srivatsa
2018-09-03 10:00   ` Imre Deak
2018-09-04  5:27     ` Rodrigo Vivi
2018-09-05  9:07       ` Joonas Lahtinen
2018-09-05 10:11         ` Imre Deak
2018-09-05 16:42         ` Rodrigo Vivi
2018-09-06  6:46           ` Jani Nikula
2018-09-06 17:35             ` Rodrigo Vivi
2018-09-07  7:47               ` Joonas Lahtinen
2018-09-07 18:26                 ` Srivatsa, Anusha
2018-09-13 21:22                   ` Rodrigo Vivi
2018-09-06  9:50           ` Joonas Lahtinen
2018-09-05 18:55       ` Srivatsa, Anusha
2018-09-05 19:31         ` Rodrigo Vivi [this message]
2018-09-05 19:38           ` Srivatsa, Anusha
2018-08-28  1:09 ` ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2) Patchwork
2018-08-28  5:48   ` Saarinen, Jani
2018-08-28  6:49     ` Yadav, Jyoti R
2018-08-31 15:20 ` ✓ Fi.CI.BAT: success " Patchwork
2018-08-31 22:16 ` ✓ Fi.CI.IGT: " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2018-08-14  4:45 [PATCH 0/1] Icelake DMC v1.07 Anusha Srivatsa
2018-08-14  4:45 ` [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake Anusha Srivatsa
2018-08-15 11:34   ` Imre Deak
2018-08-15 18:13     ` Srivatsa, Anusha

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=20180905193122.GE26612@intel.com \
    --to=rodrigo.vivi@intel.com \
    --cc=anusha.srivatsa@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=paulo.r.zanoni@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.