mbox

[M,PULL,00/19] drm/i915: Some fixes for Meteor Lake

Message ID 20230915110455.1058476-1-tjaalton@ubuntu.com
State New
Headers show

Pull-request

https://git.launchpad.net/~tjaalton/linux mtl-for-mantic

Message

Timo Aaltonen Sept. 15, 2023, 11:04 a.m. UTC
From: Timo Aaltonen <timo.aaltonen@canonical.com>


BugLink: https://bugs.launchpad.net/bugs/2032781
BugLink: https://bugs.launchpad.net/bugs/2029470

These are all in 6.6~rc, but one patch needed some minor formatting
changes to avoid more backports. They have also been in oem-6.5 for
a while, and MTL is still protected here by requiring force_probe.

Having that in mind, these should be safe to apply for Mantic.


The following changes since commit 238589d0f7b421aae18c5704dc931595019fa6c7:

  Linux 6.5.3 (2023-09-13 09:53:58 +0200)

are available in the Git repository at:

  https://git.launchpad.net/~tjaalton/linux mtl-for-mantic

for you to fetch changes up to fba589ec61ec476632536c465932b6fa34e46fe1:

  drm/i915/gt: Apply workaround 22016122933 correctly (2023-09-15 13:36:09 +0300)

----------------------------------------------------------------
Alan Previn (2):
      drm/i915/gsc: Fix intel_gsc_uc_fw_proxy_init_done with directed wakerefs
      drm/i915/selftest/gsc: Ensure GSC Proxy init completes before selftests

Chaitanya Kumar Borah (2):
      drm/i915/color: Upscale degamma values for MTL
      drm/i915/color: Downscale degamma lut values read from hardware

Daniele Ceraolo Spurio (5):
      drm/i915/gsc: fixes and updates for GSC memory allocation
      drm/i915/mtl/gsc: extract release and security versions from the gsc binary
      drm/i915/mtl/gsc: query the GSC FW for its compatibility version
      drm/i915/mtl/gsc: Add a gsc_info debugfs
      drm/i915/huc: check HuC and GuC version compatibility on MTL

Jonathan Cavitt (3):
      drm/i915/gt: Simplify shmem_create_from_object map_type selection
      drm/i915: Make i915_coherent_map_type GT-centric
      drm/i915/gt: Apply workaround 22016122933 correctly

Lee Shawn C (2):
      drm/i915/mtl: update DP 2.0 vswing table for C20 phy
      drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4

Nirmoy Das (2):
      drm/i915/gt: Do not use stolen on MTL
      drm/i915/display: Do not use stolen on MTL

Radhakrishna Sripada (1):
      drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL

Tejas Upadhyay (1):
      drm/i915/mtl: Update workaround 14018778641

