Re: Making drm_gpuvm work across gpu devices

2024-01-26 Thread Christian König
Am 25.01.24 um 19:37 schrieb Zeng, Oak: -Original Message- From: Felix Kuehling Sent: Thursday, January 25, 2024 12:16 PM To: Zeng, Oak; Christian König ; Danilo Krummrich; Dave Airlie; Daniel Vetter; Shah, Ankur N ; Winiarski, Michal Cc: Welty, Brian;dri-devel@lists.freedesktop.org; inte

Re: [PATCH 01/19] drm/dp: Add drm_dp_max_dprx_data_rate()

2024-01-26 Thread Imre Deak
On Fri, Jan 26, 2024 at 01:36:02PM +0200, Ville Syrjälä wrote: > On Tue, Jan 23, 2024 at 12:28:32PM +0200, Imre Deak wrote: > > Copy intel_dp_max_data_rate() to DRM core. It will be needed by a > > follow-up DP tunnel patch, checking the maximum rate the DPRX (sink) > > supports. Accordingly use th

Re: [PATCH v3] drm/ttm: Make sure the mapped tt pages are decrypted when needed

2024-01-26 Thread Christian König
Am 26.01.24 um 06:10 schrieb Zack Rusin: On Fri, Jan 5, 2024 at 8:51 AM Zack Rusin wrote: Some drivers require the mapped tt pages to be decrypted. In an ideal world this would have been handled by the dma layer, but the TTM page fault handling would have to be rewritten to able to do that. A

Rework TTMs busy handling

2024-01-26 Thread Christian König
Hi guys, so pushed the first few patches from this series. I hope that I correctly managed to resolve the silent Xe merge conflict in drm-tip, but would be nice if somebody could double check. Then for the two remaining patches I've implemented most of what Thomas suggest, e.g. the existing funct

[PATCH 1/2] drm/ttm: improve idle/busy handling v4

2024-01-26 Thread Christian König
Previously we would never try to move a BO into the preferred placements when it ever landed in a busy placement since those were considered compatible. Rework the whole handling and finally unify the idle and busy handling. ttm_bo_validate() is now responsible to try idle placement first and then

[PATCH 2/2] drm/amdgpu: use GTT only as fallback for VRAM|GTT

2024-01-26 Thread Christian König
Try to fill up VRAM as well by setting the busy flag on GTT allocations. This fixes the issue that when VRAM was evacuated for suspend it's never filled up again unless the application is restarted. Signed-off-by: Christian König Reviewed-by: Zack Rusin --- drivers/gpu/drm/amd/amdgpu/amdgpu_ob

[GIT PULL] drm-misc-fixes

2024-01-26 Thread Inki Dae
Hi Dave and Daniel, Just one regression fixup to samsung-dsim.c module. I attempted a pull request on the drm-misc tree but encountered a permission issue. In response to this, I've created an issue[1] on gitlab.freedesktop.org. Therefore, I added the drm-misc tree as a remote to

Re: drm: Stable identification of connectors?

2024-01-26 Thread Dave Stevenson
Hi Joerg On Fri, 26 Jan 2024 at 10:45, Albert, Joerg (TT-U) wrote: > Hi, > > > > I’m pretty new to DRM/DRI and wonder if there is a way to have a stable > identification of connectors across changes in the Linux kernel and/or in > the devicetree? > > > > Our hardware contains an iMX8QM with two

Re: [PATCH v3 3/3] dt-bindings: mfd: atmel,hlcdc: Convert to DT schema format

2024-01-26 Thread Dharma.B
Hi Conor, On 25/01/24 1:57 pm, Conor Dooley - M52691 wrote: > >>> If the lvds pll is an input to the hlcdc, you need to add it here. >>> From your description earlier it does sound like it is an input to >>> the hlcdc, but now you are claiming that it is not. >> >> The LVDS PLL serves as an inp

Re: drm: Stable identification of connectors?

2024-01-26 Thread Pekka Paalanen
On Fri, 26 Jan 2024 10:30:10 + "Albert, Joerg (TT-U)" wrote: > Hi, > > > I’m pretty new to DRM/DRI and wonder if there is a way to have a > stable identification of connectors across changes in the Linux > kernel and/or in the devicetree? > > Our hardware contains an iMX8QM with two displa

[PATCH] drm/xe/display: Fix memleak in display initialization

2024-01-26 Thread wangxiaoming321
intel_power_domains_init has been called twice in xe_device_probe: xe_device_probe -> xe_display_init_nommio -> intel_power_domains_init(xe) xe_device_probe -> xe_display_init_noirq -> intel_display_driver_probe_noirq -> intel_power_domains_init(i915) It needs add a flag to avoid power_domains->po

Re: [PATCH] drm/xe/display: Fix memleak in display initialization

2024-01-26 Thread Ville Syrjälä
On Fri, Jan 26, 2024 at 10:34:33PM +0800, wangxiaoming321 wrote: > intel_power_domains_init has been called twice in xe_device_probe: > xe_device_probe -> xe_display_init_nommio -> intel_power_domains_init(xe) > xe_device_probe -> xe_display_init_noirq -> intel_display_driver_probe_noirq > -> intel

[PULL] drm-intel-fixes

2024-01-26 Thread Joonas Lahtinen
Hi Dave & Sima, Just one Cc stable patch (the rest was already in drm-intel-next-fixes). Tried to wait for CI results, but none yet. Best Regards, Joonas *** drm-intel-fixes-2024-01-26: - PSR fix for HSW The following changes since commit 6613476e225e090cc9aad49be7fa504e290dd33d: Linux 6.

