- Mar 28, 2025
-
-
Hibernate bricks the machine if a discrete GPU was disabled via echo IGD > /sys/kernel/debug/vgaswitcheroo/switch The freeze and thaw handler lacks checking the GPU power state, as suspend and resume do. This patch add the checks and fix this issue. Signed-off-by:
Christoph Rudorff <chris@rudorff.com> Signed-off-by:
Lyude Paul <lyude@redhat.com> Link: https://lore.kernel.org/r/20250325-nouveau-fix-hibernate-v2-1-2bd5c13fb953@rudorff.com
-
Lizhi Hou authored
Add amdxdna_gem_prime_export() and amdxdna_gem_prime_import() for BO import and export. Register mmu notifier for imported BO as well. When MMU_NOTIFIER_UNMAP event is received, queue work to remove the notifier. The same BO could be mapped multiple times if it is exported and imported by an application. Use a link list to track VMAs the BO been mapped. v2: Rebased and call get_dma_buf() before dma_buf_attach() v3: Removed import_attach usage Reviewed-by:
Jeff Hugo <jeff.hugo@oss.qualcomm.com> Signed-off-by:
Lizhi Hou <lizhi.hou@amd.com> Link: https://lore.kernel.org/r/20250325200105.2744079-1-lizhi.hou@amd.com
-
Gustavo A. R. Silva authored
-Wflex-array-member-not-at-end was introduced in GCC-14, and we are getting ready to enable it, globally. Use the `DEFINE_RAW_FLEX()` helper for an on-stack definition of a flexible structure where the size of the flexible-array member is known at compile-time, and refactor the rest of the code, accordingly. So, with these changes, fix the following warning: drivers/gpu/drm/nouveau/nvif/outp.c:199:45: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] Signed-off-by:
Gustavo A. R. Silva <gustavoars@kernel.org> Signed-off-by:
Danilo Krummrich <dakr@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/Z-bFsmWjr5yZy6c6@kspp
-
Gustavo A. R. Silva authored
-Wflex-array-member-not-at-end was introduced in GCC-14, and we are getting ready to enable it, globally. Use the `DEFINE_RAW_FLEX()` helper for an on-stack definition of a flexible structure where the size of the flexible-array member is known at compile-time, and refactor the rest of the code, accordingly. So, with these changes, fix the following warning: drivers/gpu/drm/nouveau/nvif/conn.c:34:38: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] Signed-off-by:
Gustavo A. R. Silva <gustavoars@kernel.org> Signed-off-by:
Danilo Krummrich <dakr@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/Z-a4meHAy-t58bcE@kspp
-
Since the context-type additions to the virtio-gpu spec, these have been defined locally in guest user-space, and virtio-gpu backend library code. Now, these capsets have been stabilized, and should be defined in a common space, in both the virtio_gpu header, and alongside the virtgpu_drm interface that they apply to. Reviewed-by:
Gurchetan Singh <gurchetansingh@chromium.org> Signed-off-by:
Aaron Ruby <aruby@qnx.com> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> [dmitry.osipenko@collabora.com: edit commit title] Link: https://patchwork.freedesktop.org/patch/msgid/YT3PR01MB5857E808EDF6949F2DF517FDAFA12@YT3PR01MB5857.CANPRD01.PROD.OUTLOOK.COM
-
- Mar 27, 2025
-
-
'destroy_workqueue()' already drains the queue before destroying it, so there is no need to flush it explicitly. Remove the redundant 'flush_workqueue()' calls. This was generated with coccinelle: @@ expression E; @@ - flush_workqueue(E); destroy_workqueue(E); Signed-off-by:
Chen Ni <nichen@iscas.ac.cn> Reviewed-by:
Robert Foss <rfoss@kernel.org> Reviewed-by:
Douglas Anderson <dianders@chromium.org> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://lore.kernel.org/r/20250312090132.1624445-1-nichen@iscas.ac.cn
-
The Samsung ATNA40YK20 panel is a 14" AMOLED eDP panel. It is similar to the ATNA33XC20 except that it is larger and has a different resolution. Signed-off-by:
Christopher Obbard <christopher.obbard@linaro.org> Acked-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://lore.kernel.org/r/20250325-wip-obbardc-qcom-t14s-oled-panel-v2-1-e9bc7c9d30cc@linaro.org
-
Add missing Markdown code span. This was found using the Clippy `doc_markdown` lint, which we may want to enable. Fixes: cb5164ac ("drm/panic: Add a QR code panic screen") Signed-off-by:
Miguel Ojeda <ojeda@kernel.org> Reviewed-by:
Jocelyn Falempe <jfalempe@redhat.com> Reviewed-by:
Benno Lossin <benno.lossin@proton.me> Signed-off-by:
Jocelyn Falempe <jfalempe@redhat.com> Link: https://lore.kernel.org/r/20250324210359.1199574-3-ojeda@kernel.org
-
Add missing space in sentence. This was found using the Clippy `doc_markdown` lint, which we may want to enable. Fixes: cb5164ac ("drm/panic: Add a QR code panic screen") Signed-off-by:
Miguel Ojeda <ojeda@kernel.org> Reviewed-by:
Jocelyn Falempe <jfalempe@redhat.com> Reviewed-by:
Benno Lossin <benno.lossin@proton.me> Signed-off-by:
Jocelyn Falempe <jfalempe@redhat.com> Link: https://lore.kernel.org/r/20250324210359.1199574-2-ojeda@kernel.org
-
Commit dbbfaf5f ("drm: Remove bridge support from legacy helpers") removes the drm_bridge_mode_fixup() call in drm_crtc_helper_set_mode(), which makes the subsequent "encoder_funcs = encoder->helper_private" be redundant, so remove it. Signed-off-by:
Huacai Chen <chenhuacai@loongson.cn> Reviewed-by:
Jani Nikula <jani.nikula@intel.com> Link: https://lore.kernel.org/r/20241111132149.1113736-1-chenhuacai@loongson.cn Signed-off-by:
Jani Nikula <jani.nikula@intel.com>
-
Commit 8f5c4871 ("drm/gem: Change locked/unlocked postfix of drm_gem_v/unmap() function names") dropped the _unlocked suffix, but accel drivers were left behind. Fixes: 8f5c4871 ("drm/gem: Change locked/unlocked postfix of drm_gem_v/unmap() function names") Signed-off-by:
Boris Brezillon <boris.brezillon@collabora.com> Cc: Dmitry Osipenko <dmitry.osipenko@collabora.com> Cc: Min Ma <min.ma@amd.com> Cc: Lizhi Hou <lizhi.hou@amd.com> Cc: Oded Gabbay <ogabbay@kernel.org> Cc: dri-devel@lists.freedesktop.org Reviewed-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Tested-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250327104300.1982058-3-boris.brezillon@collabora.com
-
Commit 954907f7 ("drm/shmem-helper: Refactor locked/unlocked functions") suffixed drm_gem_shmem_v[un]map with _locked to reflect the fact these functions must be called with the GEM resv lock held, but accel drivers were left behind. Fixes: 954907f7 ("drm/shmem-helper: Refactor locked/unlocked functions") Signed-off-by:
Boris Brezillon <boris.brezillon@collabora.com> Cc: Dmitry Osipenko <dmitry.osipenko@collabora.com> Cc: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com> Cc: Maciej Falkowski <maciej.falkowski@linux.intel.com> Cc: Oded Gabbay <ogabbay@kernel.org> Cc: dri-devel@lists.freedesktop.org Reviewed-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Tested-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250327104300.1982058-2-boris.brezillon@collabora.com
-
Commit 051b6646 ("drm/shmem-helper: Use refcount_t for pages_use_count") changed the type of drm_gem_shmem_object::pages_use_count but accel drivers were left behind. Fixes: 051b6646 ("drm/shmem-helper: Use refcount_t for pages_use_count") Signed-off-by:
Boris Brezillon <boris.brezillon@collabora.com> Cc: Dmitry Osipenko <dmitry.osipenko@collabora.com> Cc: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com> Cc: Maciej Falkowski <maciej.falkowski@linux.intel.com> Cc: Oded Gabbay <ogabbay@kernel.org> Cc: dri-devel@lists.freedesktop.org Reviewed-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Tested-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250327104300.1982058-1-boris.brezillon@collabora.com
-
- Mar 26, 2025
-
-
Dmitry Osipenko authored
Use refcount_t helper for vmap_use_count to make refcounting consistent with pages_use_count and pages_pin_count that use refcount_t. This also makes vmapping to benefit from the refcount_t's overflow checks. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-11-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
The vmapped pages shall be pinned in memory and previously get/put_pages() were implicitly hard-pinning/unpinning the pages. This will no longer be the case with addition of memory shrinker because pages_use_count > 0 won't determine anymore whether pages are hard-pinned (they will be soft-pinned), while the new pages_pin_count will do the hard-pinning. Switch the vmap/vunmap() to use pin/unpin() functions in a preparation of addition of the memory shrinker support to drm-shmem. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-10-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Use atomic refcount_t helper for pages_use_count to optimize pin/unpin functions by skipping reservation locking while GEM's pin refcount > 1. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-9-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Add separate pages_pin_count for tracking of whether drm-shmem pages are moveable or not. With the addition of memory shrinker support to drm-shmem, the pages_use_count will no longer determine whether pages are hard-pinned in memory, but whether pages exist and are soft-pinned (and could be swapped out). The pages_pin_count > 1 will hard-pin pages in memory. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-8-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Everything that uses the mapped buffer should be agnostic to is_iomem. The only reason for the is_iomem test is that we're setting shmem->vaddr to the returned map->vaddr. Now that the shmem->vaddr code is gone, remove the obsoleted is_iomem test to clean up the code. Acked-by:
Maxime Ripard <mripard@kernel.org> Suggested-by:
Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-7-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Add locked and remove unlocked postfixes from drm-shmem function names, making names consistent with the drm/gem core code. Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-6-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Make all drm-shmem exported symbols GPL to make them consistent with the rest of drm-shmem symbols. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-5-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
The vmap/vunmap/evict GEM callbacks are always invoked with a held GEM's reservation lock. Document this locking rule for clarity. Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by:
Christian König <christian.koenig@amd.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-4-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Add _locked postfix to drm_gem functions that have unlocked counterpart functions to make GEM functions naming more consistent and intuitive in regards to the locking requirements. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by:
Christian König <christian.koenig@amd.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-3-dmitry.osipenko@collabora.com
-
Dmitry Osipenko authored
Make drm/gem API function names consistent by having locked function use the _locked postfix in the name, while the unlocked variants don't use the _unlocked postfix. Rename drm_gem_v/unmap() function names to make them consistent with the rest of the API functions. Acked-by:
Maxime Ripard <mripard@kernel.org> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Suggested-by:
Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by:
Christian König <christian.koenig@amd.com> Acked-by:
Thomas Zimmermann <tzimmermann@suse.d> Signed-off-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250322212608.40511-2-dmitry.osipenko@collabora.com
-
- Mar 25, 2025
-
-
Add ALSA jack detection to the vc4-hdmi audio driver so userspace knows when to add/remove HDMI audio devices. Signed-off-by:
Stefan Wahren <wahrenst@gmx.net> Reviewed-by:
Maxime Ripard <mripard@kernel.org> Signed-off-by:
David Turner <david.turner@raspberrypi.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250317-vc4_hotplug-v4-3-2af625629186@raspberrypi.com Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.com>
-
drm_atomic_helper_connector_hdmi_hotplug() must be called regardless of the connection status, otherwise the HDMI audio disconnect event won't be notified. Fixes: 2ea9ec5d ("drm/vc4: hdmi: use drm_atomic_helper_connector_hdmi_hotplug()") Suggested-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by:
Stefan Wahren <wahrenst@gmx.net> Reviewed-by:
Maxime Ripard <mripard@kernel.org> Signed-off-by:
David Turner <david.turner@raspberrypi.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250317-vc4_hotplug-v4-2-2af625629186@raspberrypi.com Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Update the comment on drm_atomic_helper_connector_hdmi_hotplug() to clarify that it must be called for all status updates. Signed-off-by:
David Turner <david.turner@raspberrypi.com> Reviewed-by:
Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250317-vc4_hotplug-v4-1-2af625629186@raspberrypi.com Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dmitry Baryshkov authored
Switch drm_dp_tunnel.c to use new set of DPCD read / write helpers. Reviewed-by:
Lyude Paul <lyude@redhat.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-6-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Dmitry Baryshkov authored
Switch drm_dp_mst_topology.c to use new set of DPCD read / write helpers. Reviewed-by:
Lyude Paul <lyude@redhat.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-5-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Dmitry Baryshkov authored
Switch drm_dp_cec.c to use new set of DPCD read / write helpers. Reviewed-by:
Lyude Paul <lyude@redhat.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-4-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Dmitry Baryshkov authored
Switch drm_dp_helper.c to use new set of DPCD read / write helpers. Reviewed-by:
Lyude Paul <lyude@redhat.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-3-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Dmitry Baryshkov authored
drm_dp_dpcd_read_link_status() follows the "return error code or number of bytes read" protocol, with the code returning less bytes than requested in case of some errors. However most of the drivers interpreted that as "return error code in case of any error". Switch drm_dp_dpcd_read_link_status() to drm_dp_dpcd_read_data() and make it follow that protocol too. Acked-by:
Jani Nikula <jani.nikula@intel.com> Reviewed-by:
Lyude Paul <lyude@redhat.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-2-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Dmitry Baryshkov authored
Existing DPCD access functions return an error code or the number of bytes being read / write in case of partial access. However a lot of drivers either (incorrectly) ignore partial access or mishandle error codes. In other cases this results in a boilerplate code which compares returned value with the size. Implement new set of DPCD access helpers, which ignore partial access, always return 0 or an error code. Suggested-by:
Jani Nikula <jani.nikula@linux.intel.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Reviewed-by:
Lyude Paul <lyude@redhat.com> Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250324-drm-rework-dpcd-access-v4-1-e80ff89593df@oss.qualcomm.com Signed-off-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
-
Vignesh Raman authored
The mediatek display driver fails to probe on mt8173-elm-hana and mt8183-kukui-jacuzzi-juniper-sku16 in v6.14-rc4 due to missing PHY configurations. Enable the following PHY drivers for MediaTek platforms: - CONFIG_PHY_MTK_HDMI=y for HDMI display - CONFIG_PHY_MTK_MIPI_DSI=y for DSI display Signed-off-by:
Vignesh Raman <vignesh.raman@collabora.com> Acked-by:
Helen Koike <helen.fornazier@gmail.com> Link: https://lore.kernel.org/r/20250314085858.39328-4-vignesh.raman@collabora.com
-
Vignesh Raman authored
Uprev IGT to the latest version and update expectation files. Signed-off-by:
Vignesh Raman <vignesh.raman@collabora.com> Acked-by:
Helen Koike <helen.fornazier@gmail.com> Link: https://lore.kernel.org/r/20250314085858.39328-3-vignesh.raman@collabora.com
-
Vignesh Raman authored
LAVA was recently patched [1] with a fix on how parameters are parsed in `lava-test-case`, so we don't need to repeat quotes to send the arguments properly to it. Uprev mesa to fix this issue. [1] https://gitlab.com/lava/lava/-/commit/18c9cf79 Signed-off-by:
Vignesh Raman <vignesh.raman@collabora.com> Acked-by:
Helen Koike <helen.fornazier@gmail.com> Acked-by:
Daniel Stone <daniels@collabora.com> Link: https://lore.kernel.org/r/20250314085858.39328-2-vignesh.raman@collabora.com
-
- Mar 24, 2025
-
-
Move away from using deprecated API and use _multi variants if available. Use mipi_dsi_msleep() and mipi_dsi_usleep_range() instead of msleep() and usleep_range() respectively. Used Coccinelle to find the _multi variant APIs, replacing mpi_dsi_msleep() where necessary and for returning dsi_ctx.accum_err in these functions. Manually handled the reset step before returning from r63353_panel_activate() v2: Do not skip the reset in case of error during panel activate (Dmitry) - Convert all usleep_range() v3: mipi_dsi_usleep_range() is to be used only when in between _multi commands(Doug) - Check for error once in the end while using _multi variants (Doug) v4: Change return type of r63353_panel_deactivate() to void (Doug) @rule_1@ identifier dsi_var; identifier r; identifier func; type t; position p; expression dsi_device; expression list es; @@ t func(...) { ... struct mipi_dsi_device *dsi_var = dsi_device; +struct mipi_dsi_multi_context dsi_ctx = { .dsi = dsi_var }; <+... ( -r = mipi_dsi_dcs_nop(dsi_var)@p; +mipi_dsi_dcs_nop_multi(&dsi_ctx); | -r = mipi_dsi_dcs_exit_sleep_mode(dsi_var)@p; +mipi_dsi_dcs_exit_sleep_mode_multi(&dsi_ctx); | -r = mipi_dsi_dcs_enter_sleep_mode(dsi_var)@p; +mipi_dsi_dcs_enter_sleep_mode_multi(&dsi_ctx); | -r = mipi_dsi_dcs_write_buffer(dsi_var,es)@p; +mipi_dsi_dcs_write_buffer_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_display_off(dsi_var,es)@p; +mipi_dsi_dcs_set_display_off_multi(&dsi_ctx,es); | -r = mipi_dsi_compression_mode_ext(dsi_var,es)@p; +mipi_dsi_compression_mode_ext_multi(&dsi_ctx,es); | -r = mipi_dsi_compression_mode(dsi_var,es)@p; +mipi_dsi_compression_mode_multi(&dsi_ctx,es); | -r = mipi_dsi_picture_parameter_set(dsi_var,es)@p; +mipi_dsi_picture_parameter_set_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_display_on(dsi_var,es)@p; +mipi_dsi_dcs_set_display_on_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_tear_on(dsi_var)@p; +mipi_dsi_dcs_set_tear_on_multi(&dsi_ctx); | -r = mipi_dsi_turn_on_peripheral(dsi_var)@p; +mipi_dsi_turn_on_peripheral_multi(&dsi_ctx); | -r = mipi_dsi_dcs_soft_reset(dsi_var)@p; +mipi_dsi_dcs_soft_reset_multi(&dsi_ctx); | -r = mipi_dsi_dcs_set_display_brightness(dsi_var,es)@p; +mipi_dsi_dcs_set_display_brightness_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_pixel_format(dsi_var,es)@p; +mipi_dsi_dcs_set_pixel_format_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_column_address(dsi_var,es)@p; +mipi_dsi_dcs_set_column_address_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_page_address(dsi_var,es)@p; +mipi_dsi_dcs_set_page_address_multi(&dsi_ctx,es); | -r = mipi_dsi_dcs_set_tear_scanline(dsi_var,es)@p; +mipi_dsi_dcs_set_tear_scanline_multi(&dsi_ctx,es); ) -if(r < 0) { -... -} ...+> } @rule_2@ identifier dsi_var; identifier r; identifier func; type t; position p; expression dsi_device; expression list es; @@ t func(...) { ... struct mipi_dsi_multi_context dsi_ctx = { .dsi = dsi_var }; <+... ( -r = msleep(es)@p; +r = mipi_dsi_msleep(&dsi_ctx,es); | -msleep(es)@p; +mipi_dsi_msleep(&dsi_ctx,es); | -r = usleep_range(es)@p; +r = mipi_dsi_usleep_range(&dsi_ctx,es); | -usleep_range(es)@p; +mipi_dsi_usleep_range(&dsi_ctx,es); ) ...+> } @rule_3@ identifier dsi_var; identifier func; type t; position p; expression list es; @@ t func(...) { ... struct mipi_dsi_multi_context dsi_ctx = { .dsi = dsi_var }; ... -return 0; +return dsi_ctx.accum_err; } Cc: Maxime Ripard <mripard@kernel.org> Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Cc: Tejas Vipin <tejasvipin76@gmail.com> Cc: Douglas Anderson <dianders@chromium.org> Cc: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by:
Douglas Anderson <dianders@chromium.org> Signed-off-by:
Anusha Srivatsa <asrivats@redhat.com> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250318-synaptic-expt-v1-1-fa3831a7d883@redhat.com
-
Changes the novatek-nt36523 panel to use multi style functions for improved error handling. Reviewed-by:
Douglas Anderson <dianders@chromium.org> Signed-off-by:
Tejas Vipin <tejasvipin76@gmail.com> Reviewed-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250315182522.628187-1-tejasvipin76@gmail.com
-
Changes the samsung-s6d7aa0 panel to use multi style functions for improved error handling. Signed-off-by:
Tejas Vipin <tejasvipin76@gmail.com> Reviewed-by:
Douglas Anderson <dianders@chromium.org> [dianders: fixed whitespace errors] Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250319183106.12613-1-tejasvipin76@gmail.com
-
Read out and check the ID registers, so we can bail out if I2C communication does not work or if the device is unknown. Tested on a Renesas GrayHawk board (R-Car V4M) by using a wrong I2C address and by not enabling RuntimePM for the device. Signed-off-by:
Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by:
Douglas Anderson <dianders@chromium.org> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250318155549.19625-2-wsa+renesas@sang-engineering.com
-
Do not create a custom directory in debugfs-root, but use the debugfs_init callback to create a custom directory at the given place for the bridge. The new directory layout looks like this on a Renesas GrayHawk-Single with a R-Car V4M SoC: /sys/kernel/debug/dri/feb00000.display/DP-1/1-002c Signed-off-by:
Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by:
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by:
Douglas Anderson <dianders@chromium.org> Signed-off-by:
Douglas Anderson <dianders@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20250315201651.7339-2-wsa+renesas@sang-engineering.com
-