All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] Load DMC v1.07 on Icelake
@ 2018-08-28  0:38 Anusha Srivatsa
  2018-08-28  0:38 ` [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake Anusha Srivatsa
                   ` (3 more replies)
  0 siblings, 4 replies; 24+ messages in thread
From: Anusha Srivatsa @ 2018-08-28  0:38 UTC (permalink / raw)
  To: intel-gfx

Adding PR for CI to pick:
The following changes since commit fea76a04f25fd0a217c0d566ff5ff8f23ad3e648:

  amdgpu: sync up polaris10 firmware with 18.30 release (2018-08-25 15:43:50 -0400)

are available in the git repository at:

  git://anongit.freedesktop.org/git/drm/drm-firmware.git/ master

for you to fetch changes up to 50364020f96f8deb075830d9992899ba3a7babc7:

  Merge remote-tracking branch 'official/master' (2018-08-27 17:24:49 -0700)

----------------------------------------------------------------
Anusha Srivatsa (7):
      Merge remote-tracking branch 'official/master' into drm-firmware
      linux-firmware: Add GuC v11.98 for geminilake
      linux-firmware: Add HuC v3.00.2225 for geminilake
      firmware/icl/dmc: Add DMC v1.07 for Icelake.
      Revert "firmware/icl/dmc: Add DMC v1.05 for Icelake."
      Fix commit.
      Merge remote-tracking branch 'official/master'

 WHENCE                         |   9 +++++++++
 i915/glk_guc_ver11_98.bin      | Bin 0 -> 154240 bytes
 i915/glk_huc_ver03_00_2225.bin | Bin 0 -> 220032 bytes
 i915/icl_dmc_ver1_07.bin       | Bin 0 -> 25716 bytes
 4 files changed, 9 insertions(+)
 create mode 100644 i915/glk_guc_ver11_98.bin
 create mode 100644 i915/glk_huc_ver03_00_2225.bin
 create mode 100644 i915/icl_dmc_ver1_07.bin

Anusha Srivatsa (1):
  firmware/dmc/icl: load v1.07 on icelake.

 drivers/gpu/drm/i915/intel_csr.c        | 7 +++++++
 drivers/gpu/drm/i915/intel_runtime_pm.c | 3 +++
 2 files changed, 10 insertions(+)

-- 
2.17.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-08-28  0:38 [PATCH 0/1] Load DMC v1.07 on Icelake Anusha Srivatsa
@ 2018-08-28  0:38 ` Anusha Srivatsa
  2018-09-03 10:00   ` Imre Deak
  2018-08-28  1:09 ` ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2) Patchwork
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 24+ messages in thread
From: Anusha Srivatsa @ 2018-08-28  0:38 UTC (permalink / raw)
  To: intel-gfx; +Cc: Paulo Zanoni, Rodrigo Vivi

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>
---
 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

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2)
  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-08-28  1:09 ` Patchwork
  2018-08-28  5:48   ` Saarinen, Jani
  2018-08-31 15:20 ` ✓ Fi.CI.BAT: success " Patchwork
  2018-08-31 22:16 ` ✓ Fi.CI.IGT: " Patchwork
  3 siblings, 1 reply; 24+ messages in thread
From: Patchwork @ 2018-08-28  1:09 UTC (permalink / raw)
  To: Anusha Srivatsa; +Cc: intel-gfx

== Series Details ==

Series: Load DMC v1.07 on Icelake (rev2)
URL   : https://patchwork.freedesktop.org/series/48773/
State : failure

== Summary ==

= CI Bug Log - changes from CI_DRM_4713 -> Patchwork_10025 =

== Summary - FAILURE ==

  Serious unknown changes coming with Patchwork_10025 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_10025, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/48773/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_10025:

  === IGT changes ===

    ==== Possible regressions ====

    igt@drv_module_reload@basic-reload:
      {fi-icl-u}:         PASS -> DMESG-WARN +16

    igt@gem_exec_suspend@basic-s4-devices:
      fi-blb-e6850:       PASS -> INCOMPLETE

    
== Known issues ==

  Here are the changes found in Patchwork_10025 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_hangcheck:
      fi-skl-6700hq:      PASS -> DMESG-FAIL (fdo#106560, fdo#107174)

    igt@kms_chamelium@dp-edid-read:
      fi-kbl-7500u:       PASS -> FAIL (fdo#103841)

    igt@kms_frontbuffer_tracking@basic:
      {fi-byt-clapper}:   PASS -> FAIL (fdo#103167)

    igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b:
      {fi-byt-clapper}:   PASS -> FAIL (fdo#107362)

    {igt@kms_psr@primary_page_flip}:
      fi-cnl-psr:         PASS -> FAIL (fdo#107336)

    igt@pm_rpm@basic-pci-d3-state:
      fi-glk-dsi:         PASS -> INCOMPLETE (k.org#198133, fdo#103359)

    {igt@pm_rpm@module-reload}:
      fi-cnl-psr:         PASS -> WARN (fdo#107602)

    
    ==== Possible fixes ====

    igt@drv_selftest@live_hangcheck:
      fi-cfl-guc:         DMESG-FAIL -> PASS

    igt@kms_pipe_crc_basic@read-crc-pipe-b:
      {fi-byt-clapper}:   FAIL (fdo#107362) -> PASS

    igt@pm_rpm@basic-pci-d3-state:
      fi-skl-6770hq:      WARN -> PASS +1

    
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#107174 https://bugs.freedesktop.org/show_bug.cgi?id=107174
  fdo#107336 https://bugs.freedesktop.org/show_bug.cgi?id=107336
  fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
  fdo#107602 https://bugs.freedesktop.org/show_bug.cgi?id=107602
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (54 -> 49) ==

  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u 


== Build changes ==

    * Linux: CI_DRM_4713 -> Patchwork_10025

  CI_DRM_4713: 9261175f56a1b035b9db12e959ba2e8c756924a6 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4610: c40743d3fce5055682d31610519758dd7379c0f8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10025: 0b098dc6cfb59c4634719f51ea690ad133639f5e @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

0b098dc6cfb5 firmware/dmc/icl: load v1.07 on icelake.

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10025/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2)
  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
  0 siblings, 1 reply; 24+ messages in thread
From: Saarinen, Jani @ 2018-08-28  5:48 UTC (permalink / raw)
  To: intel-gfx, Srivatsa, Anusha, Deak, Imre

Hi,

> -----Original Message-----
> From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf
> Of Patchwork
> Sent: tiistai 28. elokuuta 2018 4.10
> To: Srivatsa, Anusha <anusha.srivatsa@intel.com>
> Cc: intel-gfx@lists.freedesktop.org
> Subject: [Intel-gfx] ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2)
> 
> == Series Details ==
> 
> Series: Load DMC v1.07 on Icelake (rev2)
> URL   : https://patchwork.freedesktop.org/series/48773/
> State : failure
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_4713 -> Patchwork_10025 =
> 
> == Summary - FAILURE ==
> 
>   Serious unknown changes coming with Patchwork_10025 absolutely need to
> be
>   verified manually.
> 
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_10025, please notify your bug team to allow them
>   to document this new failure mode, which will reduce false positives in CI.
> 
>   External URL:
> https://patchwork.freedesktop.org/api/1.0/series/48773/revisions/2/mbox/
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in
> Patchwork_10025:
> 
>   === IGT changes ===
> 
>     ==== Possible regressions ====
> 
>     igt@drv_module_reload@basic-reload:
>       {fi-icl-u}:         PASS -> DMESG-WARN +16
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10025/fi-icl-u/igt@drv_module_reload@basic-reload.html
Dmesg	
 [  395.430440] [drm:csr_load_work_fn [i915]] *ERROR* DMC firmware has wrong dmc header length (1 bytes)
[  395.430515] i915 0000:00:02.0: Failed to load DMC firmware i915/icl_dmc_ver1_07.bin. Disabling runtime power management.
[  395.430518] i915 0000:00:02.0: DMC firmware homepage: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
[  396.682262] Setting dangerous option reset - tainting kernel

Sound like issue...Imre? 
> 
>     igt@gem_exec_suspend@basic-s4-devices:
>       fi-blb-e6850:       PASS -> INCOMPLETE
> 
> 
> == Known issues ==
> 
>   Here are the changes found in Patchwork_10025 that come from known
> issues:
> 
>   === IGT changes ===
> 
>     ==== Issues hit ====
> 
>     igt@drv_selftest@live_hangcheck:
>       fi-skl-6700hq:      PASS -> DMESG-FAIL (fdo#106560, fdo#107174)
> 
>     igt@kms_chamelium@dp-edid-read:
>       fi-kbl-7500u:       PASS -> FAIL (fdo#103841)
> 
>     igt@kms_frontbuffer_tracking@basic:
>       {fi-byt-clapper}:   PASS -> FAIL (fdo#103167)
> 
>     igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b:
>       {fi-byt-clapper}:   PASS -> FAIL (fdo#107362)
> 
>     {igt@kms_psr@primary_page_flip}:
>       fi-cnl-psr:         PASS -> FAIL (fdo#107336)
> 
>     igt@pm_rpm@basic-pci-d3-state:
>       fi-glk-dsi:         PASS -> INCOMPLETE (k.org#198133, fdo#103359)
> 
>     {igt@pm_rpm@module-reload}:
>       fi-cnl-psr:         PASS -> WARN (fdo#107602)
> 
> 
>     ==== Possible fixes ====
> 
>     igt@drv_selftest@live_hangcheck:
>       fi-cfl-guc:         DMESG-FAIL -> PASS
> 
>     igt@kms_pipe_crc_basic@read-crc-pipe-b:
>       {fi-byt-clapper}:   FAIL (fdo#107362) -> PASS
> 
>     igt@pm_rpm@basic-pci-d3-state:
>       fi-skl-6770hq:      WARN -> PASS +1
> 
> 
>   {name}: This element is suppressed. This means it is ignored when
> computing
>           the status of the difference (SUCCESS, WARNING, or FAILURE).
> 
>   fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>   fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
>   fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
>   fdo#107174 https://bugs.freedesktop.org/show_bug.cgi?id=107174
>   fdo#107336 https://bugs.freedesktop.org/show_bug.cgi?id=107336
>   fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
>   fdo#107602 https://bugs.freedesktop.org/show_bug.cgi?id=107602
>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> 
> 
> == Participating hosts (54 -> 49) ==
> 
>   Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-
> 4200u
> 
> 
> == Build changes ==
> 
>     * Linux: CI_DRM_4713 -> Patchwork_10025
> 
>   CI_DRM_4713: 9261175f56a1b035b9db12e959ba2e8c756924a6 @
> git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4610: c40743d3fce5055682d31610519758dd7379c0f8 @
> git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_10025: 0b098dc6cfb59c4634719f51ea690ad133639f5e @
> git://anongit.freedesktop.org/gfx-ci/linux
> 
> 
> == Linux commits ==
> 
> 0b098dc6cfb5 firmware/dmc/icl: load v1.07 on icelake.
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-
> tip/Patchwork_10025/issues.html
> _______________________________________________
> 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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2)
  2018-08-28  5:48   ` Saarinen, Jani
