Anusha Srivatsa
84c9532ae2
panel/tpo-tpg110: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-36-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:04 +02:00
Anusha Srivatsa
e15e4ff477
panel/tpo-td043mtea1: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-35-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:03 +02:00
Anusha Srivatsa
f6cefd33da
panel/tpo-td028ttec1: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-34-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:03 +02:00
Anusha Srivatsa
827337818c
panel/synaptics-r63353: allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-33-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:02 +02:00
Anusha Srivatsa
7bd1d88ca0
panel/panel-summit: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-32-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:02 +02:00
Anusha Srivatsa
064864d375
panel/truly-nt35521: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-31-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:01 +02:00
Anusha Srivatsa
d7c962373e
panel/sony-td4353-jdi: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-30-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:01 +02:00
Anusha Srivatsa
cd268f8fed
panel/sony-acx565akm: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-29-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:00 +02:00
Anusha Srivatsa
9176f33f17
panel/sitronix-st7789v: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-28-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:22:00 +02:00
Anusha Srivatsa
51562aa44c
panel/sitronix-st7703: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-27-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:59 +02:00
Anusha Srivatsa
e646a5d1f6
panel/sitronix-st7701: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-26-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:58 +02:00
Anusha Srivatsa
066e3df8c8
panel/sharp-ls060t1sx01: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-25-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:58 +02:00
Anusha Srivatsa
c32cd7f798
panel/sharp-ls037v7dw01: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-24-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:57 +02:00
Anusha Srivatsa
18cb30e24b
panel/seiko-43wvf1g: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-23-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:57 +02:00
Anusha Srivatsa
6196835a54
panel/samsung-sofef00: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-22-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:56 +02:00
Anusha Srivatsa
904ec44211
panel/samsung-s6e8aa0: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-21-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:56 +02:00
Anusha Srivatsa
3a21fd4c90
panel/s6e88a0-ams427ap24: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-20-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:55 +02:00
Anusha Srivatsa
5fafbb72ad
panel/samsung-s6e63j0x03: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-19-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:55 +02:00
Anusha Srivatsa
a354881f85
panel/samsung-s6e3ha8: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-18-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:54 +02:00
Anusha Srivatsa
b4ef743b23
panel/samsung-s6e3ha2: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-17-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:54 +02:00
Anusha Srivatsa
ae83372bc7
panel/samsung-s6e3fa7: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-16-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:53 +02:00
Anusha Srivatsa
e741c9ffa2
panel/samsung-s6d7aa0: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-15-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:53 +02:00
Anusha Srivatsa
532d4c33db
panel/samsung-s6d27a1: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-14-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:52 +02:00
Anusha Srivatsa
f76893223c
panel/samsung-s6d16d0: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-13-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:52 +02:00
Anusha Srivatsa
bbd6988422
panel/samsung-ld9040: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-12-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:51 +02:00
Anusha Srivatsa
f43a0ed027
panel/samsung-db7430: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-11-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:50 +02:00
Anusha Srivatsa
f2519a26cc
panel/samsung-atna33xc20: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-10-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:50 +02:00
Anusha Srivatsa
cd8fc7e929
panel/samsung-ams639rq08: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-9-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:49 +02:00
Anusha Srivatsa
8ee4cf7378
panel/samsung-ams581vf01: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-8-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:49 +02:00
Anusha Srivatsa
11d53df468
panel/ronbo-rb070d30: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-7-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:48 +02:00
Anusha Srivatsa
065a75a40b
panel/raydium-rm69380: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-6-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:48 +02:00
Anusha Srivatsa
7a0c1de1f6
panel/raydium-rm692e5: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-5-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:47 +02:00
Anusha Srivatsa
20291d8faf
panel/raydium-rm68200: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-4-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:47 +02:00
Anusha Srivatsa
8720c9b5ca
panel/raydium-rm67200: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-3-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:46 +02:00
Anusha Srivatsa
a9f0786961
panel/raydium-rm67191: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-2-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:46 +02:00
Anusha Srivatsa
a97dfd6543
panel/orisetech-otm8009a: Use refcounted allocation in place of devm_kzalloc()
...
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com >
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-1-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2025-06-02 09:21:39 +02:00
Jeff Hugo
c11a50b170
accel/qaic: Add Reliability, Accessibility, Serviceability (RAS)
...
AIC100 devices generates Reliability, Availability, Serviceability events
via MHI QAIC_STATUS channel. Support such events and print a structured
log with details of the events, and if the event describes an uncorrected
error, reset the device to put it back into service. As these events may
not all be reported via other mechanisms like AER, maintain counts of
the number of errors observed for each type.
Signed-off-by: Jeff Hugo <jeff.hugo@oss.qualcomm.com >
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com >
Reviewed-by: Troy Hanson <quic_thanson@quicinc.com >
Reviewed-by: Maciej Falkowski <maciej.falkowski@linux.intel.com >
Link: https://lore.kernel.org/r/20250516160634.1408309-1-jeff.hugo@oss.qualcomm.com
2025-05-30 09:14:35 -06:00
Thomas Zimmermann
df1c3093ae
drm/gem: Inline drm_gem_pin() into PRIME helpers
...
Inline drm_gem_pin() into its only caller drm_gem_map_attach()
and update the documentation in the callback's purpose. Do the
equivalent for drm_gem_unpin(). Also add stricter error checking
on the involved locking.
The pin operation in the GEM object functions is a helper for
PRIME-exported buffer objects. Having drm_gem_pin() gives the
impression of a general-purpose interface, which is not the case.
Removing it makes the pin callback a bit harder to misuse.
v2:
- clarify comment on pin callback (Dmitry)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://lore.kernel.org/r/20250526132634.531789-5-tzimmermann@suse.de
2025-05-30 09:47:28 +02:00
Thomas Zimmermann
3c89f2d85c
drm/gem-vram: Un-export pin helpers
...
There are no external callers of the gem-vram pin helpers. Hence
unexport them.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://lore.kernel.org/r/20250526132634.531789-4-tzimmermann@suse.de
2025-05-30 09:47:28 +02:00
Thomas Zimmermann
fe19655b72
drm/gem-vram: Do not set pin and unpin callbacks
...
Gem-vram helpers do not support PRIME dma-buf sharing. So nothing
will ever call pin/unpin on its buffer objects. Do not set these
callbacks in struct drm_gem_object_funcs.
v2:
- fix typo in commit description
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://lore.kernel.org/r/20250526132634.531789-3-tzimmermann@suse.de
2025-05-30 09:47:27 +02:00
Thomas Zimmermann
62e1e11a49
drm/client: Do not pin in drm_client_buffer_vmap()
...
Pin and vmap are two distict operations. Do not mix them.
The helper drm_client_buffer_vmap() maps the pages for fbdev-dma
and fbdev-shmem. In both cases, the vmap operation ensures that
the pages are available until the vunmap happens. And as the pages
in DMA or SHMEM areas cannot be moved, there is no reason to call
pin. Hence remove the pin call.
Update drm_client_buffer_vunmap() accordingly.
v2:
- call 'locked' variants of GEM helpers (Dmitry)
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://lore.kernel.org/r/20250526132634.531789-2-tzimmermann@suse.de
2025-05-30 09:47:27 +02:00
Robert Mader
2271e0a20e
drm: drm_fourcc: add 10/12/16bit software decoder YCbCr formats
...
This adds FOURCCs for 3-plane 10/12/16bit YCbCr formats used by software
decoders like ffmpeg, dav1d and libvpx. The intended use-case is buffer
sharing between decoders and GPUs by allocating buffers with e.g. udmabuf
or dma-heaps, avoiding unnecessary copies and format conversions in
various scenarios.
Unlike formats typically used by hardware decoders the 10/12bit formats
use a LSB alignment. In order to allow fast implementations in GL
and Vulkan the padding must contain only zeros, so the float
representation can be calculated by multiplying with 2^6=64 or 2^4=16
respectively.
MRs or branches for Mesa, Vulkan, Gstreamer, Weston and Mutter can be found at:
- https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34303
- https://github.com/rmader/Vulkan-Docs/commits/ycbcr-16bit-lsb-formats/
- https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8540
- https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1753
- https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4348
The naming scheme follows the 'P' and 'Q' formats. The 'S' stands for
'software' and was selected in order to make remembering easy.
The 'Sx16' formats could as well be 'Qx16'. We stick with 'S' as 16bit software
decoders are likely much more common than hardware ones for the foreseeable
future. Note that these formats already have Vulkan equivalents:
- VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM
- VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM
- VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM
Signed-off-by: Robert Mader <robert.mader@collabora.com >
Reviewed-by: Daniel Stone <daniels@collabora.com >
Link: https://lore.kernel.org/r/20250509133535.60330-1-robert.mader@collabora.com
Signed-off-by: Daniel Stone <daniels@collabora.com >
2025-05-29 16:32:58 +01:00
Lucas De Marchi
33a46dab18
drm/xe: Fix NPD when saving default context
...
xef is only valid if it's a job from userspace. For in-kernel jobs it
causes a NPD like below:
<4> [] RIP: 0010:xe_sched_job_create+0xbd/0x390 [xe]
...
<4> [] Call Trace:
<4> [] <TASK>
<4> [] __xe_bb_create_job+0xa2/0x240 [xe]
<4> [] ? find_held_lock+0x31/0x90
<4> [] ? xa_find_after+0x12c/0x250
<4> [] xe_bb_create_job+0x6e/0x380 [xe]
<4> [] ? xa_find_after+0x136/0x250
<4> [] ? __drm_dev_dbg+0x7d/0xb0
<4> [] xe_gt_record_default_lrcs+0x542/0xb00 [xe]
Since drm_file starts with 1 for the unique id, just use 0 for the
in-kernel jobs.
Fixes: 2956554823 ("drm/sched: Store the drm client_id in drm_sched_fence")
Cc: Christian König <christian.koenig@amd.com >
Cc: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Cc: Philipp Stanner <phasta@kernel.org >
Reviewed-by: Matthew Brost <matthew.brost@intel.com >
Link: https://lore.kernel.org/r/20250528-fix-sched-v1-1-c042ef23ff8b@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com >
2025-05-28 17:44:28 -07:00
Louis Chauvet
ef818481d9
drm/vkms: Add support for DRM_FORMAT_R*
...
This add the support for:
- R1/R2/R4/R8
R1 format was tested with [1] and [2].
[1]: https://lore.kernel.org/r/20240313-new_rotation-v2-0-6230fd5cae59@bootlin.com
[2]: https://lore.kernel.org/igt-dev/20240306-b4-kms_tests-v1-0-8fe451efd2ac@bootlin.com/
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-8-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:15 +02:00
Arthur Grillo
c59176cbca
drm/vkms: Add how to run the Kunit tests
...
Now that we have KUnit tests, add instructions on how to run them.
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net >
Reviewed-by: José Expósito <jose.exposito89@gmail.com >
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-7-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:14 +02:00
Arthur Grillo
3e897853de
drm/vkms: Create KUnit tests for YUV conversions
...
Create KUnit tests to test the conversion between YUV and RGB. Test each
conversion and range combination with some common colors.
The code used to compute the expected result can be found in comment.
[Louis Chauvet:
- fix minor formating issues (whitespace, double line)
- change expected alpha from 0x0000 to 0xffff
- adapt to the new get_conversion_matrix usage
- apply the changes from Arthur
- move struct pixel_yuv_u8 to the test itself]
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net >
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-6-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:14 +02:00
Louis Chauvet
11d435b81e
drm: Export symbols to use in tests
...
The functions drm_get_color_encoding_name and drm_get_color_range_name
are useful for clarifying test results. Therefore, export them so they
can be used in tests built as modules.
Reviewed-by: José Expósito <jose.exposito89@gmail.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-5-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:14 +02:00
Arthur Grillo
f776e5cef7
drm/vkms: Drop YUV formats TODO
...
VKMS has support for YUV formats now. Remove the task from the TODO
list.
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net >
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-4-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:14 +02:00
Arthur Grillo
81dbec0719
drm/vkms: Add range and encoding properties to the plane
...
Now that the driver internally handles these quantization ranges and YUV
encoding matrices, expose the UAPI for setting them.
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net >
[Louis Chauvet: retained only relevant parts, updated the commit message]
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-3-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:14 +02:00
Arthur Grillo
fe22d21e93
drm/vkms: Add YUV support
...
Add support to the YUV formats bellow:
- NV12/NV16/NV24
- NV21/NV61/NV42
- YUV420/YUV422/YUV444
- YVU420/YVU422/YVU444
The conversion from yuv to rgb is done with fixed-point arithmetic, using
32.32 fixed-point numbers and the drm_fixed helpers.
To do the conversion, a specific matrix must be used for each color range
(DRM_COLOR_*_RANGE) and encoding (DRM_COLOR_*). This matrix is stored in
the `conversion_matrix` struct, along with the specific y_offset needed.
This matrix is queried only once, in `vkms_plane_atomic_update` and
stored in a `vkms_plane_state`. Those conversion matrices of each
encoding and range were obtained by rounding the values of the original
conversion matrices multiplied by 2^32. This is done to avoid the use of
floating point operations.
The same reading function is used for YUV and YVU formats. As the only
difference between those two category of formats is the order of field, a
simple swap in conversion matrix columns allows using the same function.
[Louis Chauvet:
- Adapted Arthur's work
- Implemented the read_line_t callbacks for yuv
- add struct conversion_matrix
- store the whole conversion_matrix in the plane state
- remove struct pixel_yuv_u8
- update the commit message
- Merge the modifications from Arthur]
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net >
Acked-by: Maxime Ripard <mripard@kernel.org >
Link: https://lore.kernel.org/r/20250415-yuv-v18-2-f2918f71ec4b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com >
2025-05-28 16:19:13 +02:00