Re: drm: Stable identification of connectors?

2024-01-26 Thread Pekka Paalanen
On Fri, 26 Jan 2024 14:18:36 + Dave Stevenson wrote: > Raspberry Pi 5 has a similar issue that it has two independent DRM driver > instances each initialising a DSI connector. Which one gets assigned DSI-1 > vs DSI-2 is down to probe order, and can change between boots. > You also have the si

[PATCH RFC for upstream 3/4] arm64: dts: imx8mp-phyboard-pollux-rdk: add etml panel support

2024-01-26 Thread Yannic Moog
The imx8mp-phyboard-pollux has on-board lvds interface connections. An edt,etml1010g3dra panel is supported for this interface. Add device tree nodes for backlight and panel. Signed-off-by: Yannic Moog --- .../dts/freescale/imx8mp-phyboard-pollux-rdk.dts | 74 ++ 1 file cha

[PATCH RFC for upstream 2/4] drm/panel: simple: Add EDT ETML1010G3DRA panel

2024-01-26 Thread Yannic Moog
From: Primoz Fiser Add support for the EDT ETML1010G3DRA 10.1" 1280x800 LVDS panel. Datasheet can be found at [1]. [1] https://www.glynshop.com/erp/owweb/Daten/DSS/EDT/Products/Specifications/Active%20Displays/ETML1010G3DRA%20Ver.3-RoHS.pdf Signed-off-by: Primoz Fiser Signed-off-by: Yannic Mo

[PATCH RFC for upstream 0/4] Add support for ETML1010G3DRA LVDS display on phyBOARD-Pollux

2024-01-26 Thread Yannic Moog
This series adds the LVDS panel support in simple-panel, introduces device tree support for the LVDS panel on the phyBOARD-Pollux and enables the FSL_LDB config option needed for the driver for the imx8mp ldb bridge. --- Primoz Fiser (1): drm/panel: simple: Add EDT ETML1010G3DRA panel Yanni

[PATCH RFC for upstream 1/4] dt-bindings: display: panel-simple: add ETML1010G3DRA

2024-01-26 Thread Yannic Moog
Add Emerging Display Technology Corp. etml1010g3dra 10.1" LCD-TFT LVDS panel compatible string. Signed-off-by: Yannic Moog --- Documentation/devicetree/bindings/display/panel/panel-simple.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/display/panel/p

[PATCH RFC for upstream 4/4] arm64: defconfig: enable i.MX8MP ldb bridge

2024-01-26 Thread Yannic Moog
Enable the i.MX8MP LDB driver used for display support of the i.MX8MP LVDS interface. Signed-off-by: Yannic Moog --- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index b60aa1f89343..acd71548cf29 10064

Re: [PATCH v5 040/111] pwm: Provide devm_pwmchip_alloc() function

2024-01-26 Thread Alex Elder
On 1/25/24 6:09 AM, Uwe Kleine-König wrote: This function allocates a struct pwm_chip and driver data. Compared to the status quo the split into pwm_chip and driver data is new, otherwise it doesn't change anything relevant (yet). The intention is that after all drivers are switched to use this

Re: [PATCH v3 1/2] pm: runtime: Simplify pm_runtime_get_if_active() usage

2024-01-26 Thread Alex Elder
On 1/22/24 5:41 AM, Sakari Ailus wrote: There are two ways to opportunistically increment a device's runtime PM usage count, calling either pm_runtime_get_if_active() or pm_runtime_get_if_in_use(). The former has an argument to tell whether to ignore the usage count or not, and the latter simply

Re: [PATCH v3 3/3] dt-bindings: mfd: atmel,hlcdc: Convert to DT schema format

2024-01-26 Thread Conor Dooley
On Fri, Jan 26, 2024 at 02:22:42PM +, dharm...@microchip.com wrote: > On 25/01/24 1:57 pm, Conor Dooley - M52691 wrote: > > > >>> If the lvds pll is an input to the hlcdc, you need to add it here. > >>> From your description earlier it does sound like it is an input to > >>> the hlcdc, but n

[PATCH] drm/xe/display: Fix memleak in display initialization

2024-01-26 Thread wangxiaoming321
intel_power_domains_init has been called twice in xe_device_probe: xe_device_probe -> xe_display_init_nommio -> intel_power_domains_init(xe) xe_device_probe -> xe_display_init_noirq -> intel_display_driver_probe_noirq -> intel_power_domains_init(i915) It needs remove one to avoid power_domains->po

[PATCH v4 0/8] drm/amd/display: Introduce KUnit to Display Mode Library

2024-01-26 Thread Rodrigo Siqueira
In 2022, we got a great patchset from a GSoC project introducing unit tests to the amdgpu display. Since version 3, this effort was put on hold, and now I'm attempting to revive it. I'll add part of the original cover letter at the bottom of this cover letter, but you can read all the original mess

[PATCH v4 1/8] drm/amd/display: Introduce KUnit tests for fixed31_32 library

2024-01-26 Thread Rodrigo Siqueira
From: Tales Aparecida The fixed31_32 library performs a lot of the mathematical operations involving fixed-point arithmetic and the conversion of integers to fixed-point representation. This unit tests intend to assure the proper functioning of the basic mathematical operations of fixed-point ar

[PATCH v4 4/8] drm/amd/display: Introduce KUnit tests to the display_mode_vba library