@ 2018-08-28  6:49     ` Yadav, Jyoti R
  0 siblings, 0 replies; 24+ messages in thread
From: Yadav, Jyoti R @ 2018-08-28  6:49 UTC (permalink / raw)
  To: Saarinen, Jani, intel-gfx, Srivatsa, Anusha, Deak, Imre


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

Hi Jani,

I am already debugging this issue. Issue got reproduced when we are 
locally running the icl_dmc_ver1_07.bin on ICL HW.

We could not see this issue with previous FW version icl_dmc_ver1_01.bin 
file.

  Already in discussion with DMC FW folks. There are two FW stepping 
integrated in latest release.

1. Stepping { A, *} - > this stepping is mainly for A stepping ICL HW.

2. Stepping {*, *} -> this is the default stepping.

  If we try to load Steeping {A, *}, it is loading fine.

But getting issue with default stepping.

Also we need to add Stepping info for ICL also in driver code to fetch 
the correct FWfor particular HW Stepping.

Working on the same.

Regards

Jyoti


On 8/28/2018 11:18 AM, Saarinen, Jani wrote:
> Hi,
>
>> -----Original Message-----
>> From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf
>> Of Patchwork
>> Sent: tiistai 28. elokuuta 2018 4.10
>> To: Srivatsa, Anusha <anusha.srivatsa@intel.com>
>> Cc: intel-gfx@lists.freedesktop.org
>> Subject: [Intel-gfx] ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2)
>>
>> == Series Details ==
>>
>> Series: Load DMC v1.07 on Icelake (rev2)
>> URL   : https://patchwork.freedesktop.org/series/48773/
>> State : failure
>>
>> == Summary ==
>>
>> = CI Bug Log - changes from CI_DRM_4713 -> Patchwork_10025 =
>>
>> == Summary - FAILURE ==
>>
>>    Serious unknown changes coming with Patchwork_10025 absolutely need to
>> be
>>    verified manually.
>>
>>    If you think the reported changes have nothing to do with the changes
>>    introduced in Patchwork_10025, please notify your bug team to allow them
>>    to document this new failure mode, which will reduce false positives in CI.
>>
>>    External URL:
>> https://patchwork.freedesktop.org/api/1.0/series/48773/revisions/2/mbox/
>>
>> == Possible new issues ==
>>
>>    Here are the unknown changes that may have been introduced in
>> Patchwork_10025:
>>
>>    === IGT changes ===
>>
>>      ==== Possible regressions ====
>>
>>      igt@drv_module_reload@basic-reload:
>>        {fi-icl-u}:         PASS -> DMESG-WARN +16
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10025/fi-icl-u/igt@drv_module_reload@basic-reload.html
> Dmesg	
>   [  395.430440] [drm:csr_load_work_fn [i915]] *ERROR* DMC firmware has wrong dmc header length (1 bytes)
> [  395.430515] i915 0000:00:02.0: Failed to load DMC firmware i915/icl_dmc_ver1_07.bin. Disabling runtime power management.
> [  395.430518] i915 0000:00:02.0: DMC firmware homepage: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
> [  396.682262] Setting dangerous option reset - tainting kernel
>
> Sound like issue...Imre?
>>      igt@gem_exec_suspend@basic-s4-devices:
>>        fi-blb-e6850:       PASS -> INCOMPLETE
>>
>>
>> == Known issues ==
>>
>>    Here are the changes found in Patchwork_10025 that come from known
>> issues:
>>
>>    === IGT changes ===
>>
>>      ==== Issues hit ====
>>
>>      igt@drv_selftest@live_hangcheck:
>>        fi-skl-6700hq:      PASS -> DMESG-FAIL (fdo#106560, fdo#107174)
>>
>>      igt@kms_chamelium@dp-edid-read:
>>        fi-kbl-7500u:       PASS -> FAIL (fdo#103841)
>>
>>      igt@kms_frontbuffer_tracking@basic:
>>        {fi-byt-clapper}:   PASS -> FAIL (fdo#103167)
>>
>>      igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b:
>>        {fi-byt-clapper}:   PASS -> FAIL (fdo#107362)
>>
>>      {igt@kms_psr@primary_page_flip}:
>>        fi-cnl-psr:         PASS -> FAIL (fdo#107336)
>>
>>      igt@pm_rpm@basic-pci-d3-state:
>>        fi-glk-dsi:         PASS -> INCOMPLETE (k.org#198133, fdo#103359)
>>
>>      {igt@pm_rpm@module-reload}:
>>        fi-cnl-psr:         PASS -> WARN (fdo#107602)
>>
>>
>>      ==== Possible fixes ====
>>
>>      igt@drv_selftest@live_hangcheck:
>>        fi-cfl-guc:         DMESG-FAIL -> PASS
>>
>>      igt@kms_pipe_crc_basic@read-crc-pipe-b:
>>        {fi-byt-clapper}:   FAIL (fdo#107362) -> PASS
>>
>>      igt@pm_rpm@basic-pci-d3-state:
>>        fi-skl-6770hq:      WARN -> PASS +1
>>
>>
>>    {name}: This element is suppressed. This means it is ignored when
>> computing
>>            the status of the difference (SUCCESS, WARNING, or FAILURE).
>>
>>    fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
>>    fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>>    fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
>>    fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
>>    fdo#107174 https://bugs.freedesktop.org/show_bug.cgi?id=107174
>>    fdo#107336 https://bugs.freedesktop.org/show_bug.cgi?id=107336
>>    fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
>>    fdo#107602 https://bugs.freedesktop.org/show_bug.cgi?id=107602
>>    k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
>>
>>
>> == Participating hosts (54 -> 49) ==
>>
>>    Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-
>> 4200u
>>
>>
>> == Build changes ==
>>
>>      * Linux: CI_DRM_4713 -> Patchwork_10025
>>
>>    CI_DRM_4713: 9261175f56a1b035b9db12e959ba2e8c756924a6 @
>> git://anongit.freedesktop.org/gfx-ci/linux
>>    IGT_4610: c40743d3fce5055682d31610519758dd7379c0f8 @
>> git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>>    Patchwork_10025: 0b098dc6cfb59c4634719f51ea690ad133639f5e @
>> git://anongit.freedesktop.org/gfx-ci/linux
>>
>>
>> == Linux commits ==
>>
>> 0b098dc6cfb5 firmware/dmc/icl: load v1.07 on icelake.
>>
>> == Logs ==
>>
>> For more details see: https://intel-gfx-ci.01.org/tree/drm-
>> tip/Patchwork_10025/issues.html
>> _______________________________________________
>> 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


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

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

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* ✓ Fi.CI.BAT: success for Load DMC v1.07 on Icelake (rev2)
  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-08-28  1:09 ` ✗ Fi.CI.BAT: failure for Load DMC v1.07 on Icelake (rev2) Patchwork
