Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
20636 Discussions

hybrid intel graphics

andreineustroev
Beginner
1,416 Views

I have two Intel graphics on my laptop

lspci -k | grep -EA3 'VGA|3D|Display'
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
Subsystem: Acer Incorporated [ALI] Device 1611
Kernel driver in use: i915
Kernel modules: i915
--
03:00.0 Display controller: Intel Corporation DG2 [Arc A370M] (rev 05)
Subsystem: Acer Incorporated [ALI] Device 1611
Kernel driver in use: i915
Kernel modules: i915

When I use linux, I can't find the way how to use discrete video for better performance (like gemes). All existing tools for hybrid graphics makes for intel+nvidia or intel+amd. 

Also I see some troubles in initialization process

[    1.682820] i915 0000:00:02.0: [drm] VT-d active for gfx access
[    1.682899] i915 0000:00:02.0: vgaarb: deactivate vga console
[    1.682943] i915 0000:00:02.0: [drm] Using Transparent Hugepages
[    1.683449] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    1.686501] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adlp_dmc_ver2_16.bin (v2.16)
[    1.822991] i915 0000:00:02.0: [drm] GuC firmware i915/adlp_guc_70.bin version 70.5.1
[    1.822996] i915 0000:00:02.0: [drm] HuC firmware i915/tgl_huc.bin version 7.9.3
[    1.837149] i915 0000:00:02.0: [drm] HuC authenticated
[    1.838076] i915 0000:00:02.0: [drm] GuC submission enabled
[    1.838077] i915 0000:00:02.0: [drm] GuC SLPC enabled
[    1.838549] i915 0000:00:02.0: [drm] GuC RC: enabled
[    1.839046] i915 0000:00:02.0: [drm] Protected Xe Path (PXP) protected content support initialized
[    2.968769] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[    2.974301] i915 0000:03:00.0: enabling device (0000 -> 0002)
[    2.975273] i915 0000:03:00.0: [drm] VT-d active for gfx access
[    2.975434] i915 0000:03:00.0: [drm] Local memory IO size: 0x00000000fd000000
[    2.975437] i915 0000:03:00.0: [drm] Local memory available: 0x00000000fd000000
[    3.011097] fbcon: i915drmfb (fb0) is primary device
[    3.014306] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[    3.019070] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.019110] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.019274] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.019281] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.019362]  hsw_power_well_enable+0x133/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019430]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019494]  icl_display_core_init+0xb6/0x6d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019563]  intel_power_domains_init_hw+0x1de/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019627]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019698]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019751]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019819]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019895]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.019951]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021335] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.021367] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.021526] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.021530] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.021606]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021677]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021744]  icl_display_core_init+0xb6/0x6d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021812]  intel_power_domains_init_hw+0x1de/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021876]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021945]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.021998]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.022067]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.022138]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.022195]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.023500] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.023532] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.023683] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.023687] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.023764]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.023832]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.023899]  icl_display_core_init+0xb6/0x6d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.023967]  intel_power_domains_init_hw+0x1de/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024032]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024099]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024152]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024226]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024297]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.024355]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.025740] i915 0000:03:00.0: [drm] *ERROR* timeout waiting for CDCLK PLL lock
[    3.025894] i915 0000:03:00.0: DBuf slice 0 power enable timeout!
[    3.025897] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power.c:1043 gen9_dbuf_slices_update+0x1d9/0x220 [i915]
[    3.025974] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.025978] RIP: 0010:gen9_dbuf_slices_update+0x1d9/0x220 [i915]
[    3.026056]  icl_display_core_init+0xef/0x6d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026126]  intel_power_domains_init_hw+0x1de/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026193]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026263]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026316]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026386]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026456]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026514]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026650] i915 0000:03:00.0: Unexpected DBuf power power state (0x00000000, expected 0x00000001)
[    3.026653] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:951 gen9_disable_dc_states+0x2b2/0x2c0 [i915]
[    3.026725] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.026728] RIP: 0010:gen9_disable_dc_states+0x2b2/0x2c0 [i915]
[    3.026803]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026890]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.026970]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027040]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027104]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027158]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027233]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027304]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.027363]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.028740] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.028771] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.028933] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.028937] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.029012]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029078]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029142]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029208]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029272]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029339]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029392]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029468]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029538]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.029595]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.030801] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.030832] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.030992] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.030995] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.031071]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031142]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031211]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031279]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031344]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031413]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031466]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031536]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031607]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.031666]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033043] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.033073] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.033235] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.033238] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.033317]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033384]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033449]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033535]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033616]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033693]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033746]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033813]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033884]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.033942]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035316] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.035347] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.035513] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.035516] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.035593]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035661]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035729]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035798]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035865]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035933]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.035986]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.036060]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.036131]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.036189]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.037484] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.037515] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.037675] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.037678] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.037754]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.037825]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.037893]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.037960]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038025]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038090]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038143]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038218]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038288]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.038347]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.039722] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.039753] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.039913] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.039917] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.039993]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040059]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040123]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040199]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040275]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040349]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040402]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040471]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040541]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.040598]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.041971] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.042002] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.042162] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.042165] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.042239]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042304]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042367]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042433]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042498]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042567]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042620]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042687]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042757]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.042813]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044138] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.044142] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.044241] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.044246] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.044348]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044431]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044514]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044594]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044678]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044763]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044826]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.044962]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.045091]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.045191]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.046671] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[    3.046702] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.046819] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.046823] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[    3.046916]  hsw_power_well_enable+0x93/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.046985]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047048]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047114]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047178]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047243]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047297]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047371]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047441]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.047498]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049048] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[    3.049060] WARNING: CPU: 2 PID: 181 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.049134] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.049138] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[    3.049212]  hsw_power_well_enable+0x153/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049277]  intel_power_well_enable+0x5b/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049342]  __intel_display_power_get_domain.part.0+0x52/0x70 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049410]  intel_power_domains_init_hw+0x91/0x5b0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049478]  intel_modeset_init_noirq+0x64/0x260 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049544]  i915_driver_probe+0x592/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049597]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049670]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049741]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.049799]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.052561] i915 0000:03:00.0: [drm] Finished loading DMC firmware i915/dg2_dmc_ver2_08.bin (v2.8)
[    3.196771] i915 0000:03:00.0: [drm] *ERROR* GT workaround lost on init! (reg[9424]=0xfffffffe, relevant bits were 0x2 vs expected 0x0)
[    3.196812] i915 0000:03:00.0: [drm] GuC firmware i915/dg2_guc_70.bin version 70.5.1
[    3.196813] i915 0000:03:00.0: [drm] HuC firmware i915/dg2_huc_gsc.bin version 7.10.3
[    3.269402] i915 0000:03:00.0: [drm] GuC submission enabled
[    3.269417] i915 0000:03:00.0: [drm] GuC SLPC enabled
[    3.269939] i915 0000:03:00.0: [drm] GuC RC: enabled
[    3.288175] [drm] Initialized i915 1.6.0 20201103 for 0000:03:00.0 on minor 1
[    3.289320] i915 0000:03:00.0: DMC program storage start is NULL
[    3.289333] WARNING: CPU: 9 PID: 181 at drivers/gpu/drm/i915/display/intel_dmc.c:484 assert_dmc_loaded+0xb3/0x140 [i915]
[    3.289477] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.289487] RIP: 0010:assert_dmc_loaded+0xb3/0x140 [i915]
[    3.289610]  gen9_enable_dc5+0x97/0x240 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.289713]  __intel_display_power_put_domain+0xd9/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.289817]  intel_power_domains_enable+0x34/0x50 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.289916]  i915_driver_probe+0x65f/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290003]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290104]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290227]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290315]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290442] i915 0000:03:00.0: DMC SSP Base Not fine
[    3.290449] WARNING: CPU: 9 PID: 181 at drivers/gpu/drm/i915/display/intel_dmc.c:487 assert_dmc_loaded+0xf1/0x140 [i915]
[    3.290551] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.290558] RIP: 0010:assert_dmc_loaded+0xf1/0x140 [i915]
[    3.290666]  gen9_enable_dc5+0x97/0x240 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290763]  __intel_display_power_put_domain+0xd9/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290861]  intel_power_domains_enable+0x34/0x50 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.290957]  i915_driver_probe+0x65f/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291043]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291141]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291253]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291339]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291458] i915 0000:03:00.0: DMC HTP Not fine
[    3.291465] WARNING: CPU: 9 PID: 181 at drivers/gpu/drm/i915/display/intel_dmc.c:489 assert_dmc_loaded+0x133/0x140 [i915]
[    3.291564] Modules linked in: i915(+) drm_buddy intel_gtt video wmi drm_display_helper cec ttm
[    3.291570] RIP: 0010:assert_dmc_loaded+0x133/0x140 [i915]
[    3.291676]  gen9_enable_dc5+0x97/0x240 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291771]  __intel_display_power_put_domain+0xd9/0x1a0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291868]  intel_power_domains_enable+0x34/0x50 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.291963]  i915_driver_probe+0x65f/0xe30 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.292048]  ? intel_modeset_probe_defer+0x4f/0x60 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.292145]  ? i915_pci_probe+0x9b/0x1d0 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.292257]  i915_init+0x23/0x83 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.292343]  ? __pfx_init_module+0x10/0x10 [i915 3486f038b948acaea2346ba9a328464f7281a05b]
[    3.292556] i915 0000:03:00.0: [drm] *ERROR* Writing dc state to 0x1 failed, now 0x0
[    3.292620] i915 0000:03:00.0: [drm] Cannot find any crtc or sizes
[    3.292685] i915 0000:03:00.0: [drm] Cannot find any crtc or sizes
[   13.267645] i915 0000:03:00.0: [drm] timed out waiting for MEI GSC init to load HuC
[   16.778795] mei_gsc i915.mei-gscfi.768: FW not ready: resetting: dev_state = 2 pxp = 0
[   16.778835] mei_gsc i915.mei-gscfi.768: unexpected reset: dev_state = ENABLED fw status = 00000345 84670000 00000000 00000000 E0020002 00000000
[   16.779539] mei_gsc i915.mei-gsc.768: FW not ready: resetting: dev_state = 2 pxp = 2
[   16.779575] mei_gsc i915.mei-gsc.768: unexpected reset: dev_state = ENABLED fw status = 00000345 84670000 00000000 00000000 E0020002 00000000
[   16.954181] mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])
[   16.964864] mei_pxp 0000:00:16.0-fbf6fcf1-96cf-4e2e-a6a6-1bab8cbe36b1: bound 0000:00:02.0 (ops i915_pxp_tee_component_ops [i915])
[   17.181700] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[   17.267125] i915 0000:03:00.0: [drm] HuC authenticated
[   17.267136] mei_pxp i915.mei-gsc.768-fbf6fcf1-96cf-4e2e-a6a6-1bab8cbe36b1: bound 0000:03:00.0 (ops i915_pxp_tee_component_ops [i915])