2024-01-26 Thread Rodrigo Siqueira
From: Maíra Canal The display_mode_vba library deals with hundreds of display parameters and sometimes does it in odd ways. The addition of unit tests intends to assure the quality of the code delivered by HW engineers and, also make it possible to refactor the code decreasing concerns about addi

[PATCH v4 2/8] drm/amd/display: Introduce KUnit tests to the bw_fixed library

2024-01-26 Thread Rodrigo Siqueira
From: Maíra Canal KUnit unifies the test structure and provides helper tools that simplify the development of tests. Basic use case allows running tests as regular processes, which makes easier to run unit tests on a development machine and to integrate the tests in a CI system. This commit intr

[PATCH v4 3/8] drm/amd/display: Introduce KUnit tests to display_rq_dlg_calc_20

2024-01-26 Thread Rodrigo Siqueira
From: Isabella Basso This adds tests to the bit encoding format verification functions on the file. They're meant to be simpler so as to provide a proof of concept on testing DML code. Signed-off-by: Isabella Basso Signed-off-by: Maíra Canal --- drivers/gpu/drm/amd/display/Kconfig |

[PATCH v4 7/8] drm/amd/display: Introduce KUnit tests to dc_dmub_srv library

2024-01-26 Thread Rodrigo Siqueira
From: Maíra Canal Add a unit test to the SubVP feature in order to avoid possible regressions and ensure code robustness. In particular, this new test validates the expected parameters when using 4k144 and 4k240 displays. Signed-off-by: Maíra Canal Signed-off-by: Rodrigo Siqueira Reported-by:

[PATCH v4 5/8] drm/amd/display: Introduce KUnit to dcn20/display_mode_vba_20 library

2024-01-26 Thread Rodrigo Siqueira
From: Maíra Canal The display_mode_vba_20 deals with hundreds of display parameters for the DCN20 and sometimes does it in odd ways. The addition of unit tests intends to assure the quality of the code delivered by HW engineers and, also make it possible to refactor the code decreasing concerns a

[PATCH v4 8/8] Documentation/gpu: Add Display Core Unit Test documentation

2024-01-26 Thread Rodrigo Siqueira
From: Maíra Canal Explain how to run the KUnit tests present in the AMDGPU's Display Core and clarify which architectures and tools can be used to run the tests. Moreover, explains how to add new tests to the existing tests. Signed-off-by: Maíra Canal --- .../gpu/amdgpu/display/display-test.rs

[PATCH v4 6/8] drm/amd/display: Introduce KUnit tests for dcn20_fpu

2024-01-26 Thread Rodrigo Siqueira
From: Magali Lemes This commit adds unit tests to the functions dcn20_cap_soc_clocks and dcn21_update_bw_bounding_box from dcn20/dcn20_fpu. Signed-off-by: Magali Lemes Signed-off-by: Maíra Canal --- drivers/gpu/drm/amd/display/tests/Makefile| 3 +- .../tests/dc/dml/dcn20/dcn20_fpu_test.

Re: [PATCH RFC for upstream 1/4] dt-bindings: display: panel-simple: add ETML1010G3DRA

2024-01-26 Thread Conor Dooley
Hey, On Fri, Jan 26, 2024 at 09:57:23AM +0100, Yannic Moog wrote: > Add Emerging Display Technology Corp. etml1010g3dra 10.1" LCD-TFT LVDS > panel compatible string. > > Signed-off-by: Yannic Moog > [PATCH RFC for upstream 1/4] The "for upstream" here is not really relevant, what else would th

Re: [PATCH v19 22/30] drm/shmem-helper: Add common memory shrinker