Zhanjun Dong (1):
      drm/i915/mtl: Update cache coherency setting for context structure

 drivers/gpu/drm/i915/Makefile                             |   3 +-
 drivers/gpu/drm/i915/display/intel_bios.c                 |   3 +-
 drivers/gpu/drm/i915/display/intel_color.c                |  27 +++-
 drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c        |  28 +++-
 drivers/gpu/drm/i915/display/intel_fbdev.c                |   4 +-
 drivers/gpu/drm/i915/display/intel_hdcp_gsc.c             |   3 +-
 drivers/gpu/drm/i915/display/intel_overlay.c              |   5 +-
 drivers/gpu/drm/i915/gem/i915_gem_object.h                |   4 -
 drivers/gpu/drm/i915/gem/i915_gem_pages.c                 |  15 ---
 drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c     |  12 +-
 drivers/gpu/drm/i915/gt/intel_engine_pm.c                 |   2 +-
 drivers/gpu/drm/i915/gt/intel_gt.c                        |  18 ++-
 drivers/gpu/drm/i915/gt/intel_gt.h                        |  10 ++
 drivers/gpu/drm/i915/gt/intel_gtt.c                       |   4 +-
 drivers/gpu/drm/i915/gt/intel_lrc.c                       |  16 ++-
 drivers/gpu/drm/i915/gt/intel_ring.c                      |   3 +-
 drivers/gpu/drm/i915/gt/intel_workarounds.c               |   3 -
 drivers/gpu/drm/i915/gt/selftest_context.c                |   5 +-
 drivers/gpu/drm/i915/gt/selftest_hangcheck.c              |   4 +-
 drivers/gpu/drm/i915/gt/selftest_lrc.c                    |   6 +-
 drivers/gpu/drm/i915/gt/shmem_utils.c                     |   3 +-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_binary_headers.h     |  75 ++++++++++-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c                 | 341 +++++++++++++++++++++++++++++++++++++++++--------
 drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h                 |   5 +-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c                 | 139 ++++++++++++++++++--
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h                 |  21 +++
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c         |  39 ++++++
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h         |  14 ++
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h |   1 +
 drivers/gpu/drm/i915/gt/uc/intel_guc.c                    |  11 +-
 drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c                 |   4 -
 drivers/gpu/drm/i915/gt/uc/intel_huc.c                    |   6 +-
 drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c                 |  16 +--
 drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c             |   2 +
 drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c                  | 129 +++++++++++++++----
 drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h                  |   4 +
 drivers/gpu/drm/i915/i915_reg.h                           |  26 +++-
 drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c                |   5 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c                  |   5 +-
 drivers/gpu/drm/i915/selftests/i915_selftest.c            |  31 +++++
 drivers/gpu/drm/i915/selftests/igt_spinner.c              |   2 +-
 41 files changed, 868 insertions(+), 186 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c
 create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h

Comments

Timo Aaltonen Sept. 15, 2023, noon UTC | #1
Timo Aaltonen kirjoitti 15.9.2023 klo 14.04:
> From: Timo Aaltonen <timo.aaltonen@canonical.com>
> 
> 
> BugLink: https://bugs.launchpad.net/bugs/2032781
> BugLink: https://bugs.launchpad.net/bugs/2029470
> 
> These are all in 6.6~rc, but one patch needed some minor formatting
> changes to avoid more backports. They have also been in oem-6.5 for
> a while, and MTL is still protected here by requiring force_probe.
> 
> Having that in mind, these should be safe to apply for Mantic.
> 
> 
> The following changes since commit 238589d0f7b421aae18c5704dc931595019fa6c7:
> 
>    Linux 6.5.3 (2023-09-13 09:53:58 +0200)
> 
> are available in the Git repository at:
> 
>    https://git.launchpad.net/~tjaalton/linux mtl-for-mantic
> 
> for you to fetch changes up to fba589ec61ec476632536c465932b6fa34e46fe1:

had to amend a commit which had double buglinks, so this is
e9d036413d17bc50156232768c7bb0759cc249eb now