Do you plan make something solution for support Intel-only hybrid graphics on linux?

 

0 Kudos
3 Replies
MAHDTech
Beginner
1,190 Views

I have the Intel NUC X15 Laptop Kit with the same Intel Hybrid Combo

lspci -k | grep -EA3 'VGA|3D|Display'

00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
	DeviceName: Onboard - Video
	Subsystem: Intel Corporation Device 3029
	Kernel driver in use: i915
--
03:00.0 Display controller: Intel Corporation DG2 [Arc A730M] (rev 08)
	Subsystem: Intel Corporation Device 3029
	Kernel driver in use: i915
	Kernel modules: i915

In Linux kernels prior to v6.2 you had to enable the kernel parameters to get the ARC available for use

# Get your 4 digit hardware ID from this command
# lspci -nn |grep  -Ei 'VGA|DISPLAY'

"i915.force_probe=5691"

# Now the card is shown

lsgpu
card1                    Intel Dg2 (Gen12)                 drm:/dev/dri/card1
└─renderD129                                               drm:/dev/dri/renderD129
card0                    Intel Alderlake_p (Gen12)         drm:/dev/dri/card0
└─renderD128                                               drm:/dev/dri/renderD128

I recently upgraded to kernel 6.2.16 where this is no longer required

uname -r
6.2.16