2024-01-26 Thread Dmitry Osipenko
On 1/26/24 12:55, Boris Brezillon wrote: > On Fri, 26 Jan 2024 00:56:47 +0300 > Dmitry Osipenko wrote: > >> On 1/25/24 13:19, Boris Brezillon wrote: >>> On Fri, 5 Jan 2024 21:46:16 +0300 >>> Dmitry Osipenko wrote: >>> +static bool drm_gem_shmem_is_evictable(struct drm_gem_shmem_object *

Re: [PATCH] drm/sched: Drain all entities in DRM sched run job worker

2024-01-26 Thread Matthew Brost
On Fri, Jan 26, 2024 at 11:32:57AM +0100, Christian König wrote: > Am 25.01.24 um 18:30 schrieb Matthew Brost: > > On Thu, Jan 25, 2024 at 04:12:58PM +0100, Christian König wrote: > > > > > > Am 24.01.24 um 22:08 schrieb Matthew Brost: > > > > All entities must be drained in the DRM scheduler run

Re: [Linaro-mm-sig] [PATCH v5 1/6] dma-buf: Add dma_buf_{begin,end}_access()

2024-01-26 Thread Christian König
Am 25.01.24 um 19:01 schrieb Daniel Vetter: On Thu, Jan 25, 2024 at 04:00:16PM +0100, Christian König wrote: Am 24.01.24 um 11:58 schrieb Paul Cercueil: [SNIP] The problem was then that dma_buf_unmap_attachment cannot be called before the dma_fence is signaled, and calling it after is already

Re: [PATCH v19 09/30] drm/shmem-helper: Add and use lockless drm_gem_shmem_get_pages()

2024-01-26 Thread Dmitry Osipenko
On 1/26/24 13:18, Boris Brezillon wrote: > On Thu, 25 Jan 2024 18:24:04 +0100 > Daniel Vetter wrote: > >> On Fri, Jan 05, 2024 at 09:46:03PM +0300, Dmitry Osipenko wrote: >>> Add lockless drm_gem_shmem_get_pages() helper that skips taking reservation >>> lock if pages_use_count is non-zero, lever

[PATCH] drm/etnaviv: switch devcoredump allocations to GFP_NOWAIT

2024-01-26 Thread Lucas Stach
The etnaviv devcoredump is created in the GPU reset path, which must make forward progress to avoid stalling memory reclaim on unsignalled dma fences. The currently used __GFP_NORETRY does not prohibit sleeping on direct reclaim, breaking the forward progress guarantee. Switch to GFP_NOWAIT, which

[PATCH] drm/etnaviv: fix DMA direction handling for cached read/write buffers

2024-01-26 Thread Lucas Stach
The dma sync operation needs to be done with DMA_BIDIRECTIONAL when the BO is prepared for both read and write operations. With the current inverted if ladder it would only be synced for DMA_FROM_DEVICE. Fixes: a8c21a5451d8 ("drm/etnaviv: add initial etnaviv DRM driver") Signed-off-by: Lucas Stach

[RFC PATCH 1/2] drm/amd/display: fix null-pointer dereference on edid reading

2024-01-26 Thread Melissa Wen
Use drm_edid helpers to fix a null-pointer derefence that happens when running igt@kms_force_connector_basic in a system with DCN2.1 and HDMI connector detected as below: [ +0.178146] BUG: kernel NULL pointer dereference, address: 04c0 [ +0.10] #PF: supervisor read access in kern

[RFC PATCH 2/2] drm/amd/display: switch amdgpu_dm_connector to use struct drm_edid

2024-01-26 Thread Melissa Wen
Replace raw edid handling (struct edid) with the opaque EDID type (struct drm_edid) on amdgpu_dm_connector for consistency. It may also prevent mismatch of approaches in different parts of the driver code. Working in progress. There are a couple of cast warnings and it was only tested with IGT. Si

[RFC PATCH 0/2] drm/amd/display: switch amdgpu_dm_connector to

2024-01-26 Thread Melissa Wen
Hi, I'm debugging a null-pointer dereference when running igt@kms_connector_force_edid and the way I found to solve the bug is to stop using raw edid handler in amdgpu_connector_funcs_force and create_eml_sink in favor of managing resouces via sruct drm_edid helpers (Patch 1). The proper solution

Re: [PATCH RFC for upstream 2/4] drm/panel: simple: Add EDT ETML1010G3DRA panel

2024-01-26 Thread Jessica Zhang
On 1/26/2024 12:57 AM, Yannic Moog wrote: From: Primoz Fiser Add support for the EDT ETML1010G3DRA 10.1" 1280x800 LVDS panel. Datasheet can be found at [1]. [1] https://www.glynshop.com/erp/owweb/Daten/DSS/EDT/Products/Specifications/Active%20Displays/ETML1010G3DRA%20Ver.3-RoHS.pdf Signed

Re: [PATCH v2 7/9] accel/ivpu: Disable buffer sharing among VPU contexts

2024-01-26 Thread Jeffrey Hugo
On 1/15/2024 6:44 AM, Jacek Lawrynowicz wrote: This was not supported properly. A buffer was imported to another VPU context as a separate buffer object with duplicated sgt. Both exported and imported buffers could be DMA mapped causing a double mapping on the same device. Buffers imported from

Re: [PATCH v2 8/9] accel/ivpu: Improve buffer object debug logs

2024-01-26 Thread Jeffrey Hugo
On 1/15/2024 6:44 AM, Jacek Lawrynowicz wrote: Make debug logs more readable and consistent: - don't print handle as it is not always available for all buffers - use hashed ivpu_bo ptr as main buffer identifier - remove unused fields from ivpu_bo_print_info() Signed-off-by: Jacek Lawryn

Re: [PATCH v3 1/2] pm: runtime: Simplify pm_runtime_get_if_active() usage

2024-01-26 Thread Sakari Ailus
Hi Alex, On Fri, Jan 26, 2024 at 09:12:02AM -0600, Alex Elder wrote: > On 1/22/24 5:41 AM, Sakari Ailus wrote: > > There are two ways to opportunistically increment a device's runtime PM > > usage count, calling either pm_runtime_get_if_active() or > > pm_runtime_get_if_in_use(). The former has an

Re: [Linaro-mm-sig] [PATCH 2/3] udmabuf: Sync buffer mappings for attached devices

2024-01-26 Thread Andrew Davis
On 1/25/24 2:30 PM, Daniel Vetter wrote: On Tue, Jan 23, 2024 at 04:12:26PM -0600, Andrew Davis wrote: Currently this driver creates a SGT table using the CPU as the target device, then performs the dma_sync operations against that SGT. This is backwards to how DMA-BUFs are supposed to behave. T

Re: [PATCH v2 9/9] accel/ivpu: Deprecate DRM_IVPU_PARAM_CONTEXT_PRIORITY param

2024-01-26 Thread Jeffrey Hugo
On 1/15/2024 6:44 AM, Jacek Lawrynowicz wrote: From: "Wachowski, Karol" DRM_IVPU_PARAM_CONTEXT_PRIORITY has been deprecated because it has been replaced with DRM_IVPU_JOB_PRIORITY levels set with submit IOCTL and was unused anyway. Signed-off-by: Wachowski, Karol Signed-off-by: Jacek Lawrynow

Re: [PATCH v5 040/111] pwm: Provide devm_pwmchip_alloc() function

2024-01-26 Thread Uwe Kleine-König
Hello Alex, On Fri, Jan 26, 2024 at 08:56:33AM -0600, Alex Elder wrote: > On 1/25/24 6:09 AM, Uwe Kleine-König wrote: > > This function allocates a struct pwm_chip and driver data. Compared to > > the status quo the split into pwm_chip and driver data is new, otherwise > > it doesn't change anythi

Re: [PATCH v11 14/26] locking/lockdep, cpu/hotplus: Use a weaker annotation in AP thread

2024-01-26 Thread Thomas Gleixner
On Wed, Jan 24 2024 at 20:59, Byungchul Park wrote: Why is lockdep in the subsystem prefix here? You are changing the CPU hotplug (not hotplus) code, right? > cb92173d1f0 ("locking/lockdep, cpu/hotplug: Annotate AP thread") was > introduced to make lockdep_assert_cpus_held() work in AP thread. >

Re: [PATCH 2/3] udmabuf: Sync buffer mappings for attached devices

2024-01-26 Thread Andrew Davis
On 1/26/24 1:25 AM, Kasireddy, Vivek wrote: Currently this driver creates a SGT table using the CPU as the target device, then performs the dma_sync operations against that SGT. This is backwards to how DMA-BUFs are supposed to behave. This may have worked for the case where these buffers were gi

Re: [PATCH 1/3] accel/ivpu: Fix dev open/close races with unbind

2024-01-26 Thread Jeffrey Hugo
On 1/22/2024 5:09 AM, Jacek Lawrynowicz wrote: - Add context_list_lock to synchronize user context addition/removal - Use drm_dev_enter() to prevent unbinding the device during ivpu_open() and vpu address allocation Signed-off-by: Jacek Lawrynowicz Reviewed-by: Jeffrey Hugo

Re: [PATCH 2/3] accel/ivpu: Improve stability of ivpu_submit_ioctl()

2024-01-26 Thread Jeffrey Hugo
On 1/22/2024 5:09 AM, Jacek Lawrynowicz wrote: - Wake up the device as late as possible Can you amend with why this is a good idea? - Remove job reference counting in order to simplify the code - Don't put jobs that are not fully submitted on submitted_jobs_xa in order to avoid potential r

Re: [PATCH 3/3] accel/ivpu: Improve recovery and reset support

2024-01-26 Thread Jeffrey Hugo
On 1/22/2024 5:09 AM, Jacek Lawrynowicz wrote: - Synchronize job submission with reset/recovery using reset_lock - Always print recovery reason and call diagnose_failure() - Don't allow for autosupend during recovery - Prevent immediate autosuspend after reset/recovery - Prevent fo

Re: [PATCH v19 22/30] drm/shmem-helper: Add common memory shrinker

2024-01-26 Thread Boris Brezillon
On Fri, 26 Jan 2024 19:27:49 +0300 Dmitry Osipenko wrote: > On 1/26/24 12:55, Boris Brezillon wrote: > > On Fri, 26 Jan 2024 00:56:47 +0300 > > Dmitry Osipenko wrote: > > > >> On 1/25/24 13:19, Boris Brezillon wrote: > >>> On Fri, 5 Jan 2024 21:46:16 +0300 > >>> Dmitry Osipenko wrote: > >

Re: [PATCH 1/7] accel/ivpu: Force snooping for MMU writes

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:27 AM, Jacek Lawrynowicz wrote: From: "Wachowski, Karol" Set AW_SNOOP_OVERRIDE bit in VPU_37/40XX_HOST_IF_TCU_PTW_OVERRIDES to force snooping for MMU write accesses (setting event queue events). MMU event queue buffer is the only buffer written by MMU and mapped as write-back wh

Re: [PATCH 2/7] accel/ivpu: Correct MMU queue size checking functions

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:27 AM, Jacek Lawrynowicz wrote: From: "Wachowski, Karol" Do not use kernel CIRC_SPACE and CIRC_CNT that incorrectly return space of a queue when wrap bit was set. Use correct implementation that compares producer, consumer and wrap bit values. Without this fix it was possible to

Re: [PATCH 3/7] accel/ivpu: Disable d3hot_delay on all NPU generations

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:28 AM, Jacek Lawrynowicz wrote: NPU does not require this delay regardless of the generation. All generations are integrated into the SOC. Signed-off-by: Jacek Lawrynowicz Reviewed-by: Jeffrey Hugo

Re: [RFC PATCH 0/2] drm/amd/display: switch amdgpu_dm_connector to

2024-01-26 Thread Mario Limonciello
On 1/26/2024 10:28, Melissa Wen wrote: Hi, I'm debugging a null-pointer dereference when running igt@kms_connector_force_edid and the way I found to solve the bug is to stop using raw edid handler in amdgpu_connector_funcs_force and create_eml_sink in favor of managing resouces via sruct drm_edi

Re: [PATCH 4/7] accel/ivpu: Gracefully shutdown NPU before reset

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:28 AM, Jacek Lawrynowicz wrote: From: "Wachowski, Karol" Replace forceful disable of power domains with requests to disable TOP NOC CPU_CTRL and HOSTIF_L2CACHE through QREQN. In case of failure retry multiple times following HAS sequence of checking both QACCEPN and QDENYN regis

Re: [PATCH 5/7] accel/ivpu/40xx: Enable D0i3 message

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:28 AM, Jacek Lawrynowicz wrote: From: Krystian Pradzynski All recent 40xx firmware already supports D0i3 entry message and this WA is no longer needed. Can I assume that the workaround only applies to pre-production firmware?

Re: [PATCH 6/7] accel/ivpu/40xx: Stop passing SKU boot parameters to FW

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:28 AM, Jacek Lawrynowicz wrote: From: Krystian Pradzynski This parameter was never used by the 40xx FW. Signed-off-by: Krystian Pradzynski Signed-off-by: Jacek Lawrynowicz Reviewed-by: Jeffrey Hugo

Re: [PATCH 7/7] accel/ivpu: Add job status for jobs aborted by the driver

2024-01-26 Thread Jeffrey Hugo
On 1/26/2024 5:28 AM, Jacek Lawrynowicz wrote: From: Grzegorz Trzebiatowski Add DRM_IVPU_JOB_STATUS_ABORTED to indicate that the job was aborted by the driver due to e.g. TDR or user context MMU faults. This will help UMD and tests distinguish if job was aborted by the FW or the driver. Signe

[PATCH RESEND v3 01/15] drm/msm/dp: drop unused parser definitions

2024-01-26 Thread Dmitry Baryshkov
Drop several unused and obsolete definitions from the dp_parser module. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_parser.h | 46 -- 1 file changed, 46 deletions(-) diff --git a/drivers/gpu/drm/msm/dp/dp_parser.h b/drivers/gpu/drm/msm/dp/d

[PATCH RESEND v3 00/15] drm/msm/dp: clear power and parser submodules away

2024-01-26 Thread Dmitry Baryshkov
Reshuffle code in the DP driver, cleaning up clocks and DT parsing and dropping the dp_power and dp_parser submodules. Initially I started by looking onto stream_pixel clock handling only to find several wrapping layers around a single clocks. After inlining and/or dropping them (and thus dp_power

[PATCH RESEND v3 02/15] drm/msm/dp: drop unused fields from dp_power_private

2024-01-26 Thread Dmitry Baryshkov
Drop unused and obsolete fields from struct dp_power_private. Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_power.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/gpu/drm/msm/dp/dp_power.c b/drivers/gpu/drm/msm/dp/dp_power.c index c4843

[PATCH RESEND v3 03/15] drm/msm/dp: parse DT from dp_parser_get

2024-01-26 Thread Dmitry Baryshkov
It makes little sense to split the submodule get and actual DT parsing. Call dp_parser_parse() directly from dp_parser_get(), so that the parser data is fully initialised once it is returned to the caller. Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_

[PATCH RESEND v3 07/15] drm/msm/dp: stop parsing clock names from DT

2024-01-26 Thread Dmitry Baryshkov
All supported platforms use the same clocks configuration. Instead of parsing names from DT in a pretty complex manner, use the static configuration. If at some point newer (or older) platforms have different clock configuration, this clock config can be moved to the device data. Signed-off-by: Dm

[PATCH RESEND v3 06/15] drm/msm/dp: simplify stream clocks handling

2024-01-26 Thread Dmitry Baryshkov
There is only a single DP_STREAM_PM clock, stream_pixel. Instead of using a separate dss_module_power instance for this single clock, handle this clock directly. This allows us to drop several wrapping functions. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_ctrl.c | 91 +++

[PATCH RESEND v3 12/15] drm/msm/dp: move all IO handling to dp_catalog

2024-01-26 Thread Dmitry Baryshkov
Rather than parsing the I/O addresses from dp_parser and then passing them via a struct pointer to dp_catalog, handle I/O region parsing in dp_catalog and drop it from dp_parser. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_catalog.c | 125 ++-- d

[PATCH RESEND v3 04/15] drm/msm/dp: inline dp_power_(de)init

2024-01-26 Thread Dmitry Baryshkov
In preparation to cleanup of the dp_power module, inline dp_power_init() and dp_power_deinit() functions, which are now just turning the clocks on and off. Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_display.c | 4 ++-- drivers/gpu/drm/msm/dp/dp_pow

[PATCH RESEND v3 10/15] drm/msm/dp: remove PHY handling from dp_catalog.c

2024-01-26 Thread Dmitry Baryshkov
Inline dp_catalog_aux_update_cfg() and call phy_calibrate() from dp_aux functions directly. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_aux.c | 9 +++-- drivers/gpu/drm/msm/dp/dp_aux.h | 1 + drivers/gpu/drm/msm/dp/dp_catalog.c | 12 drivers/gpu/drm/m

[PATCH RESEND v3 11/15] drm/msm/dp: handle PHY directly in dp_ctrl

2024-01-26 Thread Dmitry Baryshkov
There is little point in going trough dp_parser->io indirection each time the driver needs to access the PHY. Store the pointer directly in dp_ctrl_private. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_ctrl.c| 37 + drivers/gpu/drm/msm/dp/

[PATCH RESEND v3 09/15] drm/msm/dp: move phy_configure_opts to dp_ctrl

2024-01-26 Thread Dmitry Baryshkov
There is little point in sharing phy configuration structure between several modules. Move it to dp_ctrl, which becomes the only submodule re-configuring the PHY. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_catalog.c | 19 - drivers/gpu/drm/msm/dp/dp_catalog.h |

[PATCH RESEND v3 08/15] drm/msm/dp: split dp_ctrl_clk_enable into four functuions

2024-01-26 Thread Dmitry Baryshkov
Split the dp_ctrl_clk_enable() beast into four functions, each of them doing just a single item: enabling or disabling core or link clocks. This allows us to cleanup the dss_module_power structure and makes several dp_ctrl functions return void. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/dr

[PATCH RESEND v3 15/15] drm/msm/dp: drop dp_parser

2024-01-26 Thread Dmitry Baryshkov
Finally drop separate "parsing" submodule. There is no need in it anymore. All submodules handle DT properties directly rather than passing them via the separate structure pointer. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/Makefile| 1 - drivers/gpu/drm/msm/dp/dp_aux.h

[PATCH RESEND v3 14/15] drm/msm/dp: move next_bridge handling to dp_display

2024-01-26 Thread Dmitry Baryshkov
Remove two levels of indirection and fetch next bridge directly in dp_display_probe_tail(). Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_display.c | 43 - drivers/gpu/drm/msm/dp/dp_parser.c | 14 drivers/gpu/drm/msm/dp/dp_parser.

[PATCH RESEND v3 05/15] drm/msm/dp: fold dp_power into dp_ctrl module

2024-01-26 Thread Dmitry Baryshkov
The dp_power submodule is limited to handling the clocks only following previous cleanups. Fold it into the dp_ctrl submodule, removing one unnecessary level of indirection. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/Makefile| 1 - drivers/gpu/drm/msm/dp/dp_ctrl.c| 150

[PATCH RESEND v3 13/15] drm/msm/dp: move link property handling to dp_panel

2024-01-26 Thread Dmitry Baryshkov
Instead of passing link properties through the separate struct, parse them directly in the dp_panel. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_display.c | 8 - drivers/gpu/drm/msm/dp/dp_display.h | 1 - drivers/gpu/drm/msm/dp/dp_panel.c | 66 ++

Re: [PATCH] drm: bridge: samsung-dsim: Don't use FORCE_STOP_STATE

2024-01-26 Thread Dave Airlie
Just FYI this conflictted pretty heavily with drm-misc-next changes in the same area, someone should check drm-tip has the correct resolution, I'm not really sure what is definitely should be. Dave. On Fri, 19 Jan 2024 at 16:37, Inki Dae wrote: > > Really sorry for late. Will pick it up. > > Tha

[PATCH 0/2] Fetch EDID from ACPI _DDC method if available

2024-01-26 Thread Mario Limonciello
Some laptops ship an EDID in the BIOS encoded in the _DDC method that differs than the EDID directly on the laptop panel for $REASONS. This is the EDID that is used by the AMD Windows driver, and so sometimes different results are found in different operating systems. This series changes it so th

[PATCH 1/2] ACPI: video: Handle fetching EDID that is longer than 256 bytes

2024-01-26 Thread Mario Limonciello
The ACPI specification allows for an EDID to be up to 512 bytes but the _DDC EDID fetching code will only try up to 256 bytes. Modify the code to instead start at 512 bytes and work it's way down instead. Link: https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/Apx_B_Video_Extensions/output-device-sp

[PATCH 2/2] drm/amd: Fetch the EDID from _DDC if available for eDP

2024-01-26 Thread Mario Limonciello
Some manufacturers have intentionally put an EDID that differs from the EDID on the internal panel on laptops. Attempt to fetch this EDID if it exists and prefer it over the EDID that is provided by the panel. Signed-off-by: Mario Limonciello --- drivers/gpu/drm/amd/amdgpu/amdgpu.h |

[git pull] drm fixes for 6.8-rc2

2024-01-26 Thread Dave Airlie
Hey Linus, Lots going on for rc2, ivpu has a bunch of stabilisation and debugging work, then amdgpu and xe are the main fixes. i915, exynos have a few, then some misc panel and bridge fixes. Worth mentioning are 3 regression reverts. One of the nouveau fixes in 6.7 for a serious deadlock had side

Re: [RFC PATCH 2/2] drm/amd/display: switch amdgpu_dm_connector to use struct drm_edid

2024-01-26 Thread Alex Hung
On 2024-01-26 09:28, Melissa Wen wrote: Replace raw edid handling (struct edid) with the opaque EDID type (struct drm_edid) on amdgpu_dm_connector for consistency. It may also prevent mismatch of approaches in different parts of the driver code. Working in progress. There are a couple of cast

[PATCH 0/5] drm/vmwgfx: Various kms related fixes

2024-01-26 Thread Zack Rusin
A small backlogged series with various fixes mostly related to kms. Use the drm internal kms modelist instead of rolling out own version and fix two issues related to cursor handling. Maaz's patches were already on dri-devel but patchworks doesn't deal very well with changes in email address and

[PATCH 4/5] drm/vmwgfx: Fix vmw_du_get_cursor_mob fencing of newly-created MOBs

2024-01-26 Thread Zack Rusin
From: Martin Krastev The fencing of MOB creation used in vmw_du_get_cursor_mob was incompatible with register-based device communication employed by this routine. As a result cursor MOB creation was racy, leading to potentially broken/missing mouse cursor on desktops using CursorMob device featur

[PATCH 3/5] drm/vmwgfx: Add SPDX header to vmwgfx_drm.h

2024-01-26 Thread Zack Rusin
From: Maaz Mombasawala Update vmwgfx_drm.h with SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT Signed-off-by: Maaz Mombasawala Reviewed-by: Martin Krastev Signed-off-by: Zack Rusin --- include/uapi/drm/vmwgfx_drm.h | 1 + 1 file changed, 1 insertion(+) diff --git a/includ

[PATCH 2/5] drm/vmwgfx: Make all surfaces shareable

2024-01-26 Thread Zack Rusin
From: Maaz Mombasawala There is no real need to have a separate pool for shareable and non-shareable surfaces. Make all surfaces shareable, regardless of whether the drm_vmw_surface_flag_shareable has been specified. Signed-off-by: Maaz Mombasawala Reviewed-by: Martin Krastev Signed-off-by: Za

[PATCH 5/5] drm/vmwgfx: Fix the lifetime of the bo cursor memory

2024-01-26 Thread Zack Rusin
The cleanup can be dispatched while the atomic update is still active, which means that the memory acquired in the atomic update needs to not be invalidated by the cleanup. The buffer objects in vmw_plane_state instead of using the builtin map_and_cache were trying to handle the lifetime of the map

[PATCH 1/5] drm/vmwgfx: Refactor drm connector probing for display modes

2024-01-26 Thread Zack Rusin
From: Martin Krastev Implement drm_connector_helper_funcs.mode_valid and .get_modes, replacing custom drm_connector_funcs.fill_modes code with drm_helper_probe_single_connector_modes; for STDU, LDU & SOU display units. Signed-off-by: Martin Krastev Reviewed-by: Zack Rusin Signed-off-by: Zack R

RE: Making drm_gpuvm work across gpu devices

2024-01-26 Thread Zeng, Oak
> -Original Message- > From: Christian König > Sent: Friday, January 26, 2024 5:10 AM > To: Zeng, Oak ; David Airlie > Cc: Ghimiray, Himal Prasad ; > thomas.hellst...@linux.intel.com; Winiarski, Michal > ; Felix Kuehling ; Welty, > Brian ; Shah, Ankur N ; dri- > de...@lists.freedesktop.

Re: [PATCH RESEND v3 00/15] drm/msm/dp: clear power and parser submodules away

2024-01-26 Thread Dmitry Baryshkov
On Fri, 26 Jan 2024 at 20:26, Dmitry Baryshkov wrote: > > Reshuffle code in the DP driver, cleaning up clocks and DT parsing and > dropping the dp_power and dp_parser submodules. > > Initially I started by looking onto stream_pixel clock handling only to > find several wrapping layers around a sin

Re: [PATCH v3 4/4] arm64: dts: rockchip: Add devicetree for Pine64 PineTab2

2024-01-26 Thread Manuel Traut
Hello Ondřej, On Fri, Jan 05, 2024 at 05:48:46PM +0100, Ondřej Jirman wrote: > On Fri, Jan 05, 2024 at 05:11:03PM +0100, Manuel Traut wrote: > > On Wed, Jan 03, 2024 at 10:42:54AM +0100, Ondřej Jirman wrote: > > > Hello Manuel, > > > > > > a few more things I noticed: > > > > > > On Tue, Jan 02,

Re: [git pull] drm fixes for 6.8-rc2

2024-01-26 Thread pr-tracker-bot
The pull request you sent on Sat, 27 Jan 2024 04:56:27 +1000: > git://anongit.freedesktop.org/drm/drm tags/drm-fixes-2024-01-27 has been merged into torvalds/linux.git: https://git.kernel.org/torvalds/c/168174d78157bba1315d5f8e1c66548b92c84ae9 Thank you! -- Deet-doot-dot, I am a bot. https://k

Re: Re: [PATCH 3/5] drm/ttm: replace busy placement with flags v6

2024-01-26 Thread Lucas De Marchi
On Thu, Jan 18, 2024 at 05:38:16PM +0100, Thomas Hellström wrote: On 1/17/24 13:27, Thomas Hellström wrote: On 1/17/24 11:47, Thomas Hellström wrote: Hi, Christian Xe changes look good. Will send the series to xe ci to check for regressions. Hmm, there are some checkpatch warnings about a

Re: [PATCH RESEND v3 01/15] drm/msm/dp: drop unused parser definitions

2024-01-26 Thread Kuogee Hsieh
On 1/26/2024 10:26 AM, Dmitry Baryshkov wrote: Drop several unused and obsolete definitions from the dp_parser module. Signed-off-by: Dmitry Baryshkov Tested-by: Kuogee Hsieh Reviewed-by: Kuogee Hsieh --- drivers/gpu/drm/msm/dp/dp_parser.h | 46 -- 1

Re: [PATCH RESEND v3 02/15] drm/msm/dp: drop unused fields from dp_power_private

2024-01-26 Thread Kuogee Hsieh
On 1/26/2024 10:26 AM, Dmitry Baryshkov wrote: Drop unused and obsolete fields from struct dp_power_private. Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov Tested-by: Kuogee Hsieh Reviewed-by: Kuogee Hsieh --- drivers/gpu/drm/msm/dp/dp_power.c | 3 --- 1 file changed, 3 de

Re: [PATCH RESEND v3 03/15] drm/msm/dp: parse DT from dp_parser_get

2024-01-26 Thread Kuogee Hsieh
On 1/26/2024 10:26 AM, Dmitry Baryshkov wrote: It makes little sense to split the submodule get and actual DT parsing. Call dp_parser_parse() directly from dp_parser_get(), so that the parser data is fully initialised once it is returned to the caller. Reviewed-by: Konrad Dybcio Signed-off-by

Re: [PATCH RESEND v3 04/15] drm/msm/dp: inline dp_power_(de)init

2024-01-26 Thread Kuogee Hsieh
On 1/26/2024 10:26 AM, Dmitry Baryshkov wrote: In preparation to cleanup of the dp_power module, inline dp_power_init() and dp_power_deinit() functions, which are now just turning the clocks on and off. Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov Tested-by: Kuogee Hsieh Revi

  1   2   >