>    drm/i915/gt: Apply workaround 22016122933 correctly (2023-09-15 13:36:09 +0300)
> 
> ----------------------------------------------------------------
> Alan Previn (2):
>        drm/i915/gsc: Fix intel_gsc_uc_fw_proxy_init_done with directed wakerefs
>        drm/i915/selftest/gsc: Ensure GSC Proxy init completes before selftests
> 
> Chaitanya Kumar Borah (2):
>        drm/i915/color: Upscale degamma values for MTL
>        drm/i915/color: Downscale degamma lut values read from hardware
> 
> Daniele Ceraolo Spurio (5):
>        drm/i915/gsc: fixes and updates for GSC memory allocation
>        drm/i915/mtl/gsc: extract release and security versions from the gsc binary
>        drm/i915/mtl/gsc: query the GSC FW for its compatibility version
>        drm/i915/mtl/gsc: Add a gsc_info debugfs
>        drm/i915/huc: check HuC and GuC version compatibility on MTL
> 
> Jonathan Cavitt (3):
>        drm/i915/gt: Simplify shmem_create_from_object map_type selection
>        drm/i915: Make i915_coherent_map_type GT-centric
>        drm/i915/gt: Apply workaround 22016122933 correctly
> 
> Lee Shawn C (2):
>        drm/i915/mtl: update DP 2.0 vswing table for C20 phy
>        drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4
> 
> Nirmoy Das (2):
>        drm/i915/gt: Do not use stolen on MTL
>        drm/i915/display: Do not use stolen on MTL
> 
> Radhakrishna Sripada (1):
>        drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL
> 
> Tejas Upadhyay (1):
>        drm/i915/mtl: Update workaround 14018778641
> 
> Zhanjun Dong (1):
>        drm/i915/mtl: Update cache coherency setting for context structure
> 
>   drivers/gpu/drm/i915/Makefile                             |   3 +-
>   drivers/gpu/drm/i915/display/intel_bios.c                 |   3 +-
>   drivers/gpu/drm/i915/display/intel_color.c                |  27 +++-
>   drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c        |  28 +++-
>   drivers/gpu/drm/i915/display/intel_fbdev.c                |   4 +-
>   drivers/gpu/drm/i915/display/intel_hdcp_gsc.c             |   3 +-
>   drivers/gpu/drm/i915/display/intel_overlay.c              |   5 +-
>   drivers/gpu/drm/i915/gem/i915_gem_object.h                |   4 -
>   drivers/gpu/drm/i915/gem/i915_gem_pages.c                 |  15 ---
>   drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c     |  12 +-
>   drivers/gpu/drm/i915/gt/intel_engine_pm.c                 |   2 +-
>   drivers/gpu/drm/i915/gt/intel_gt.c                        |  18 ++-
>   drivers/gpu/drm/i915/gt/intel_gt.h                        |  10 ++
>   drivers/gpu/drm/i915/gt/intel_gtt.c                       |   4 +-
>   drivers/gpu/drm/i915/gt/intel_lrc.c                       |  16 ++-
>   drivers/gpu/drm/i915/gt/intel_ring.c                      |   3 +-
>   drivers/gpu/drm/i915/gt/intel_workarounds.c               |   3 -
>   drivers/gpu/drm/i915/gt/selftest_context.c                |   5 +-
>   drivers/gpu/drm/i915/gt/selftest_hangcheck.c              |   4 +-
>   drivers/gpu/drm/i915/gt/selftest_lrc.c                    |   6 +-
>   drivers/gpu/drm/i915/gt/shmem_utils.c                     |   3 +-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_binary_headers.h     |  75 ++++++++++-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c                 | 341 +++++++++++++++++++++++++++++++++++++++++--------
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h                 |   5 +-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c                 | 139 ++++++++++++++++++--
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h                 |  21 +++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c         |  39 ++++++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h         |  14 ++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h |   1 +
>   drivers/gpu/drm/i915/gt/uc/intel_guc.c                    |  11 +-
>   drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c                 |   4 -
>   drivers/gpu/drm/i915/gt/uc/intel_huc.c                    |   6 +-
>   drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c                 |  16 +--
>   drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c             |   2 +
>   drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c                  | 129 +++++++++++++++----
>   drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h                  |   4 +
>   drivers/gpu/drm/i915/i915_reg.h                           |  26 +++-
>   drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c                |   5 +-
>   drivers/gpu/drm/i915/pxp/intel_pxp_tee.c                  |   5 +-
>   drivers/gpu/drm/i915/selftests/i915_selftest.c            |  31 +++++
>   drivers/gpu/drm/i915/selftests/igt_spinner.c              |   2 +-
>   41 files changed, 868 insertions(+), 186 deletions(-)
>   create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c
>   create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h
>
Stefan Bader Oct. 23, 2023, 9:24 a.m. UTC | #2
On 15.09.23 13:04, Timo Aaltonen wrote:
> From: Timo Aaltonen <timo.aaltonen@canonical.com>
> 
> 
> BugLink: https://bugs.launchpad.net/bugs/2032781
> BugLink: https://bugs.launchpad.net/bugs/2029470
> 
> These are all in 6.6~rc, but one patch needed some minor formatting
> changes to avoid more backports. They have also been in oem-6.5 for
> a while, and MTL is still protected here by requiring force_probe.
> 
> Having that in mind, these should be safe to apply for Mantic.