@ 2018-08-31 15:20 ` Patchwork
  2018-08-31 22:16 ` ✓ Fi.CI.IGT: " Patchwork
  3 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2018-08-31 15:20 UTC (permalink / raw)
  To: Srivatsa, Anusha; +Cc: intel-gfx

== Series Details ==

Series: Load DMC v1.07 on Icelake (rev2)
URL   : https://patchwork.freedesktop.org/series/48773/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4749 -> Patchwork_10060 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_10060 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_10060, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/48773/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_10060:

  === IGT changes ===

    ==== Warnings ====

    igt@pm_rpm@basic-rte:
      fi-icl-u:           SKIP -> PASS +2

    {igt@pm_rpm@module-reload}:
      fi-hsw-4770r:       PASS -> SKIP

    
== Known issues ==

  Here are the changes found in Patchwork_10060 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    {igt@amdgpu/amd_prime@i915-to-amd}:
      fi-bxt-j4205:       SKIP -> INCOMPLETE (fdo#103927)

    igt@drv_module_reload@basic-reload-inject:
      fi-hsw-4770r:       PASS -> DMESG-WARN (fdo#107425)

    igt@drv_selftest@live_coherency:
      fi-gdg-551:         PASS -> DMESG-FAIL (fdo#107164)

    igt@gem_exec_suspend@basic-s3:
      {fi-kbl-soraka}:    NOTRUN -> INCOMPLETE (fdo#107556, fdo#107774)

    igt@kms_frontbuffer_tracking@basic:
      fi-hsw-peppy:       PASS -> DMESG-WARN (fdo#102614)

    {igt@pm_rpm@module-reload}:
      fi-cnl-psr:         PASS -> WARN (fdo#107602, fdo#107708)
      fi-bxt-j4205:       PASS -> DMESG-FAIL (fdo#107712)

    
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
  fdo#107425 https://bugs.freedesktop.org/show_bug.cgi?id=107425
  fdo#107556 https://bugs.freedesktop.org/show_bug.cgi?id=107556
  fdo#107602 https://bugs.freedesktop.org/show_bug.cgi?id=107602
  fdo#107708 https://bugs.freedesktop.org/show_bug.cgi?id=107708
  fdo#107712 https://bugs.freedesktop.org/show_bug.cgi?id=107712
  fdo#107774 https://bugs.freedesktop.org/show_bug.cgi?id=107774


== Participating hosts (52 -> 48) ==

  Additional (1): fi-kbl-soraka 
  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u 


== Build changes ==

    * Linux: CI_DRM_4749 -> Patchwork_10060

  CI_DRM_4749: 4a46c18fad0de38a78b4b0c848892de494324a17 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4616: 5800e46c6f851c370c944a7cb169e99657239f8d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10060: 66f1af546312a6716f0abb2017145bba52c032ff @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

66f1af546312 firmware/dmc/icl: load v1.07 on icelake.

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10060/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* ✓ Fi.CI.IGT: success for Load DMC v1.07 on Icelake (rev2)
  2018-08-28  0:38 [PATCH 0/1] Load DMC v1.07 on Icelake Anusha Srivatsa
                   ` (2 preceding siblings ...)
  2018-08-31 15:20 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2018-08-31 22:16 ` Patchwork
  3 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2018-08-31 22:16 UTC (permalink / raw)
  To: Srivatsa, Anusha; +Cc: intel-gfx

== Series Details ==

Series: Load DMC v1.07 on Icelake (rev2)
URL   : https://patchwork.freedesktop.org/series/48773/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4749_full -> Patchwork_10060_full =

== Summary - SUCCESS ==

  No regressions found.

  

== Known issues ==

  Here are the changes found in Patchwork_10060_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_suspend@shrink:
      shard-hsw:          PASS -> INCOMPLETE (fdo#106886, fdo#103540)
      shard-kbl:          PASS -> INCOMPLETE (fdo#103665, fdo#106886)

    igt@gem_exec_await@wide-contexts:
      shard-glk:          PASS -> FAIL (fdo#105900)

    igt@kms_cursor_crc@cursor-128x128-suspend:
      shard-apl:          PASS -> FAIL (fdo#103232, fdo#103191, fdo#104645)

    igt@kms_pipe_crc_basic@hang-read-crc-pipe-a:
      shard-apl:          PASS -> DMESG-WARN (fdo#105602, fdo#103558) +1

    igt@kms_setmode@basic:
      shard-apl:          PASS -> FAIL (fdo#99912)

    
    ==== Possible fixes ====

    igt@gem_exec_big:
      shard-hsw:          INCOMPLETE (fdo#103540) -> PASS

    igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
      shard-glk:          FAIL (fdo#104873) -> PASS

    igt@kms_flip@flip-vs-expired-vblank:
      shard-glk:          FAIL (fdo#105363, fdo#102887) -> PASS

    
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103558 https://bugs.freedesktop.org/show_bug.cgi?id=103558
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#104645 https://bugs.freedesktop.org/show_bug.cgi?id=104645
  fdo#104873 https://bugs.freedesktop.org/show_bug.cgi?id=104873
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105602 https://bugs.freedesktop.org/show_bug.cgi?id=105602
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 5) ==

  Missing    (1): pig-snb-2600 


== Build changes ==

    * Linux: CI_DRM_4749 -> Patchwork_10060

  CI_DRM_4749: 4a46c18fad0de38a78b4b0c848892de494324a17 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4616: 5800e46c6f851c370c944a7cb169e99657239f8d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10060: 66f1af546312a6716f0abb2017145bba52c032ff @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10060/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  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
  0 siblings, 1 reply; 24+ messages in thread
From: Imre Deak @ 2018-09-03 10:00 UTC (permalink / raw)
  To: Anusha Srivatsa, Jani Nikula; +Cc: intel-gfx, Paulo Zanoni, Rodrigo Vivi

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]?

[1] https://cgit.freedesktop.org/drm/drm-firmware/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-03 10:00   ` Imre Deak
@ 2018-09-04  5:27     ` Rodrigo Vivi
  2018-09-05  9:07       ` Joonas Lahtinen
  2018-09-05 18:55       ` Srivatsa, Anusha
  0 siblings, 2 replies; 24+ messages in thread
From: Rodrigo Vivi @ 2018-09-04  5:27 UTC (permalink / raw)
  To: Imre Deak; +Cc: Jani Nikula, intel-gfx, Paulo Zanoni

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.

Thanks,
Rodrigo.

> 
> [1] https://cgit.freedesktop.org/drm/drm-firmware/
> [2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  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-05 18:55       ` Srivatsa, Anusha
  1 sibling, 2 replies; 24+ messages in thread
From: Joonas Lahtinen @ 2018-09-05  9:07 UTC (permalink / raw)
  To: Imre Deak, Rodrigo Vivi; +Cc: Jani Nikula, intel-gfx, Paulo Zanoni

Quoting Rodrigo Vivi (2018-09-04 08:27:14)
> 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.

Was not the decision that we only gate the MODULE_FIRMWARE line until
the firmware is in linux-firmware.git?

So it should be no harm to support loading firmwares that are available
from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
would trigger false positives for distro packagers.

Regards, Joonas

> 
> Thanks,
> Rodrigo.
> 
> > 
> > [1] https://cgit.freedesktop.org/drm/drm-firmware/
> > [2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-05  9:07       ` Joonas Lahtinen
@ 2018-09-05 10:11         ` Imre Deak
  2018-09-05 16:42         ` Rodrigo Vivi
  1 sibling, 0 replies; 24+ messages in thread
From: Imre Deak @ 2018-09-05 10:11 UTC (permalink / raw)
  To: Joonas Lahtinen; +Cc: Jani Nikula, intel-gfx, Paulo Zanoni, Rodrigo Vivi

On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> Quoting Rodrigo Vivi (2018-09-04 08:27:14)
> > 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.
> 
> Was not the decision that we only gate the MODULE_FIRMWARE line until
> the firmware is in linux-firmware.git?
> 
> So it should be no harm to support loading firmwares that are available
> from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
> would trigger false positives for distro packagers.

Ok, makes sense. I missed the lack of MODULE_FIRMWARE line during
my review:/ but that's ok then, we should add that later enabling DMC
already now in CI.

Thanks,
Imre

> 
> Regards, Joonas
> 
> > 
> > Thanks,
> > Rodrigo.
> > 
> > > 
> > > [1] https://cgit.freedesktop.org/drm/drm-firmware/
> > > [2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  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  9:50           ` Joonas Lahtinen
  1 sibling, 2 replies; 24+ messages in thread
From: Rodrigo Vivi @ 2018-09-05 16:42 UTC (permalink / raw)
  To: Joonas Lahtinen; +Cc: Jani Nikula, intel-gfx, Paulo Zanoni

On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> Quoting Rodrigo Vivi (2018-09-04 08:27:14)
> > 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.
> 
> Was not the decision that we only gate the MODULE_FIRMWARE line until
> the firmware is in linux-firmware.git?
> 
> So it should be no harm to support loading firmwares that are available
> from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
> would trigger false positives for distro packagers.

As far as I can remember we had agreed on changing this and adding
MODULE_FIRMWARE from the beginning.

1. the process gets complex
2. we forgot many times to add it afterwards
3. module_firmware changes nothing... only the fact that initrd generation
   wont complain if firmware is not there yet.
4. The old issue was that patches were merged without the pull request
   being sent... We fixed that by only accepting patches after pull request
   is sent.
5. By the time that all lands to distros linux-firmware.git will have
the firmware because of 4.
6. We have now drm-firmware to mirror what official linux-firmware.git will
be in few weeks from now.

So I don't see a reason anymore why to keep with complicated process with
split MODULE_FIRMWARE.

Thanks,
Rodrigo.

> 
> Regards, Joonas
> 
> > 
> > Thanks,
> > Rodrigo.
> > 
> > > 
> > > [1] https://cgit.freedesktop.org/drm/drm-firmware/
> > > [2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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
> _______________________________________________
> 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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-04  5:27     ` Rodrigo Vivi
  2018-09-05  9:07       ` Joonas Lahtinen
@ 2018-09-05 18:55       ` Srivatsa, Anusha
  2018-09-05 19:31         ` Rodrigo Vivi
  1 sibling, 1 reply; 24+ messages in thread
From: Srivatsa, Anusha @ 2018-09-05 18:55 UTC (permalink / raw)
  To: Vivi, Rodrigo, Deak, Imre; +Cc: Nikula, Jani, intel-gfx, Zanoni, Paulo R



>-----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.

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

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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-05 18:55       ` Srivatsa, Anusha
@ 2018-09-05 19:31         ` Rodrigo Vivi
  2018-09-05 19:38           ` Srivatsa, Anusha
  0 siblings, 1 reply; 24+ messages in thread
From: Rodrigo Vivi @ 2018-09-05 19:31 UTC (permalink / raw)
  To: Srivatsa, Anusha; +Cc: Nikula, Jani, intel-gfx, Zanoni, Paulo R

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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-05 19:31         ` Rodrigo Vivi
@ 2018-09-05 19:38           ` Srivatsa, Anusha
  0 siblings, 0 replies; 24+ messages in thread
From: Srivatsa, Anusha @ 2018-09-05 19:38 UTC (permalink / raw)
  To: Vivi, Rodrigo; +Cc: Nikula, Jani, intel-gfx, Zanoni, Paulo R



>-----Original Message-----
>From: Vivi, Rodrigo
>Sent: Wednesday, September 5, 2018 12:31 PM
>To: Srivatsa, Anusha <anusha.srivatsa@intel.com>
>Cc: Deak, Imre <imre.deak@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 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.

Sure.

>>
>> 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.

That makes sense.

Anusha 
>>
>> Anusha
>> >Thanks,
>> >Rodrigo.
>> >
>> >>
>> >> [1] https://cgit.freedesktop.org/drm/drm-firmware/
>> >> [2]
>> >> https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firm
>> >> war
>> >> 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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-05 16:42         ` Rodrigo Vivi
@ 2018-09-06  6:46           ` Jani Nikula
  2018-09-06 17:35             ` Rodrigo Vivi
  2018-09-06  9:50           ` Joonas Lahtinen
  1 sibling, 1 reply; 24+ messages in thread
From: Jani Nikula @ 2018-09-06  6:46 UTC (permalink / raw)
  To: Rodrigo Vivi, Joonas Lahtinen; +Cc: intel-gfx, Paulo Zanoni

On Wed, 05 Sep 2018, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
> On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
>> Was not the decision that we only gate the MODULE_FIRMWARE line until
>> the firmware is in linux-firmware.git?
>> 
>> So it should be no harm to support loading firmwares that are available
>> from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
>> would trigger false positives for distro packagers.
>
> As far as I can remember we had agreed on changing this and adding
> MODULE_FIRMWARE from the beginning.
>
> 1. the process gets complex
> 2. we forgot many times to add it afterwards
> 3. module_firmware changes nothing... only the fact that initrd generation
>    wont complain if firmware is not there yet.
> 4. The old issue was that patches were merged without the pull request
>    being sent... We fixed that by only accepting patches after pull request
>    is sent.
> 5. By the time that all lands to distros linux-firmware.git will have
> the firmware because of 4.
> 6. We have now drm-firmware to mirror what official linux-firmware.git will
> be in few weeks from now.
>
> So I don't see a reason anymore why to keep with complicated process with
> split MODULE_FIRMWARE.

I've changed my mind, I agree with *not* splitting MODULE_FIRMWARE
changes to another patch anymore.

However, with that I think we need to redefine when we can add
request_firmware and MODULE_FIRMWARE for a specific firmware
blob. Here's my proposal.

- Before merging a patch adding or changing a firmware blob in dinq,
  said blob must be publicly available at a known location, and no known
  blockers for linux-firmware.git merge may exist.

- We take care to get the blob to linux-firmware.git before the changes
  hit Linus' -rc1 after the merge window. With our -rc5 feature
  deadline, this should give us at least 4-5 weeks to get the blob
  merged to linux-firmware.git.

- It follows that linux-next and drm-tip may contain MODULE_FIRMWARE for
  blobs that don't exist in linux-firmware.git.

BR,
Jani.

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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-05 16:42         ` Rodrigo Vivi
  2018-09-06  6:46           ` Jani Nikula
@ 2018-09-06  9:50           ` Joonas Lahtinen
  1 sibling, 0 replies; 24+ messages in thread
From: Joonas Lahtinen @ 2018-09-06  9:50 UTC (permalink / raw)
  To: Rodrigo Vivi; +Cc: Jani Nikula, intel-gfx, Paulo Zanoni

Quoting Rodrigo Vivi (2018-09-05 19:42:28)
> On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> > Quoting Rodrigo Vivi (2018-09-04 08:27:14)
> > > 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.
> > 
> > Was not the decision that we only gate the MODULE_FIRMWARE line until
> > the firmware is in linux-firmware.git?
> > 
> > So it should be no harm to support loading firmwares that are available
> > from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
> > would trigger false positives for distro packagers.
> 
> As far as I can remember we had agreed on changing this and adding
> MODULE_FIRMWARE from the beginning.

Is there an e-mail about it? I must have missed such discussion.

> 1. the process gets complex
> 2. we forgot many times to add it afterwards
> 3. module_firmware changes nothing... only the fact that initrd generation
>    wont complain if firmware is not there yet.

Yes, but isn't this the only thing we've got complaints of? At least
I've not noticed distros complaining about not having the MODULE_FIRMWARE
(which would omit the firmware from initrd).

So I'd rather stick to the process previously decided on. Assuming pull
request will be accepted in X days is always just an assumption.

Regards, Joonas

> 4. The old issue was that patches were merged without the pull request
>    being sent... We fixed that by only accepting patches after pull request
>    is sent.
> 5. By the time that all lands to distros linux-firmware.git will have
> the firmware because of 4.
> 6. We have now drm-firmware to mirror what official linux-firmware.git will
> be in few weeks from now.
>
> So I don't see a reason anymore why to keep with complicated process with
> split MODULE_FIRMWARE.
> 
> Thanks,
> Rodrigo.
> 
> > 
> > Regards, Joonas
> > 
> > > 
> > > Thanks,
> > > Rodrigo.
> > > 
> > > > 
> > > > [1] https://cgit.freedesktop.org/drm/drm-firmware/
> > > > [2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.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
> > _______________________________________________
> > 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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-06  6:46           ` Jani Nikula
@ 2018-09-06 17:35             ` Rodrigo Vivi
  2018-09-07  7:47               ` Joonas Lahtinen
  0 siblings, 1 reply; 24+ messages in thread
From: Rodrigo Vivi @ 2018-09-06 17:35 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-gfx, Paulo Zanoni

On Thu, Sep 06, 2018 at 09:46:13AM +0300, Jani Nikula wrote:
> On Wed, 05 Sep 2018, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
> > On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> >> Was not the decision that we only gate the MODULE_FIRMWARE line until
> >> the firmware is in linux-firmware.git?
> >> 
> >> So it should be no harm to support loading firmwares that are available
> >> from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
> >> would trigger false positives for distro packagers.
> >
> > As far as I can remember we had agreed on changing this and adding
> > MODULE_FIRMWARE from the beginning.
> >
> > 1. the process gets complex
> > 2. we forgot many times to add it afterwards
> > 3. module_firmware changes nothing... only the fact that initrd generation
> >    wont complain if firmware is not there yet.
> > 4. The old issue was that patches were merged without the pull request
> >    being sent... We fixed that by only accepting patches after pull request
> >    is sent.
> > 5. By the time that all lands to distros linux-firmware.git will have
> > the firmware because of 4.
> > 6. We have now drm-firmware to mirror what official linux-firmware.git will
> > be in few weeks from now.
> >
> > So I don't see a reason anymore why to keep with complicated process with
> > split MODULE_FIRMWARE.
> 
> I've changed my mind, I agree with *not* splitting MODULE_FIRMWARE
> changes to another patch anymore.
> 
> However, with that I think we need to redefine when we can add
> request_firmware and MODULE_FIRMWARE for a specific firmware
> blob. Here's my proposal.
> 
> - Before merging a patch adding or changing a firmware blob in dinq,
>   said blob must be publicly available at a known location, and no known
>   blockers for linux-firmware.git merge may exist.
> 
> - We take care to get the blob to linux-firmware.git before the changes
>   hit Linus' -rc1 after the merge window. With our -rc5 feature
>   deadline, this should give us at least 4-5 weeks to get the blob
>   merged to linux-firmware.git.
> 
> - It follows that linux-next and drm-tip may contain MODULE_FIRMWARE for
>   blobs that don't exist in linux-firmware.git.

Agreed. And we should document this somewhere.

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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-06 17:35             ` Rodrigo Vivi
@ 2018-09-07  7:47               ` Joonas Lahtinen
  2018-09-07 18:26                 ` Srivatsa, Anusha
  0 siblings, 1 reply; 24+ messages in thread
From: Joonas Lahtinen @ 2018-09-07  7:47 UTC (permalink / raw)
  To: Jani Nikula, Rodrigo Vivi; +Cc: intel-gfx, Paulo Zanoni

Quoting Rodrigo Vivi (2018-09-06 20:35:19)
> On Thu, Sep 06, 2018 at 09:46:13AM +0300, Jani Nikula wrote:
> > On Wed, 05 Sep 2018, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
> > > On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> > >> Was not the decision that we only gate the MODULE_FIRMWARE line until
> > >> the firmware is in linux-firmware.git?
> > >> 
> > >> So it should be no harm to support loading firmwares that are available
> > >> from drm-firmware.git as long as we don't add the MODULE_FIRMWARE which
> > >> would trigger false positives for distro packagers.
> > >
> > > As far as I can remember we had agreed on changing this and adding
> > > MODULE_FIRMWARE from the beginning.
> > >
> > > 1. the process gets complex
> > > 2. we forgot many times to add it afterwards
> > > 3. module_firmware changes nothing... only the fact that initrd generation
> > >    wont complain if firmware is not there yet.
> > > 4. The old issue was that patches were merged without the pull request
> > >    being sent... We fixed that by only accepting patches after pull request
> > >    is sent.
> > > 5. By the time that all lands to distros linux-firmware.git will have
> > > the firmware because of 4.
> > > 6. We have now drm-firmware to mirror what official linux-firmware.git will
> > > be in few weeks from now.
> > >
> > > So I don't see a reason anymore why to keep with complicated process with
> > > split MODULE_FIRMWARE.
> > 
> > I've changed my mind, I agree with *not* splitting MODULE_FIRMWARE
> > changes to another patch anymore.
> > 
> > However, with that I think we need to redefine when we can add
> > request_firmware and MODULE_FIRMWARE for a specific firmware
> > blob. Here's my proposal.
> > 
> > - Before merging a patch adding or changing a firmware blob in dinq,
> >   said blob must be publicly available at a known location, and no known
> >   blockers for linux-firmware.git merge may exist.
> > 
> > - We take care to get the blob to linux-firmware.git before the changes
> >   hit Linus' -rc1 after the merge window. With our -rc5 feature
> >   deadline, this should give us at least 4-5 weeks to get the blob
> >   merged to linux-firmware.git.
> > 
> > - It follows that linux-next and drm-tip may contain MODULE_FIRMWARE for
> >   blobs that don't exist in linux-firmware.git.
> 
> Agreed. And we should document this somewhere.

Well, there are still quite a few conditionals included, if you ask me.

But if you see the MODULE_FIRMWARE as a separate patch as such a burden
that we should make the assumptions, I can live with it. At least I know
who to call in case there was one too many conditional and we get a
distro complaint again :)

Regards, Joonas

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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-07  7:47               ` Joonas Lahtinen
@ 2018-09-07 18:26                 ` Srivatsa, Anusha
  2018-09-13 21:22                   ` Rodrigo Vivi
  0 siblings, 1 reply; 24+ messages in thread
From: Srivatsa, Anusha @ 2018-09-07 18:26 UTC (permalink / raw)
  To: Joonas Lahtinen, Nikula, Jani, Vivi, Rodrigo; +Cc: intel-gfx, Zanoni, Paulo R



>-----Original Message-----
>From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf Of
>Joonas Lahtinen
>Sent: Friday, September 7, 2018 12:47 AM
>To: Nikula, Jani <jani.nikula@intel.com>; Vivi, Rodrigo <rodrigo.vivi@intel.com>
>Cc: 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.
>
>Quoting Rodrigo Vivi (2018-09-06 20:35:19)
>> On Thu, Sep 06, 2018 at 09:46:13AM +0300, Jani Nikula wrote:
>> > On Wed, 05 Sep 2018, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
>> > > On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
>> > >> Was not the decision that we only gate the MODULE_FIRMWARE line
>> > >> until the firmware is in linux-firmware.git?
>> > >>
>> > >> So it should be no harm to support loading firmwares that are
>> > >> available from drm-firmware.git as long as we don't add the
>> > >> MODULE_FIRMWARE which would trigger false positives for distro
>packagers.
>> > >
>> > > As far as I can remember we had agreed on changing this and adding
>> > > MODULE_FIRMWARE from the beginning.
>> > >
>> > > 1. the process gets complex
>> > > 2. we forgot many times to add it afterwards 3. module_firmware
>> > > changes nothing... only the fact that initrd generation
>> > >    wont complain if firmware is not there yet.
>> > > 4. The old issue was that patches were merged without the pull request
>> > >    being sent... We fixed that by only accepting patches after pull request
>> > >    is sent.
>> > > 5. By the time that all lands to distros linux-firmware.git will
>> > > have the firmware because of 4.
>> > > 6. We have now drm-firmware to mirror what official
>> > > linux-firmware.git will be in few weeks from now.
>> > >
>> > > So I don't see a reason anymore why to keep with complicated
>> > > process with split MODULE_FIRMWARE.
>> >
>> > I've changed my mind, I agree with *not* splitting MODULE_FIRMWARE
>> > changes to another patch anymore.
>> >
>> > However, with that I think we need to redefine when we can add
>> > request_firmware and MODULE_FIRMWARE for a specific firmware blob.
>> > Here's my proposal.
>> >
>> > - Before merging a patch adding or changing a firmware blob in dinq,
>> >   said blob must be publicly available at a known location, and no known
>> >   blockers for linux-firmware.git merge may exist.
>> >
>> > - We take care to get the blob to linux-firmware.git before the changes
>> >   hit Linus' -rc1 after the merge window. With our -rc5 feature
>> >   deadline, this should give us at least 4-5 weeks to get the blob
>> >   merged to linux-firmware.git.
>> >
>> > - It follows that linux-next and drm-tip may contain MODULE_FIRMWARE for
>> >   blobs that don't exist in linux-firmware.git.
>>
>> Agreed. And we should document this somewhere.
>
>Well, there are still quite a few conditionals included, if you ask me.
>
>But if you see the MODULE_FIRMWARE as a separate patch as such a burden that
>we should make the assumptions, I can live with it. At least I know who to call in
>case there was one too many conditional and we get a distro complaint again :)

Lets hope we wont have anyone complaining.

Regarding documenting this, Rodrigo, is wiki the place for it? 
With regard to this patch in particular, shall I send a new version of ICL patch with MODULE_FIRMWARE in it? 
Thoughts?

Thanks,
Anusha 
>Regards, Joonas
>
>>
>> >
>> > BR,
>> > Jani.
>> >
>> > --
>> > Jani Nikula, Intel Open Source Graphics Center
>_______________________________________________
>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

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-09-07 18:26                 ` Srivatsa, Anusha
@ 2018-09-13 21:22                   ` Rodrigo Vivi
  0 siblings, 0 replies; 24+ messages in thread
From: Rodrigo Vivi @ 2018-09-13 21:22 UTC (permalink / raw)
  To: Srivatsa, Anusha; +Cc: Nikula, Jani, intel-gfx, Zanoni, Paulo R

On Fri, Sep 07, 2018 at 06:26:32PM +0000, Srivatsa, Anusha wrote:
> 
> 
> >-----Original Message-----
> >From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf Of
> >Joonas Lahtinen
> >Sent: Friday, September 7, 2018 12:47 AM
> >To: Nikula, Jani <jani.nikula@intel.com>; Vivi, Rodrigo <rodrigo.vivi@intel.com>
> >Cc: 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.
> >
> >Quoting Rodrigo Vivi (2018-09-06 20:35:19)
> >> On Thu, Sep 06, 2018 at 09:46:13AM +0300, Jani Nikula wrote:
> >> > On Wed, 05 Sep 2018, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
> >> > > On Wed, Sep 05, 2018 at 12:07:43PM +0300, Joonas Lahtinen wrote:
> >> > >> Was not the decision that we only gate the MODULE_FIRMWARE line
> >> > >> until the firmware is in linux-firmware.git?
> >> > >>
> >> > >> So it should be no harm to support loading firmwares that are
> >> > >> available from drm-firmware.git as long as we don't add the
> >> > >> MODULE_FIRMWARE which would trigger false positives for distro
> >packagers.
> >> > >
> >> > > As far as I can remember we had agreed on changing this and adding
> >> > > MODULE_FIRMWARE from the beginning.
> >> > >
> >> > > 1. the process gets complex
> >> > > 2. we forgot many times to add it afterwards 3. module_firmware
> >> > > changes nothing... only the fact that initrd generation
> >> > >    wont complain if firmware is not there yet.
> >> > > 4. The old issue was that patches were merged without the pull request
> >> > >    being sent... We fixed that by only accepting patches after pull request
> >> > >    is sent.
> >> > > 5. By the time that all lands to distros linux-firmware.git will
> >> > > have the firmware because of 4.
> >> > > 6. We have now drm-firmware to mirror what official
> >> > > linux-firmware.git will be in few weeks from now.
> >> > >
> >> > > So I don't see a reason anymore why to keep with complicated
> >> > > process with split MODULE_FIRMWARE.
> >> >
> >> > I've changed my mind, I agree with *not* splitting MODULE_FIRMWARE
> >> > changes to another patch anymore.
> >> >
> >> > However, with that I think we need to redefine when we can add
> >> > request_firmware and MODULE_FIRMWARE for a specific firmware blob.
> >> > Here's my proposal.
> >> >
> >> > - Before merging a patch adding or changing a firmware blob in dinq,
> >> >   said blob must be publicly available at a known location, and no known
> >> >   blockers for linux-firmware.git merge may exist.
> >> >
> >> > - We take care to get the blob to linux-firmware.git before the changes
> >> >   hit Linus' -rc1 after the merge window. With our -rc5 feature
> >> >   deadline, this should give us at least 4-5 weeks to get the blob
> >> >   merged to linux-firmware.git.
> >> >
> >> > - It follows that linux-next and drm-tip may contain MODULE_FIRMWARE for
> >> >   blobs that don't exist in linux-firmware.git.
> >>
> >> Agreed. And we should document this somewhere.
> >
> >Well, there are still quite a few conditionals included, if you ask me.
> >
> >But if you see the MODULE_FIRMWARE as a separate patch as such a burden that
> >we should make the assumptions, I can live with it. At least I know who to call in
> >case there was one too many conditional and we get a distro complaint again :)
> 
> Lets hope we wont have anyone complaining.
> 
> Regarding documenting this, Rodrigo, is wiki the place for it? 

I'm not sure where is the best place for this currently.

So for now maybe use the internal one... Unless someone has a better idea.

> With regard to this patch in particular, shall I send a new version of ICL patch with MODULE_FIRMWARE in it? 
> Thoughts?

Let's do this to move with dmc on ICL, but for future fw patches
let's do all in one patch ;)

I just pushed this patch to dinq. Thanks for patch and review.

Now please send a separated one for MODULE_FIRMWARE.


Thanks,
Rodrigo.

> 
> Thanks,
> Anusha 
> >Regards, Joonas
> >
> >>
> >> >
> >> > BR,
> >> > Jani.
> >> >
> >> > --
> >> > Jani Nikula, Intel Open Source Graphics Center
> >_______________________________________________
> >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
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-08-15 11:34   ` Imre Deak
@ 2018-08-15 18:13     ` Srivatsa, Anusha
  0 siblings, 0 replies; 24+ messages in thread
From: Srivatsa, Anusha @ 2018-08-15 18:13 UTC (permalink / raw)
  To: Deak, Imre; +Cc: intel-gfx, Zanoni, Paulo R, Vivi, Rodrigo



>-----Original Message-----
>From: Deak, Imre
>Sent: Wednesday, August 15, 2018 4:35 AM
>To: Srivatsa, Anusha <anusha.srivatsa@intel.com>
>Cc: intel-gfx@lists.freedesktop.org; Yadav, Jyoti R <jyoti.r.yadav@intel.com>;
>Vivi, Rodrigo <rodrigo.vivi@intel.com>; Zanoni, Paulo R
><paulo.r.zanoni@intel.com>
>Subject: Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
>
>On Mon, Aug 13, 2018 at 11:45:32PM -0500, 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)
>>
>> 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>
>> ---
>>  drivers/gpu/drm/i915/i915_pci.c         | 2 +-
>>  drivers/gpu/drm/i915/intel_csr.c        | 7 +++++++
>>  drivers/gpu/drm/i915/intel_runtime_pm.c | 3 +++
>>  3 files changed, 11 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_pci.c
>> b/drivers/gpu/drm/i915/i915_pci.c index e931b48369dd..bbd331f1d5d9
>> 100644
>> --- a/drivers/gpu/drm/i915/i915_pci.c
>> +++ b/drivers/gpu/drm/i915/i915_pci.c
>> @@ -600,7 +600,7 @@ static const struct intel_device_info
>intel_cannonlake_info = {
>>  	GEN10_FEATURES, \
>>  	GEN(11), \
>>  	.ddb_size = 2048, \
>> -	.has_csr = 0, \
>> +	.has_csr = 1, \
>
>The default is correct already, so it's enough not to reinit this field.
>Also could you send this one change separately after the following patch is
>merged:
>https://patchwork.freedesktop.org/patch/244656/
>
>That way we could see if not specifying the firmware doesn't break things. (This
>scenario is valid for a new platform.)
>
Sure. Thanks Imre.

Anusha 
>Thanks,
>Imre
>
>>  	.has_logical_ring_elsq = 1
>>
>>  static const struct intel_device_info intel_icelake_11_info = { diff
>> --git a/drivers/gpu/drm/i915/intel_csr.c
>> b/drivers/gpu/drm/i915/intel_csr.c
>> index cf9b600cca79..393d419afb91 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 e209edbc561d..7686f4d32533 100644
>> --- a/drivers/gpu/drm/i915/intel_runtime_pm.c
>> +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
>> @@ -3588,6 +3588,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.14.1
>>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  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
  0 siblings, 1 reply; 24+ messages in thread
From: Imre Deak @ 2018-08-15 11:34 UTC (permalink / raw)
  To: Anusha Srivatsa; +Cc: intel-gfx, Paulo Zanoni, Rodrigo Vivi

On Mon, Aug 13, 2018 at 11:45:32PM -0500, 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)
> 
> 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>
> ---
>  drivers/gpu/drm/i915/i915_pci.c         | 2 +-
>  drivers/gpu/drm/i915/intel_csr.c        | 7 +++++++
>  drivers/gpu/drm/i915/intel_runtime_pm.c | 3 +++
>  3 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
> index e931b48369dd..bbd331f1d5d9 100644
> --- a/drivers/gpu/drm/i915/i915_pci.c
> +++ b/drivers/gpu/drm/i915/i915_pci.c
> @@ -600,7 +600,7 @@ static const struct intel_device_info intel_cannonlake_info = {
>  	GEN10_FEATURES, \
>  	GEN(11), \
>  	.ddb_size = 2048, \
> -	.has_csr = 0, \
> +	.has_csr = 1, \

The default is correct already, so it's enough not to reinit this field.
Also could you send this one change separately after the following patch
is merged:
https://patchwork.freedesktop.org/patch/244656/

That way we could see if not specifying the firmware doesn't break
things. (This scenario is valid for a new platform.)

Thanks,
Imre

>  	.has_logical_ring_elsq = 1
>  
>  static const struct intel_device_info intel_icelake_11_info = {
> diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
> index cf9b600cca79..393d419afb91 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 e209edbc561d..7686f4d32533 100644
> --- a/drivers/gpu/drm/i915/intel_runtime_pm.c
> +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
> @@ -3588,6 +3588,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.14.1
> 
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH 1/1] firmware/dmc/icl: load v1.07 on icelake.
  2018-08-14  4:45 [PATCH 0/1] Icelake DMC v1.07 Anusha Srivatsa
@ 2018-08-14  4:45 ` Anusha Srivatsa
  2018-08-15 11:34   ` Imre Deak
  0 siblings, 1 reply; 24+ messages in thread
From: Anusha Srivatsa @ 2018-08-14  4:45 UTC (permalink / raw)
  To: intel-gfx; +Cc: Paulo Zanoni, Rodrigo Vivi

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)

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>
---
 drivers/gpu/drm/i915/i915_pci.c         | 2 +-
 drivers/gpu/drm/i915/intel_csr.c        | 7 +++++++
 drivers/gpu/drm/i915/intel_runtime_pm.c | 3 +++
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
index e931b48369dd..bbd331f1d5d9 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -600,7 +600,7 @@ static const struct intel_device_info intel_cannonlake_info = {
 	GEN10_FEATURES, \
 	GEN(11), \
 	.ddb_size = 2048, \
-	.has_csr = 0, \
+	.has_csr = 1, \
 	.has_logical_ring_elsq = 1
 
 static const struct intel_device_info intel_icelake_11_info = {
diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
index cf9b600cca79..393d419afb91 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 e209edbc561d..7686f4d32533 100644
--- a/drivers/gpu/drm/i915/intel_runtime_pm.c
+++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
@@ -3588,6 +3588,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.14.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2018-09-13 21:22 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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
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

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.