I've now noticed I'm receiving the same power related error in dmesg as you posted above

May 29 12:21:17 nuc kernel: i915 0000:03:00.0: [drm] *ERROR* Writing dc state to 0x1 failed, now 0x0
May 29 12:21:29 nuc kernel: i915 0000:03:00.0: [drm] *ERROR* DC state mismatch (0x1 -> 0x0)
May 29 12:21:29 nuc kernel: ------------[ cut here ]------------
May 29 12:21:29 nuc kernel: i915 0000:03:00.0: Unexpected DBuf power power state (0x00000000, expected 0x00000001)
May 29 12:21:29 nuc kernel: WARNING: CPU: 6 PID: 389016 at drivers/gpu/drm/i915/display/intel_display_power_well.c:951 gen9_disable_dc_states+0x2b2/0x2c0 [i915]
May 29 12:21:29 nuc kernel: Modules linked in: uinput snd_seq_dummy snd_hrtimer snd_seq rfcomm overlay tun ipt_REJECT nf_reject_ipv4 xt_statistic xt_comment xt_mark msr ctr ccm veth xt_nat xt_tcpudp xt_conntrack nft_chain_nat xt_MASQUERADE nf_nat nf_conntrack_netlink nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xfrm_user xfrm_algo xt_addrtype nft_compat nf_tables libcrc32c crc32c_generic nfnetlink br_netfilter bridge stp llc cmac algif_hash algif_skcipher af_alg bnep af_packet typec_displayport snd_hda_codec_hdmi snd_sof_pci_intel_tgl snd_sof_intel_hda_common snd_soc_hdac_hda soundwire_intel soundwire_generic_allocation soundwire_cadence snd_sof_intel_hda snd_sof_pci snd_sof_xtensa_dsp iwlmvm snd_sof snd_sof_utils snd_hda_ext_core snd_soc_acpi_intel_match intel_rapl_msr intel_rapl_common snd_soc_acpi snd_hda_codec_realtek soundwire_bus intel_tcc_cooling hid_multitouch x86_pkg_temp_thermal intel_powerclamp mac80211 snd_hda_codec_generic snd_soc_core snd_compress coretemp ac97_bus snd_pcm_dmaengine libarc4
May 29 12:21:29 nuc kernel:  crc32_pclmul polyval_clmulni snd_usb_audio polyval_generic gf128mul snd_hda_intel ghash_clmulni_intel r8153_ecm btusb sha512_ssse3 btrtl snd_intel_dspcfg sha512_generic cdc_ether btbcm snd_intel_sdw_acpi cmdlinepart btintel i2c_designware_platform usbnet aesni_intel snd_usbmidi_lib btmtk i2c_designware_core crypto_simd snd_hda_codec spi_nor snd_rawmidi cryptd uvcvideo r8152 snd_hda_core bluetooth mei_hdcp mei_pxp mtd pmt_telemetry mousedev rapl pmt_class snd_seq_device iwlwifi mii intel_cstate snd_hwdep videobuf2_vmalloc intel_uncore ecdh_generic snd_pcm ov13858 videobuf2_memops asus_wmi videobuf2_v4l2 ecc wdat_wdt crc16 v4l2_fwnode ledtrig_audio joydev igc watchdog platform_profile videobuf2_common uas v4l2_async snd_timer ucsi_acpi libaes wmi_bmof mei_gsc intel_lpss_pci typec_ucsi cfg80211 mei_me intel_lpss spi_intel_pci ptp snd igen6_edac tiny_power_button i2c_i801 idma64 videodev typec tpm_crb i2c_hid_acpi virt_dma mei soundcore spi_intel pps_core i2c_smbus intel_hid
May 29 12:21:29 nuc kernel:  rfkill mfd_core edac_core roles battery fan intel_vsec button i2c_hid mc sparse_keymap thermal acpi_tad tpm_tis input_leds tpm_tis_core intel_pmc_core pinctrl_tigerlake acpi_pad led_class evdev mac_hid ac serio_raw sch_fq_codel vmnet(O+) vmmon(O) vmw_vmci vmw_pvscsi kvm_intel kvm irqbypass acpi_call(O) fuse deflate efi_pstore configfs efivarfs tpm rng_core dmi_sysfs ip_tables x_tables autofs4 hid_logitech_hidpp hid_logitech_dj sd_mod usb_storage scsi_mod scsi_common hid_generic usbhid hid xhci_pci xhci_pci_renesas xhci_hcd nvme thunderbolt usbcore nvme_core atkbd libps2 vivaldi_fmap t10_pi crc32c_intel crc64_rocksoft rtc_cmos crc64 crc_t10dif crct10dif_generic crct10dif_pclmul usb_common crct10dif_common i8042 serio dm_mod dax nls_iso8859_1 nls_cp437 vfat fat zfs(PO) zunicode(PO) zzstd(O) zlua(O) zavl(PO) icp(PO) zcommon(PO) znvpair(PO) spl(O) i915 i2c_algo_bit drm_buddy cec intel_gtt video wmi drm_display_helper drm_kms_helper syscopyarea sysfillrect sysimgblt ttm agpgart
May 29 12:21:29 nuc kernel:  drm i2c_core backlight
May 29 12:21:29 nuc kernel: CPU: 6 PID: 389016 Comm: kworker/6:0 Tainted: P     UD W  O       6.2.16 #1-NixOS
May 29 12:21:29 nuc kernel: Hardware name: Intel(R) Client Systems LAPAC71H/LAPAC71H, BIOS ACADL357.0061.2023.0427.1553 04/27/2023
May 29 12:21:29 nuc kernel: Workqueue: pm pm_runtime_work
May 29 12:21:29 nuc kernel: RIP: 0010:gen9_disable_dc_states+0x2b2/0x2c0 [i915]
May 29 12:21:29 nuc kernel: Code: b6 e8 4c 8b 6f 50 4d 85 ed 75 03 4c 8b 2f e8 c5 b8 60 d2 45 89 e0 89 e9 4c 89 ea 48 89 c6 48 c7 c7 20 ab 68 c0 e8 3e 06 f2 d1 <0f> 0b e9 f7 fd ff ff e8 02 99 91 d2 66 90 90 90 90 90 90 90 90 90
May 29 12:21:29 nuc kernel: RSP: 0018:ffffaaf423f5bcd0 EFLAGS: 00010282
May 29 12:21:29 nuc kernel: RAX: 0000000000000000 RBX: ffff97d544d00000 RCX: 0000000000000000
May 29 12:21:29 nuc kernel: RDX: 0000000000000002 RSI: ffffffff93566426 RDI: 00000000ffffffff
May 29 12:21:29 nuc kernel: RBP: 0000000000000000 R08: 0000000000000000 R09: ffffaaf423f5bb78
May 29 12:21:29 nuc kernel: R10: 0000000000000003 R11: ffffffff93d1abf0 R12: 0000000000000001
May 29 12:21:29 nuc kernel: R13: ffff97d542510270 R14: ffff97d544d01cb0 R15: ffff97d544d00000
May 29 12:21:29 nuc kernel: FS:  0000000000000000(0000) GS:ffff97e48b380000(0000) knlGS:0000000000000000
May 29 12:21:29 nuc kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
May 29 12:21:29 nuc kernel: CR2: 0000013409e37000 CR3: 00000001ba76a004 CR4: 0000000000f70ee0
May 29 12:21:29 nuc kernel: PKRU: 55555554
May 29 12:21:29 nuc kernel: Call Trace:
May 29 12:21:29 nuc kernel:  <TASK>
May 29 12:21:29 nuc kernel:  icl_display_core_uninit.part.0+0x16/0x70 [i915]
May 29 12:21:29 nuc kernel:  intel_display_power_suspend+0x51/0x70 [i915]
May 29 12:21:29 nuc kernel:  intel_runtime_suspend+0xc4/0x240 [i915]
May 29 12:21:29 nuc kernel:  pci_pm_runtime_suspend+0x5d/0x1c0
May 29 12:21:29 nuc kernel:  ? __pfx_pci_pm_runtime_suspend+0x10/0x10
May 29 12:21:29 nuc kernel:  __rpm_callback+0x41/0x170
May 29 12:21:29 nuc kernel:  ? __pfx_pci_pm_runtime_suspend+0x10/0x10
May 29 12:21:29 nuc kernel:  rpm_callback+0x5d/0x70
May 29 12:21:29 nuc kernel:  ? __pfx_pci_pm_runtime_suspend+0x10/0x10
May 29 12:21:29 nuc kernel:  rpm_suspend+0x11a/0x720
May 29 12:21:29 nuc kernel:  ? __schedule+0x36e/0x12a0
May 29 12:21:29 nuc kernel:  pm_runtime_work+0x98/0xb0
May 29 12:21:29 nuc kernel:  process_one_work+0x1c5/0x3c0
May 29 12:21:29 nuc kernel:  worker_thread+0x51/0x390
May 29 12:21:29 nuc kernel:  ? _raw_spin_lock_irqsave+0x27/0x60
May 29 12:21:29 nuc kernel:  ? __pfx_worker_thread+0x10/0x10
May 29 12:21:29 nuc kernel:  kthread+0xea/0x120
May 29 12:21:29 nuc kernel:  ? __pfx_kthread+0x10/0x10
May 29 12:21:29 nuc kernel:  ret_from_fork+0x29/0x50
May 29 12:21:29 nuc kernel:  </TASK>
May 29 12:21:29 nuc kernel: ---[ end trace 0000000000000000 ]---
May 29 12:21:29 nuc kernel: i915 0000:03:00.0: [drm] *ERROR* Writing dc state to 0x8 failed, now 0x0