This has been sitting around for quite a while which might tell you how 
much people like huge patch bombs...
I must admit I am very torn about what to do with this. On the positive 
side this still applies. Patch #18 needs to be adjusted though to the 
standard backport format we use:

(backported from commit <sha>)
[tjaalton: minor adjustments]
...

Also you say you carry those in the oem-kernel for a while now without 
issues (though that maybe does not cover older hw as long as they stil 
are on an older oem kernel).
But it refers to 2 bug report which both give not too much reason to 
take this as stable updates. I would at least expect a summary of issue 
which are addressed. So verification could be done against this. Also 
testing likely should also cover a couple of other i915 GPU models. 
Somehow I have not that much trust in any GPU driver developers to add 
things for newer hardware completely without causing side effects on 
older HW.
Also those bug reports are against linux-oem-6.5 and not Mantic (yes 
that would be quick to change).

So right now I think I am tending to ask you to re-submit ... I am just 
avoiding the N-word in the subject in case there is a convincing 
argument I cannot deny...

-Stefan
> 
> 
> The following changes since commit 238589d0f7b421aae18c5704dc931595019fa6c7:
> 
>    Linux 6.5.3 (2023-09-13 09:53:58 +0200)
> 
> are available in the Git repository at:
> 
>    https://git.launchpad.net/~tjaalton/linux mtl-for-mantic
> 
> for you to fetch changes up to fba589ec61ec476632536c465932b6fa34e46fe1:
> 
>    drm/i915/gt: Apply workaround 22016122933 correctly (2023-09-15 13:36:09 +0300)
> 
> ----------------------------------------------------------------
> Alan Previn (2):
>        drm/i915/gsc: Fix intel_gsc_uc_fw_proxy_init_done with directed wakerefs
>        drm/i915/selftest/gsc: Ensure GSC Proxy init completes before selftests
> 
> Chaitanya Kumar Borah (2):
>        drm/i915/color: Upscale degamma values for MTL
>        drm/i915/color: Downscale degamma lut values read from hardware
> 
> Daniele Ceraolo Spurio (5):
>        drm/i915/gsc: fixes and updates for GSC memory allocation
>        drm/i915/mtl/gsc: extract release and security versions from the gsc binary
>        drm/i915/mtl/gsc: query the GSC FW for its compatibility version
>        drm/i915/mtl/gsc: Add a gsc_info debugfs
>        drm/i915/huc: check HuC and GuC version compatibility on MTL
> 
> Jonathan Cavitt (3):
>        drm/i915/gt: Simplify shmem_create_from_object map_type selection
>        drm/i915: Make i915_coherent_map_type GT-centric
>        drm/i915/gt: Apply workaround 22016122933 correctly
> 
> Lee Shawn C (2):
>        drm/i915/mtl: update DP 2.0 vswing table for C20 phy
>        drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4
> 
> Nirmoy Das (2):
>        drm/i915/gt: Do not use stolen on MTL
>        drm/i915/display: Do not use stolen on MTL
> 
> Radhakrishna Sripada (1):
>        drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL
> 
> Tejas Upadhyay (1):
>        drm/i915/mtl: Update workaround 14018778641
> 
> Zhanjun Dong (1):
>        drm/i915/mtl: Update cache coherency setting for context structure
> 
>   drivers/gpu/drm/i915/Makefile                             |   3 +-
>   drivers/gpu/drm/i915/display/intel_bios.c                 |   3 +-
>   drivers/gpu/drm/i915/display/intel_color.c                |  27 +++-
>   drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c        |  28 +++-
>   drivers/gpu/drm/i915/display/intel_fbdev.c                |   4 +-
>   drivers/gpu/drm/i915/display/intel_hdcp_gsc.c             |   3 +-
>   drivers/gpu/drm/i915/display/intel_overlay.c              |   5 +-
>   drivers/gpu/drm/i915/gem/i915_gem_object.h                |   4 -
>   drivers/gpu/drm/i915/gem/i915_gem_pages.c                 |  15 ---
>   drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c     |  12 +-
>   drivers/gpu/drm/i915/gt/intel_engine_pm.c                 |   2 +-
>   drivers/gpu/drm/i915/gt/intel_gt.c                        |  18 ++-
>   drivers/gpu/drm/i915/gt/intel_gt.h                        |  10 ++
>   drivers/gpu/drm/i915/gt/intel_gtt.c                       |   4 +-
>   drivers/gpu/drm/i915/gt/intel_lrc.c                       |  16 ++-
>   drivers/gpu/drm/i915/gt/intel_ring.c                      |   3 +-
>   drivers/gpu/drm/i915/gt/intel_workarounds.c               |   3 -
>   drivers/gpu/drm/i915/gt/selftest_context.c                |   5 +-
>   drivers/gpu/drm/i915/gt/selftest_hangcheck.c              |   4 +-
>   drivers/gpu/drm/i915/gt/selftest_lrc.c                    |   6 +-
>   drivers/gpu/drm/i915/gt/shmem_utils.c                     |   3 +-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_binary_headers.h     |  75 ++++++++++-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c                 | 341 +++++++++++++++++++++++++++++++++++++++++--------
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h                 |   5 +-
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c                 | 139 ++++++++++++++++++--
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h                 |  21 +++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c         |  39 ++++++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h         |  14 ++
>   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h |   1 +
>   drivers/gpu/drm/i915/gt/uc/intel_guc.c                    |  11 +-
>   drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c                 |   4 -
>   drivers/gpu/drm/i915/gt/uc/intel_huc.c                    |   6 +-
>   drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c                 |  16 +--
>   drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c             |   2 +
>   drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c                  | 129 +++++++++++++++----
>   drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h                  |   4 +
>   drivers/gpu/drm/i915/i915_reg.h                           |  26 +++-
>   drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c                |   5 +-
>   drivers/gpu/drm/i915/pxp/intel_pxp_tee.c                  |   5 +-
>   drivers/gpu/drm/i915/selftests/i915_selftest.c            |  31 +++++
>   drivers/gpu/drm/i915/selftests/igt_spinner.c              |   2 +-
>   41 files changed, 868 insertions(+), 186 deletions(-)
>   create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c
>   create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h
>
Timo Aaltonen Oct. 23, 2023, 2:01 p.m. UTC | #3
Stefan Bader kirjoitti 23.10.2023 klo 12.24:
> On 15.09.23 13:04, Timo Aaltonen wrote:
>> From: Timo Aaltonen <timo.aaltonen@canonical.com>
>>
>>
>> BugLink: https://bugs.launchpad.net/bugs/2032781
>> BugLink: https://bugs.launchpad.net/bugs/2029470
>>
>> These are all in 6.6~rc, but one patch needed some minor formatting
>> changes to avoid more backports. They have also been in oem-6.5 for
>> a while, and MTL is still protected here by requiring force_probe.
>>
>> Having that in mind, these should be safe to apply for Mantic.
> 
> This has been sitting around for quite a while which might tell you how 
> much people like huge patch bombs...
> I must admit I am very torn about what to do with this. On the positive 
> side this still applies. Patch #18 needs to be adjusted though to the 
> standard backport format we use:
> 
> (backported from commit <sha>)
> [tjaalton: minor adjustments]
> ...
> 
> Also you say you carry those in the oem-kernel for a while now without 
> issues (though that maybe does not cover older hw as long as they stil 
> are on an older oem kernel).
> But it refers to 2 bug report which both give not too much reason to 
> take this as stable updates. I would at least expect a summary of issue 
> which are addressed. So verification could be done against this. Also 
> testing likely should also cover a couple of other i915 GPU models. 
> Somehow I have not that much trust in any GPU driver developers to add 
> things for newer hardware completely without causing side effects on 
> older HW.
> Also those bug reports are against linux-oem-6.5 and not Mantic (yes 
> that would be quick to change).
> 
> So right now I think I am tending to ask you to re-submit ... I am just 
> avoiding the N-word in the subject in case there is a convincing 
> argument I cannot deny...
> 
> -Stefan

Well, it was meant to land before kernel freeze, but I didn't push it 
too actively. So lets just NACK this instead now.