Tejas Vipin
f4dd4cb79f
drm/panel: visionox-r66451: transition to mipi_dsi wrapped functions
...
Change the visionox-r66451 panel to use multi style functions for
improved error handling. Additionally, always drop LPM flag after
sending init sequence.
Signed-off-by: Tejas Vipin <tejasvipin76@gmail.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250210092342.287324-1-tejasvipin76@gmail.com
2025-02-12 08:44:34 -08:00
Thomas Hellström
e6a7b47369
MAINTAINERS: Add TTM reviewers
...
Add Matthew Auld and Matthew Brost as TTM reviewers
Cc: Matthew Auld <matthew.auld@intel.com >
Cc: Matthew Brost <matthew.brost@intel.com >
Cc: Christian König <christian.koenig@amd.com >
Cc: Dave Airlie <airlied@gmail.com >
Cc: Simona Vetter <simona.vetter@ffwll.ch >
Cc: dri-devel@lists.freedesktop.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Acked-by: Matthew Auld <matthew.auld@intel.com >
Acked-by: Nirmoy Das <nirmoy.das@intel.com >
Acked-by: Matthew Brost <matthew.brost@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206103544.36971-1-thomas.hellstrom@linux.intel.com
2025-02-12 16:55:51 +01:00
Stefan Wahren
4dd40b5f9c
drm/v3d: Add clock handling
...
Since the initial commit 57692c94dc ("drm/v3d: Introduce a new DRM driver
for Broadcom V3D V3.x+") the struct v3d_dev reserved a pointer for
an optional V3D clock. But there wasn't any code, which fetched it.
So add the missing clock handling before accessing any V3D registers.
Signed-off-by: Stefan Wahren <wahrenst@gmx.net >
Reviewed-by: Maíra Canal <mcanal@igalia.com >
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250201125046.33030-1-wahrenst@gmx.net
2025-02-12 09:55:50 -03:00
Philipp Stanner
796a9f55a8
drm/sched: Use struct for drm_sched_init() params
...
drm_sched_init() has a great many parameters and upcoming new
functionality for the scheduler might add even more. Generally, the
great number of parameters reduces readability and has already caused
one missnaming, addressed in:
commit 6f1cacf4eb ("drm/nouveau: Improve variable name in
nouveau_sched_init()").
Introduce a new struct for the scheduler init parameters and port all
users.
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Acked-by: Matthew Brost <matthew.brost@intel.com > # for Xe
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com > # for Panfrost and Panthor
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com > # for Etnaviv
Reviewed-by: Frank Binns <frank.binns@imgtec.com > # for Imagination
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com > # for Sched
Reviewed-by: Maíra Canal <mcanal@igalia.com > # for v3d
Reviewed-by: Danilo Krummrich <dakr@kernel.org >
Reviewed-by: Lizhi Hou <lizhi.hou@amd.com > # for amdxdna
Signed-off-by: Philipp Stanner <phasta@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250211111422.21235-2-phasta@kernel.org
2025-02-12 11:59:52 +01:00
Jani Nikula
62ae45687e
drm: ensure drm headers are self-contained and pass kernel-doc
...
Ensure drm headers build, are self-contained, have header guards, and
have no kernel-doc warnings, when CONFIG_DRM_HEADER_TEST=y.
The mechanism follows similar patters used in i915, xe, and usr/include.
To cover include/drm, we need to recurse there using the top level
Kbuild and the new include/Kbuild files.
v4: check for CONFIG_WERROR in addition to CONFIG_DRM_WERROR
v3: adapt to upstream build changes
v2: make DRM_HEADER_TEST depend on DRM
Suggested-by: Daniel Vetter <daniel@ffwll.ch >
Cc: David Airlie <airlied@gmail.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com >
Cc: Maxime Ripard <mripard@kernel.org >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Masahiro Yamada <masahiroy@kernel.org >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Acked-by: Simona Vetter <simona.vetter@ffwll.ch >
Link: https://patchwork.freedesktop.org/patch/msgid/d8ad1c6d707f38a55987f616cb9650aef30b84e1.1737556766.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
2025-02-12 10:44:43 +02:00
Jani Nikula
48ca4a1faa
drm/client: include types.h to make drm_client_event.h self-contained
...
drm_client_event.h uses bool without types.h, include it.
Fixes: bf17766f10 ("drm/client: Move suspend/resume into DRM client callbacks")
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Acked-by: Simona Vetter <simona.vetter@ffwll.ch >
Link: https://patchwork.freedesktop.org/patch/msgid/6c69cb005cc3a2b968b6c9675d0ba03173f6c574.1737556766.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
2025-02-12 10:44:43 +02:00
Jinjie Ruan
f7d07bcd06
drm: zynqmp_dp: Use devm_platform_ioremap_resource_byname()
...
platform_get_resource_byname() and devm_ioremap_resource() can be
replaced by devm_platform_ioremap_resource_byname(), which can
simplify the code logic a bit, No functional change here.
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240828084929.2527228-1-ruanjinjie@huawei.com
2025-02-12 10:02:40 +02:00
Sean Anderson
2f2cd4a059
drm: zynqmp_dp: Use scope-based mutex helpers
...
Convert most mutex_(un)lock calls to use (scoped_)guard instead. This
generally reduces line count and prevents bugs like forgetting to unlock
the mutex. I've left traditional calls in a few places where scoped
helpers would be more verbose. This mostly happens where
debugfs_file_put needs to be called regardless. I looked into defining a
CLASS for debugfs_file, but it seems like more effort than it's worth
since debugfs_file_get can fail.
Signed-off-by: Sean Anderson <sean.anderson@linux.dev >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250207162528.1651426-3-sean.anderson@linux.dev
2025-02-12 09:44:29 +02:00
Bart Van Assche
f887685ee0
drm: zynqmp_dp: Fix a deadlock in zynqmp_dp_ignore_hpd_set()
...
Instead of attempting the same mutex twice, lock and unlock it.
This bug has been detected by the Clang thread-safety analyzer.
Cc: Sean Anderson <sean.anderson@linux.dev >
Cc: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Fixes: 28edaacb82 ("drm: zynqmp_dp: Add debugfs interface for compliance testing")
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
Reviewed-by: Sean Anderson <sean.anderson@linux.dev >
Signed-off-by: Sean Anderson <sean.anderson@linux.dev >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Reviewed-by: Sean Anderson <sean.anderson@seco.com >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250207162528.1651426-2-sean.anderson@linux.dev
2025-02-12 09:44:29 +02:00
Sebastian Reichel
50625eab39
drm/edp-panel: Add panel used by T14s Gen6 Snapdragon
...
The Lenovo Thinkpad T14s Gen6 Snapdragon is currently sold with three
different panel versions: OLED, Low Power IPS or IPS with Touchscreen.
My Low Power IPS version had this panel and the kernel complained
about not knowing any details. I don't have any panel documentation,
but as far as I can see the same timings for the already supported
CSO panel also work for this one.
The raw EDID is:
00 ff ff ff ff ff ff 00 0e 6f 13 14 00 00 00 00
00 1e 01 04 a5 1e 13 78 03 82 53 a4 55 4d 9b 24
0d 51 55 00 00 00 01 01 01 01 01 01 01 01 01 01
01 01 01 01 01 01 35 3c 80 a0 70 b0 23 40 30 20
36 00 2e bd 10 00 00 18 00 00 00 fd 00 30 3c 4a
4a 0f 01 0a 20 20 20 20 20 20 00 00 00 fe 00 43
53 4f 54 20 54 33 0a 20 20 20 20 20 00 00 00 fe
00 4d 4e 45 30 30 37 4a 41 31 2d 32 0a 20 00 8b
Signed-off-by: Sebastian Reichel <sre@kernel.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250211014314.94429-1-sre@ring0.de
2025-02-11 10:05:37 -08:00
Charles Han
d0660f9c58
drm: xlnx: zynqmp_dpsub: Add NULL check in zynqmp_audio_init
...
devm_kasprintf() calls can return null pointers on failure.
But some return values were not checked in zynqmp_audio_init().
Add NULL check in zynqmp_audio_init(), avoid referencing null
pointers in the subsequent code.
Fixes: 3ec5c15793 ("drm: xlnx: zynqmp_dpsub: Add DP audio support")
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Charles Han <hanchunchao@inspur.com >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250211102049.6468-1-hanchunchao@inspur.com
2025-02-11 15:20:26 +02:00
Tomi Valkeinen
28b529a985
drm: xlnx: zynqmp: Fix max dma segment size
...
Fix "mapping sg segment longer than device claims to support" warning by
setting the max segment size.
Fixes: d76271d226 ("drm: xlnx: DRM/KMS driver for Xilinx ZynqMP DisplayPort Subsystem")
Reviewed-by: Sean Anderson <sean.anderson@linux.dev >
Tested-by: Sean Anderson <sean.anderson@linux.dev >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250115-xilinx-formats-v2-10-160327ca652a@ideasonboard.com
2025-02-11 14:59:46 +02:00
Gwenael Georgeault
6636c58b94
drm/mgag200: Added support for the new device G200eH5
...
- Added the new device ID
- Added new pll algorithm
Signed-off-by: Gwenael Georgeault <ggeorgea@matrox.com >
Co-authored-by: Mamadou Insa Diop <mdiop@matrox.com >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/alpine.LFD.2.00.2502071401180.14188@pluton.matrox.com
2025-02-11 10:53:53 +01:00
Thomas Zimmermann
e72bbabda3
drm/ast: astdp: Validate display modes
...
Validate each display mode against the astdp transmitter chips. Filters
out modes that the chip does not support.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204133209.403327-5-tzimmermann@suse.de
2025-02-11 08:29:54 +01:00
Thomas Zimmermann
9aed3a417d
drm/ast: astdp: Store mode index in connector state
...
Look up the mode index for the astdp transmitter ship in the encoder's
atomic check and report an error if the display mode is not supported.
The lookup uses the DRM display mode instead of the driver's internal
VBIOS mode. Both are equivalent. The modesetting code later reads
the calculated index from the connector state to avoid recalculating it.
v2:
- fix typo in commit message (Jocelyn)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204133209.403327-4-tzimmermann@suse.de
2025-02-11 08:29:26 +01:00
Thomas Zimmermann
8c3b7d278f
drm/ast: astdp: Inline mode-index calculation
...
Programming the astdp transmitter chip requires a magic value for
individual modes. Inline the helper for calculating the value into
its only caller (i.e., the encoder's atomic_mode_set).
With further refactoring, the atomic check will be able to detect
invalid modes before attempting to program them.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204133209.403327-3-tzimmermann@suse.de
2025-02-11 08:28:30 +01:00
Thomas Zimmermann
3214403cf9
drm/ast: astdp: Add connector state
...
Add dedicated connector state for ASTDP connectors. The state will
store values for programming the transmitter chip.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204133209.403327-2-tzimmermann@suse.de
2025-02-11 08:28:30 +01:00
Cristian Ciocaltea
e4476cd116
drm/bridge: dw-hdmi: Sync comment block with actual bus formats order
...
Commit d3d6b1bf85 ("drm: bridge: dw_hdmi: fix preference of RGB modes
over YUV420") changed the order of the output bus formats, but missed to
update accordingly the "Possible output formats" comment section above
dw_hdmi_bridge_atomic_get_output_bus_fmts().
Fix the misleading comment block and a context related typo.
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204-dw-hdmi-bus-fmt-order-v2-1-d0aaeb7a697a@collabora.com
2025-02-10 17:04:29 +01:00
Luca Ceresoli
0e9cb79ce4
drm/bridge: ti-sn65dsi86: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-8-93df60faa756@bootlin.com
2025-02-10 16:48:43 +01:00
Luca Ceresoli
5199ffb87f
drm/bridge: ti-sn65dsi83: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-7-93df60faa756@bootlin.com
2025-02-10 16:48:43 +01:00
Luca Ceresoli
2ac2ff9996
drm/bridge: tc358775: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-6-93df60faa756@bootlin.com
2025-02-10 16:48:43 +01:00
Luca Ceresoli
38e092786e
drm/bridge: tc358762: remove unused drm_panel.h include, add drm_bridge.h
...
The file uses the panel_bridge APIs from drm_bridge.h, which is included
only indirectly, and uses no drm_panel APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-5-93df60faa756@bootlin.com
2025-02-10 16:48:42 +01:00
Luca Ceresoli
10fab06754
drm/bridge: parade-ps8640: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-4-93df60faa756@bootlin.com
2025-02-10 16:48:42 +01:00
Luca Ceresoli
202f3f60d1
drm/bridge: parade-ps8622: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-3-93df60faa756@bootlin.com
2025-02-10 16:48:42 +01:00
Luca Ceresoli
f4e71f6603
drm/bridge: nxp-ptn3460: remove unused drm_panel.h include
...
The file uses the panel_bridge APIs from drm_bridge.h, but no drm_panel
APIs from drm_panel.h.
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-2-93df60faa756@bootlin.com
2025-02-10 16:48:42 +01:00
Luca Ceresoli
66ac08bb77
drm/panel: remove unnecessary forward declaration
...
'struct drm_device' is not used at all in this file since commit
aa6c43644b ("drm/panel: drop drm_device from drm_panel").
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206-drm-cleanups-v1-1-93df60faa756@bootlin.com
2025-02-10 16:48:41 +01:00
Langyan Ye
1b80b2101d
drm/panel: panel-himax-hx83102: support for starry-2082109qfh040022-50e MIPI-DSI panel
...
The starry-2082109qfh040022-50e is a 10.95" TFT panel. The MIPI controller
on this panel is the same as the other panels here, so add this panel to
this driver.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250208105326.3850358-4-yelangyan@huaqin.corp-partner.google.com
2025-02-10 07:33:52 -08:00
Langyan Ye
15d174fa85
drm/panel: panel-himax-hx83102: support for kingdisplay-kd110n11-51ie MIPI-DSI panel
...
The kingdisplay-kd110n11-51ie is a 10.95" TFT panel. The MIPI controller
on this panel is the same as the other panels here, so add this panel
to this driver.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250208105326.3850358-3-yelangyan@huaqin.corp-partner.google.com
2025-02-10 07:33:00 -08:00
Langyan Ye
a850523706
dt-bindings: display: panel: Add KD110N11-51IE and 2082109QFH040022-50E
...
Add a new compatible for the panels KINGDISPLAY KD110N11-51IE and
STARRY 2082109QFH040022-50E. Both panels use the HX83102 IC, so
add the compatible to the hx83102 bindings file.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250208105326.3850358-2-yelangyan@huaqin.corp-partner.google.com
2025-02-10 07:32:11 -08:00
Shixiong Ou
aaad45cfaa
drm/bridge: convert to use devm_platform_ioremap_resource()
...
convert to use devm_platform_ioremap_resource().
Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn >
Reviewed-by: Maxime Ripard <mripard@kernel.org >
Acked-by: Manikandan Muralidharan <manikandan.m@microchip.com >
Reviewed-and-tested-by: Dharma Balasubiramani <dharma.b@microchip.com >
Reviewed-by: Dharma Balasubiramani <dharma.b@microchip.com >
Tested-by: Dharma Balasubiramani <dharma.b@microchip.com >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206071713.180471-1-oushixiong1025@163.com
2025-02-10 13:45:44 +01:00
Zhaoyu Liu
0678c15b94
drm/ttm: use ttm_resource_unevictable() to replace pin_count and swapped
...
TTM always uses pin_count and ttm_resource_is_swapped() together to
determine whether a BO is unevictable.
Now use ttm_resource_unevictable() to replace them.
Signed-off-by: Zhaoyu Liu <liuzhaoyu.zackary@bytedance.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250126093256.GA688734@bytedance
Signed-off-by: Christian König <christian.koenig@amd.com >
2025-02-10 13:39:03 +01:00
Karol Wachowski
011529fe81
accel/ivpu: Implement D0i2 disable test mode
...
Add power_profile firmware boot param and set it to 0 by default
which is default FW power profile.
Implement IVPU_TEST_MODE_D0I2_DISABLE which is used for setting
power profile boot param value to 1 which prevents NPU from entering
d0i2 power state.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Karol Wachowski <karol.wachowski@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-7-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:43 +01:00
Karol Wachowski
55e856c344
accel/ivpu: Add test modes to toggle clock relinquish disable
...
Add IVPU_TEST_MODE_CLK_RELINQ_[DISABLE|ENABLE] that overrides
workaround for disabling clock relinquish for testing purposes.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Karol Wachowski <karol.wachowski@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-6-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:43 +01:00
Tomasz Rusinowicz
67725f5e8d
accel/ivpu: Allow to import single buffer into multiple contexts
...
Use ivpu_gem_prime_import() based on drm_gem_prime_import_dev()
for importing buffers, removing optimization for same device
imports. This optimization reused the same ivpu_bo object in multiple
contexts but a single buffer can be MMU-mapped only to a single context.
Each import now creates a new instance of ivpu_bo object that shares
the same sg_table but have separate MMU mappings.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Tomasz Rusinowicz <tomasz.rusinowicz@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-5-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:42 +01:00
Karol Wachowski
320323d2e5
accel/ivpu: Add debugfs interface for setting HWS priority bands
...
Add debugfs interface to modify following priority bands properties:
* grace period
* process grace period
* process quantum
This allows for the adjustment of hardware scheduling algorithm parameters
for each existing priority band, facilitating validation and fine-tuning.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Karol Wachowski <karol.wachowski@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-4-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:41 +01:00
Andrzej Kacprowski
7806bad76a
accel/ivpu: Prevent runtime suspend during context abort work
...
Increment the runtime PM counter when entering
ivpu_context_abort_work_fn() to prevent the device
from suspending while the function is executing.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Andrzej Kacprowski <Andrzej.Kacprowski@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-3-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:41 +01:00
Andrzej Kacprowski
4720e0ad30
accel/ivpu: Add missing locks around mmu queues
...
Multiple threads were accessing mmu cmd queue simultaneously
causing sporadic failures in ivpu_mmu_cmdq_sync() function.
Protect critical code with mmu mutex.
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Signed-off-by: Andrzej Kacprowski <Andrzej.Kacprowski@intel.com >
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204084622.2422544-2-jacek.lawrynowicz@linux.intel.com
2025-02-10 10:45:40 +01:00
Ryosuke Yasuoka
6f3d9d0dd3
drm/virtio: Add drm_panic support
...
Virtio gpu supports the drm_panic module, which displays a message to
the screen when a kernel panic occurs. It is supported where it has
vmapped shmem BO.
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com >
Signed-off-by: Ryosuke Yasuoka <ryasuoka@redhat.com >
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206104300.416014-1-ryasuoka@redhat.com
2025-02-09 20:36:51 +03:00
Langyan Ye
05345cea4f
drm/panel: panel-himax-hx83102: support for csot-pna957qt1-1 MIPI-DSI panel
...
The csot-pna957qt1-1 is a 10.95" TFT panel. The MIPI controller on this
panel is the same as the other panels here, so add this panel to this
driver.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206131300.1295111-4-yelangyan@huaqin.corp-partner.google.com
2025-02-07 09:56:02 -08:00
Langyan Ye
36947218ca
dt-bindings: display: panel: Add compatible for CSOT PNA957QT1-1
...
Add a new compatible for the panel CSOT PNA957QT1-1. This panel uses
HX83102 IC, so add the compatible to the hx83102 binding files.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206131300.1295111-3-yelangyan@huaqin.corp-partner.google.com
2025-02-07 09:56:02 -08:00
Langyan Ye
75e80af7d6
dt-bindings: vendor-prefixes: add csot
...
Add "csot" to the Devicetree Vendor Prefix Registry.
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Signed-off-by: Douglas Anderson <dianders@chromium.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250206131300.1295111-2-yelangyan@huaqin.corp-partner.google.com
2025-02-07 09:56:02 -08:00
Rob Herring (Arm)
4f5f701c55
drm/panthor: Convert IOCTL defines to an enum
...
Use an enum instead of #defines for panthor IOCTLs. This allows the
header to be used with Rust code as bindgen can't handle complex
defines.
Cc: Beata Michalska <beata.michalska@arm.com >
Signed-off-by: Rob Herring (Arm) <robh@kernel.org >
Reviewed-by: Alice Ryhl <aliceryhl@google.com >
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250204232824.3819437-1-robh@kernel.org
2025-02-07 18:35:25 +01:00
Jocelyn Falempe
dbed4a797e
drm/panic: Better binary encoding in QR code
...
The current encoding, is done by converting 13bits of input into 4
decimal digits, that are then encoded efficiently using the numeric
encoding of the QR code specification.
The Fido v2.2 specification [1] uses a similar approach for its
QR-initiated authentication. The only difference is that it converts
7 bytes (56bits) of input into 17 decimal digits. The benefit is that
the algorithm doesn't require to split input bytes into 13bits chunk,
and the ratio is a bit better.
This improvement was proposed by Jó Ágila Bitsch in [2].
drm_panic is still young, and the QR code feature is not widely used,
so it's still time to switch to a common algorithm, shared with a
widely used standard.
I also changed the name of the url parameter, from zl= to z=, so the
website can keep backward compatibility if needed.
[1] https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html#hybrid-qr-initiated
[2] https://github.com/kdj0c/panic_report/issues/2
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250128165254.893204-1-jfalempe@redhat.com
2025-02-07 17:52:09 +01:00
Adrián Larumbe
0590c94c35
drm/panthor: Fix race condition when gathering fdinfo group samples
...
Commit e16635d88f ("drm/panthor: add DRM fdinfo support") failed to
protect access to groups with an xarray lock, which could lead to
use-after-free errors.
Fixes: e16635d88f ("drm/panthor: add DRM fdinfo support")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250130172851.941597-6-adrian.larumbe@collabora.com
Link: https://patchwork.freedesktop.org/patch/msgid/20250107173310.88329-1-florent.tomasin@arm.com
2025-02-07 15:27:01 +01:00
Adrián Larumbe
f780ef56f7
Documentation/gpu: Add fdinfo meanings of panthor-*-memory tags
...
A previous commit enabled display of driver-internal kernel BO sizes
through the device file's fdinfo interface.
Expand the description of the relevant driver-specific key:value pairs
with the definitions of the new panthor-*-memory ones.
Reviewed-by: Mihail Atanassov <mihail.atanassov@arm.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250130172851.941597-5-adrian.larumbe@collabora.com
2025-02-07 15:23:39 +01:00
Adrián Larumbe
434e5ca5b5
drm/panthor: Expose size of driver internal BO's over fdinfo
...
This will display the sizes of kenrel BO's bound to an open file, which are
otherwise not exposed to UM through a handle.
The sizes recorded are as follows:
- Per group: suspend buffer, protm-suspend buffer, syncobjcs
- Per queue: ringbuffer, profiling slots, firmware interface
- For all heaps in all heap pools across all VM's bound to an open file,
record size of all heap chuks, and for each pool the gpu_context BO too.
This does not record the size of FW regions, as these aren't bound to a
specific open file and remain active through the whole life of the driver.
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Mihail Atanassov <mihail.atanassov@arm.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250130172851.941597-4-adrian.larumbe@collabora.com
2025-02-07 15:23:39 +01:00
Adrián Larumbe
af6c2b7c46
drm/file: Add fdinfo helper for printing regions with prefix
...
This is motivated by the desire of some drivers (eg. Panthor) to print the
size of internal memory regions with a prefix that reflects the driver
name, as suggested in the previous documentation commit.
That means adding a new argument to print_size and making it available for
DRM users.
Cc: Tvrtko Ursulin <tursulin@ursulin.net >
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com >
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250130172851.941597-3-adrian.larumbe@collabora.com
2025-02-07 15:23:36 +01:00
Adrián Larumbe
3ddf003c7e
Documentation/gpu: Clarify format of driver-specific fidnfo keys
...
This change reflects de facto usage by amdgpu, as exemplified by commit
d6530c33a9 ("drm/amdgpu: expose more memory stats in fdinfo").
Cc: Tvrtko Ursulin <tursulin@ursulin.net >
Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com >
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250130172851.941597-2-adrian.larumbe@collabora.com
2025-02-07 15:22:46 +01:00
Tvrtko Ursulin
2eca617f12
drm/scheduler: Remove some unused prototypes
...
As far as I can tell some removed prototypes were introduced by probably
bad conflict resolution in
fc58764bbf ("Merge tag 'amd-drm-next-6.2-2022-11-18' of https://gitlab.freedesktop.org/agd5f/linux into drm-next").
Remove them.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com >
Cc: Christian König <christian.koenig@amd.com >
Cc: Danilo Krummrich <dakr@redhat.com >
Cc: Matthew Brost <matthew.brost@intel.com >
Cc: Philipp Stanner <pstanner@redhat.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20250205110410.7941-1-tvrtko.ursulin@igalia.com
2025-02-07 10:07:24 +00:00
Hermes Wu
a5072fc77f
drm/bridge: it6505: fix HDCP V match check is not performed correctly
...
Fix a typo where V compare incorrectly compares av[] with av[] itself,
which can result in HDCP failure.
The loop of V compare is expected to iterate for 5 times
which compare V array form av[0][] to av[4][].
It should check loop counter reach the last statement "i == 5"
before return true
Fixes: 0989c02c7a ("drm/bridge: it6505: fix HDCP CTS compare V matching")
Signed-off-by: Hermes Wu <Hermes.wu@ite.com.tw >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Robert Foss <rfoss@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20250121-fix-hdcp-v-comp-v4-1-185f45c728dc@ite.com.tw
2025-02-06 14:40:47 +01:00