@andreineustroev  did you end up finding a fix and what kernel are you running?

 

0 Kudos
Goodspeed
Beginner
979 Views

I also have similar issue on Intel NUC X15 Laptop kit. Kernel version 6.3.0-1-amd64

```

[27879.220244] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[27879.220287] WARNING: CPU: 0 PID: 20895 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220381] Modules linked in: tun tcp_diag inet_diag snd_seq_dummy snd_hrtimer snd_seq snd_seq_device ccm cmac algif_hash algif_skcipher af_alg qrtr snd_hda_codec_hdmi bnep binfmt_misc ext4 nls_ascii mbcache nls_cp437 jbd2 vfat fat intel_rapl_msr intel_rapl_common x86_pkg_temp_thermal intel_powerclamp iwlmvm coretemp btusb snd_sof_pci_intel_tgl btrtl kvm_intel snd_sof_intel_hda_common btbcm btintel btmtk kvm soundwire_intel mac80211 soundwire_generic_allocation bluetooth soundwire_cadence snd_sof_intel_hda snd_sof_pci snd_sof_xtensa_dsp snd_sof snd_hda_codec_realtek irqbypass snd_sof_utils snd_hda_codec_generic snd_soc_hdac_hda snd_hda_ext_core snd_soc_acpi_intel_match snd_soc_acpi ghash_clmulni_intel libarc4 snd_soc_core iwlwifi snd_compress jitterentropy_rng soundwire_bus aesni_intel snd_hda_intel snd_intel_dspcfg sha512_ssse3 crypto_simd snd_intel_sdw_acpi cfg80211 sha512_generic snd_hda_codec cryptd ctr uvcvideo snd_hda_core videobuf2_vmalloc drbg uvc videobuf2_memops videobuf2_v4l2 snd_hwdep asus_wmi ansi_cprng
[27879.220412] rapl snd_pcm ledtrig_audio pmt_telemetry platform_profile ecdh_generic mei_hdcp mei_pxp intel_cstate pmt_class mei_gsc videodev ucsi_acpi wmi_bmof wdat_wdt intel_uncore snd_timer mei_me typec_ucsi videobuf2_common watchdog roles pcspkr snd ecc mei mc soundcore joydev crc16 rfkill typec intel_vsec igen6_edac acpi_pad intel_hid intel_pmc_core acpi_tad sparse_keymap ac hid_multitouch evdev serio_raw parport_pc ppdev lp parport dm_mod fuse loop efi_pstore configfs efivarfs ip_tables x_tables autofs4 btrfs blake2b_generic xor raid6_pq libcrc32c crc32c_generic usbhid i915 drm_buddy i2c_algo_bit drm_display_helper cec rc_core ttm nvme drm_kms_helper nvme_core hid_generic xhci_pci t10_pi xhci_hcd crc64_rocksoft crc64 drm thunderbolt crc_t10dif i2c_hid_acpi usbcore igc crc32_pclmul crc32c_intel intel_lpss_pci i2c_hid i2c_i801 crct10dif_generic intel_lpss crct10dif_pclmul idma64 i2c_smbus usb_common crct10dif_common hid battery fan button video wmi
[27879.220449] CPU: 0 PID: 20895 Comm: kworker/u40:106 Tainted: G W 6.3.0-1-amd64 #1 Debian 6.3.7-1
[27879.220450] Hardware name: Intel(R) Client Systems LAPAC71H/LAPAC71H, BIOS ACADL357.0061.2023.0427.1553 04/27/2023
[27879.220451] Workqueue: events_unbound async_run_entry_fn
[27879.220454] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220549] Code: 48 8b 5f 50 48 85 db 75 03 48 8b 1f e8 58 3f 98 df 48 c7 c1 d8 7a 9b c0 48 89 da 48 c7 c7 79 dd 9d c0 48 89 c6 e8 2f b8 20 df <0f> 0b 5b c3 cc cc cc cc 0f 1f 80 00 00 00 00 90 90 90 90 90 90 90
[27879.220550] RSP: 0018:ffffbf04c7f47d18 EFLAGS: 00010286
[27879.220552] RAX: 0000000000000000 RBX: ffffa03342598e10 RCX: 0000000000000000
[27879.220552] RDX: 0000000000000002 RSI: ffffffffa0c371d5 RDI: 00000000ffffffff
[27879.220553] RBP: ffffa0335c1640c0 R08: ffffffffa28b0de0 R09: ffffa03bcb7b2742
[27879.220554] R10: ffffffffffffffff R11: ffffa03acb760440 R12: 0000000000000007
[27879.220555] R13: ffffa033786e1f08 R14: ffffffffc0986450 R15: ffffa033d877cd48
[27879.220556] FS: 0000000000000000(0000) GS:ffffa03aab200000(0000) knlGS:0000000000000000
[27879.220557] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[27879.220557] CR2: 0000558ad4c31f86 CR3: 0000000197e20000 CR4: 0000000000f50ef0
[27879.220558] PKRU: 55555554
[27879.220559] Call Trace:
[27879.220560] <TASK>
[27879.220560] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220653] ? __warn+0x81/0x130
[27879.220655] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220749] ? report_bug+0x191/0x1c0
[27879.220750] ? _raw_spin_lock_irqsave+0x27/0x60
[27879.220753] ? handle_bug+0x41/0x70
[27879.220756] ? exc_invalid_op+0x17/0x70
[27879.220758] ? asm_exc_invalid_op+0x1a/0x20
[27879.220761] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220854] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.220948] hsw_power_well_enable+0x153/0x1a0 [i915]
[27879.221043] intel_power_well_enable+0x5b/0x70 [i915]
[27879.221140] __intel_display_power_get_domain.part.0+0x52/0x70 [i915]
[27879.221239] intel_power_domains_init_hw+0x91/0x5f0 [i915]
[27879.221334] intel_power_domains_resume+0x7f/0xd0 [i915]
[27879.221427] i915_drm_resume_early+0xa1/0x100 [i915]
[27879.221487] ? __pfx_i915_pm_restore_early+0x10/0x10 [i915]
[27879.221546] dpm_run_callback+0x89/0x1e0
[27879.221549] device_resume_early+0x68/0x180
[27879.221552] async_resume_early+0x1e/0x60
[27879.221554] async_run_entry_fn+0x31/0x130
[27879.221557] process_one_work+0x1c5/0x3c0
[27879.221559] worker_thread+0x51/0x390
[27879.221561] ? __pfx_worker_thread+0x10/0x10
[27879.221562] kthread+0xea/0x120
[27879.221564] ? __pfx_kthread+0x10/0x10
[27879.221567] ret_from_fork+0x29/0x50
[27879.221571] </TASK>
[27879.221571] ---[ end trace 0000000000000000 ]---
[27879.222762] ------------[ cut here ]------------
[27879.222765] i915 0000:03:00.0: drm_WARN_ON(!timeout_expected)
[27879.222811] WARNING: CPU: 0 PID: 20895 at drivers/gpu/drm/i915/display/intel_display_power_well.c:272 hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.222905] Modules linked in: tun tcp_diag inet_diag snd_seq_dummy snd_hrtimer snd_seq snd_seq_device ccm cmac algif_hash algif_skcipher af_alg qrtr snd_hda_codec_hdmi bnep binfmt_misc ext4 nls_ascii mbcache nls_cp437 jbd2 vfat fat intel_rapl_msr intel_rapl_common x86_pkg_temp_thermal intel_powerclamp iwlmvm coretemp btusb snd_sof_pci_intel_tgl btrtl kvm_intel snd_sof_intel_hda_common btbcm btintel btmtk kvm soundwire_intel mac80211 soundwire_generic_allocation bluetooth soundwire_cadence snd_sof_intel_hda snd_sof_pci snd_sof_xtensa_dsp snd_sof snd_hda_codec_realtek irqbypass snd_sof_utils snd_hda_codec_generic snd_soc_hdac_hda snd_hda_ext_core snd_soc_acpi_intel_match snd_soc_acpi ghash_clmulni_intel libarc4 snd_soc_core iwlwifi snd_compress jitterentropy_rng soundwire_bus aesni_intel snd_hda_intel snd_intel_dspcfg sha512_ssse3 crypto_simd snd_intel_sdw_acpi cfg80211 sha512_generic snd_hda_codec cryptd ctr uvcvideo snd_hda_core videobuf2_vmalloc drbg uvc videobuf2_memops videobuf2_v4l2 snd_hwdep asus_wmi ansi_cprng
[27879.222937] rapl snd_pcm ledtrig_audio pmt_telemetry platform_profile ecdh_generic mei_hdcp mei_pxp intel_cstate pmt_class mei_gsc videodev ucsi_acpi wmi_bmof wdat_wdt intel_uncore snd_timer mei_me typec_ucsi videobuf2_common watchdog roles pcspkr snd ecc mei mc soundcore joydev crc16 rfkill typec intel_vsec igen6_edac acpi_pad intel_hid intel_pmc_core acpi_tad sparse_keymap ac hid_multitouch evdev serio_raw parport_pc ppdev lp parport dm_mod fuse loop efi_pstore configfs efivarfs ip_tables x_tables autofs4 btrfs blake2b_generic xor raid6_pq libcrc32c crc32c_generic usbhid i915 drm_buddy i2c_algo_bit drm_display_helper cec rc_core ttm nvme drm_kms_helper nvme_core hid_generic xhci_pci t10_pi xhci_hcd crc64_rocksoft crc64 drm thunderbolt crc_t10dif i2c_hid_acpi usbcore igc crc32_pclmul crc32c_intel intel_lpss_pci i2c_hid i2c_i801 crct10dif_generic intel_lpss crct10dif_pclmul idma64 i2c_smbus usb_common crct10dif_common hid battery fan button video wmi
[27879.222974] CPU: 0 PID: 20895 Comm: kworker/u40:106 Tainted: G W 6.3.0-1-amd64 #1 Debian 6.3.7-1
[27879.222976] Hardware name: Intel(R) Client Systems LAPAC71H/LAPAC71H, BIOS ACADL357.0061.2023.0427.1553 04/27/2023
[27879.222976] Workqueue: events_unbound async_run_entry_fn
[27879.222980] RIP: 0010:hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.223073] Code: 48 8b 5f 50 48 85 db 75 03 48 8b 1f e8 3e 3e 98 df 48 c7 c1 48 7b 9b c0 48 89 da 48 c7 c7 79 dd 9d c0 48 89 c6 e8 15 b7 20 df <0f> 0b eb ad 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3
[27879.223074] RSP: 0018:ffffbf04c7f47d08 EFLAGS: 00010282
[27879.223075] RAX: 0000000000000000 RBX: ffffa03342598e10 RCX: 0000000000000000
[27879.223076] RDX: 0000000000000002 RSI: ffffffffa0c371d5 RDI: 00000000ffffffff
[27879.223077] RBP: ffffa0335c1640e0 R08: ffffffffa28b0de0 R09: ffffa03bcb7b3b12
[27879.223078] R10: ffffffffffffffff R11: ffffa03acb760908 R12: 0000000000000000
[27879.223079] R13: ffffa033786e1f08 R14: ffffffffc0986450 R15: ffffa033d877cd48
[27879.223079] FS: 0000000000000000(0000) GS:ffffa03aab200000(0000) knlGS:0000000000000000
[27879.223080] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[27879.223081] CR2: 0000558ad4c31f86 CR3: 0000000197e20000 CR4: 0000000000f50ef0
[27879.223082] PKRU: 55555554
[27879.223083] Call Trace:
[27879.223083] <TASK>
[27879.223084] ? hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.223177] ? __warn+0x81/0x130
[27879.223180] ? hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.223271] ? report_bug+0x191/0x1c0
[27879.223272] ? _raw_spin_lock_irqsave+0x27/0x60
[27879.223275] ? handle_bug+0x41/0x70
[27879.223278] ? exc_invalid_op+0x17/0x70
[27879.223280] ? asm_exc_invalid_op+0x1a/0x20
[27879.223283] ? hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.223374] ? hsw_wait_for_power_well_enable+0xfb/0x100 [i915]
[27879.223466] hsw_power_well_enable+0x93/0x1a0 [i915]
[27879.223557] intel_power_well_enable+0x5b/0x70 [i915]
[27879.223648] __intel_display_power_get_domain.part.0+0x52/0x70 [i915]
[27879.223742] intel_power_domains_init_hw+0x91/0x5f0 [i915]
[27879.223837] intel_power_domains_resume+0x7f/0xd0 [i915]
[27879.223929] i915_drm_resume_early+0xa1/0x100 [i915]
[27879.223989] ? __pfx_i915_pm_restore_early+0x10/0x10 [i915]
[27879.224047] dpm_run_callback+0x89/0x1e0
[27879.224050] device_resume_early+0x68/0x180
[27879.224053] async_resume_early+0x1e/0x60
[27879.224055] async_run_entry_fn+0x31/0x130
[27879.224059] process_one_work+0x1c5/0x3c0
[27879.224060] worker_thread+0x51/0x390
[27879.224062] ? __pfx_worker_thread+0x10/0x10
[27879.224063] kthread+0xea/0x120
[27879.224066] ? __pfx_kthread+0x10/0x10
[27879.224068] ret_from_fork+0x29/0x50
[27879.224072] </TASK>
[27879.224072] ---[ end trace 0000000000000000 ]---
[27879.225372] ------------[ cut here ]------------
[27879.225375] i915 0000:03:00.0: drm_WARN_ON(intel_de_wait_for_set(dev_priv, ((const i915_reg_t){ .reg = (0x42000) }), (1 << (27 - (pg))), 1))
[27879.225420] WARNING: CPU: 0 PID: 20895 at drivers/gpu/drm/i915/display/intel_display_power_well.c:326 gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.225512] Modules linked in: tun tcp_diag inet_diag snd_seq_dummy snd_hrtimer snd_seq snd_seq_device ccm cmac algif_hash algif_skcipher af_alg qrtr snd_hda_codec_hdmi bnep binfmt_misc ext4 nls_ascii mbcache nls_cp437 jbd2 vfat fat intel_rapl_msr intel_rapl_common x86_pkg_temp_thermal intel_powerclamp iwlmvm coretemp btusb snd_sof_pci_intel_tgl btrtl kvm_intel snd_sof_intel_hda_common btbcm btintel btmtk kvm soundwire_intel mac80211 soundwire_generic_allocation bluetooth soundwire_cadence snd_sof_intel_hda snd_sof_pci snd_sof_xtensa_dsp snd_sof snd_hda_codec_realtek irqbypass snd_sof_utils snd_hda_codec_generic snd_soc_hdac_hda snd_hda_ext_core snd_soc_acpi_intel_match snd_soc_acpi ghash_clmulni_intel libarc4 snd_soc_core iwlwifi snd_compress jitterentropy_rng soundwire_bus aesni_intel snd_hda_intel snd_intel_dspcfg sha512_ssse3 crypto_simd snd_intel_sdw_acpi cfg80211 sha512_generic snd_hda_codec cryptd ctr uvcvideo snd_hda_core videobuf2_vmalloc drbg uvc videobuf2_memops videobuf2_v4l2 snd_hwdep asus_wmi ansi_cprng
[27879.225543] rapl snd_pcm ledtrig_audio pmt_telemetry platform_profile ecdh_generic mei_hdcp mei_pxp intel_cstate pmt_class mei_gsc videodev ucsi_acpi wmi_bmof wdat_wdt intel_uncore snd_timer mei_me typec_ucsi videobuf2_common watchdog roles pcspkr snd ecc mei mc soundcore joydev crc16 rfkill typec intel_vsec igen6_edac acpi_pad intel_hid intel_pmc_core acpi_tad sparse_keymap ac hid_multitouch evdev serio_raw parport_pc ppdev lp parport dm_mod fuse loop efi_pstore configfs efivarfs ip_tables x_tables autofs4 btrfs blake2b_generic xor raid6_pq libcrc32c crc32c_generic usbhid i915 drm_buddy i2c_algo_bit drm_display_helper cec rc_core ttm nvme drm_kms_helper nvme_core hid_generic xhci_pci t10_pi xhci_hcd crc64_rocksoft crc64 drm thunderbolt crc_t10dif i2c_hid_acpi usbcore igc crc32_pclmul crc32c_intel intel_lpss_pci i2c_hid i2c_i801 crct10dif_generic intel_lpss crct10dif_pclmul idma64 i2c_smbus usb_common crct10dif_common hid battery fan button video wmi
[27879.225580] CPU: 0 PID: 20895 Comm: kworker/u40:106 Tainted: G W 6.3.0-1-amd64 #1 Debian 6.3.7-1
[27879.225581] Hardware name: Intel(R) Client Systems LAPAC71H/LAPAC71H, BIOS ACADL357.0061.2023.0427.1553 04/27/2023
[27879.225582] Workqueue: events_unbound async_run_entry_fn
[27879.225585] RIP: 0010:gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.225677] Code: 48 8b 5f 50 48 85 db 75 03 48 8b 1f e8 58 3f 98 df 48 c7 c1 d8 7a 9b c0 48 89 da 48 c7 c7 79 dd 9d c0 48 89 c6 e8 2f b8 20 df <0f> 0b 5b c3 cc cc cc cc 0f 1f 80 00 00 00 00 90 90 90 90 90 90 90
[27879.225678] RSP: 0018:ffffbf04c7f47d18 EFLAGS: 00010286
[27879.225679] RAX: 0000000000000000 RBX: ffffa03342598e10 RCX: 0000000000000000
[27879.225680] RDX: 0000000000000002 RSI: ffffffffa0c371d5 RDI: 00000000ffffffff
[27879.225681] RBP: ffffa0335c1640e0 R08: ffffffffa28b0de0 R09: ffffa03bcb7b4e92
[27879.225682] R10: ffffffffffffffff R11: ffffa03acb760e00 R12: 0000000000000008
[27879.225682] R13: ffffa033786e1f08 R14: ffffffffc0986450 R15: ffffa033d877cd48
[27879.225683] FS: 0000000000000000(0000) GS:ffffa03aab200000(0000) knlGS:0000000000000000
[27879.225684] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[27879.225685] CR2: 0000558ad4c31f86 CR3: 0000000197e20000 CR4: 0000000000f50ef0
[27879.225686] PKRU: 55555554
[27879.225687] Call Trace:
[27879.225687] <TASK>
[27879.225688] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.225780] ? __warn+0x81/0x130
[27879.225783] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.225874] ? report_bug+0x191/0x1c0
[27879.225875] ? _raw_spin_lock_irqsave+0x27/0x60
[27879.225878] ? handle_bug+0x41/0x70
[27879.225881] ? exc_invalid_op+0x17/0x70
[27879.225883] ? asm_exc_invalid_op+0x1a/0x20
[27879.225886] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.225978] ? gen9_wait_for_power_well_fuses+0x71/0x80 [i915]
[27879.226071] hsw_power_well_enable+0x153/0x1a0 [i915]
[27879.226173] intel_power_well_enable+0x5b/0x70 [i915]
[27879.226266] __intel_display_power_get_domain.part.0+0x52/0x70 [i915]
[27879.226362] intel_power_domains_init_hw+0x91/0x5f0 [i915]
[27879.226458] intel_power_domains_resume+0x7f/0xd0 [i915]
[27879.226551] i915_drm_resume_early+0xa1/0x100 [i915]
[27879.226612] ? __pfx_i915_pm_restore_early+0x10/0x10 [i915]
[27879.226672] dpm_run_callback+0x89/0x1e0
[27879.226674] device_resume_early+0x68/0x180
[27879.226677] async_resume_early+0x1e/0x60
[27879.226680] async_run_entry_fn+0x31/0x130
[27879.226683] process_one_work+0x1c5/0x3c0
[27879.226685] worker_thread+0x51/0x390
[27879.226686] ? __pfx_worker_thread+0x10/0x10
[27879.226688] kthread+0xea/0x120
[27879.226690] ? __pfx_kthread+0x10/0x10
[27879.226692] ret_from_fork+0x29/0x50
[27879.226696] </TASK>
[27879.226696] ---[ end trace 0000000000000000 ]---
[27879.542171] ACPI: EC: event unblocked
[27879.542424] usb usb1: root hub lost power or was reset
[27879.542435] usb usb2: root hub lost power or was reset
[27879.555887] usb usb3: root hub lost power or was reset
[27879.555892] usb usb4: root hub lost power or was reset
[27879.557587] i915 0000:03:00.0: [drm] GT0: GuC firmware i915/dg2_guc_70.bin version 70.5.1
[27879.557591] i915 0000:03:00.0: [drm] GT0: HuC firmware i915/dg2_huc_gsc.bin version 7.10.3
[27879.560337] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin version 70.5.1
[27879.560344] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/tgl_huc.bin version 7.9.3
[27879.570903] i915 0000:03:00.0: [drm] GT0: GUC: submission enabled
[27879.570906] i915 0000:03:00.0: [drm] GT0: GUC: SLPC enabled
[27879.571234] i915 0000:03:00.0: [drm] GuC RC: enabled
[27879.572733] i915 0000:03:00.0: [drm] *ERROR* Writing dc state to 0x1 failed, now 0x0
[27879.574851] i915 0000:00:02.0: [drm] HuC authenticated
[27879.575221] i915 0000:00:02.0: [drm] GT0: GUC: submission enabled
[27879.575222] i915 0000:00:02.0: [drm] GT0: GUC: SLPC enabled
[27879.575678] i915 0000:00:02.0: [drm] GuC RC: enabled

```

 

@andreineustroev @MAHDTech While, you can utilize the DG2 by setting env like this `DRI_PRIME=1`.

 

0 Kudos
Goodspeed
Beginner
973 Views

I believe the issue was fixed at some point. With the debian sid kernel of 6.3.0-1-amd64, that still exists.

But I built a bleeding edge kernel just now. It seems the issue was fixed.

 

Kernel version: Linux version 6.5.0-rc3 (goodspeed@intlnuc) (gcc (Debian 12.3.0-6) 12.3.0, GNU ld (GNU Binutils for Debian) 2.40.90.20230720) #5 SMP PREEMPT_DYNAMIC Sat Jul 29 12:12:27 CST 2023

0 Kudos
Reply