Adrián Larumbe
0489149fd6
drm/panthor: Label all kernel BO's
...
Kernel BO's aren't exposed to UM, so labelling them is the responsibility
of the driver itself. This kind of tagging will prove useful in further
commits when want to expose these objects through DebugFS.
Expand panthor_kernel_bo_create() interface to take a NUL-terminated
string. No bounds checking is done because all label strings are given
as statically-allocated literals, but if a more complex kernel BO naming
scheme with explicit memory allocation and formatting was desired in the
future, this would have to change.
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Link: https://lore.kernel.org/r/20250423021238.1639175-4-adrian.larumbe@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
2025-04-23 10:35:35 +02:00
Adrián Larumbe
a572dc467d
drm/panthor: Add driver IOCTL for setting BO labels
...
Allow UM to label a BO for which it possesses a DRM handle.
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Link: https://lore.kernel.org/r/20250423021238.1639175-3-adrian.larumbe@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
2025-04-23 10:35:35 +02:00
Adrián Larumbe
db49d7f1cc
drm/panthor: Introduce BO labeling
...
Add a new character string Panthor BO field, and a function that allows
setting it from within the driver.
Driver takes care of freeing the string when it's replaced or no longer
needed at object destruction time, but allocating it is the responsibility
of callers.
Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Link: https://lore.kernel.org/r/20250423021238.1639175-2-adrian.larumbe@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
2025-04-23 10:35:35 +02:00
Christophe JAILLET
b848cd418a
drm/bridge: lt9611uxc: Fix an error handling path in lt9611uxc_probe()
...
If lt9611uxc_audio_init() fails, some resources still need to be released
before returning the error code.
Use the existing error handling path.
Fixes: 0cbbd5b1a0 ("drm: bridge: add support for lontium LT9611UXC bridge")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Link: https://lore.kernel.org/r/f167608e392c6b4d7d7f6e45e3c21878feb60cbd.1744958833.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-23 01:13:04 +03:00
Dmitry Baryshkov
dcbd5dcc95
drm/panel: make prepare/enable and disable/unprepare calls return void
...
Now there are no users of the return value of the drm_panel_prepare(),
drm_panel_unprepare(), drm_panel_enable() and drm_panel_disable() calls.
Usually these calls are performed from the atomic callbacks, where it is
impossible to return an error. Stop returning error codes and return
void instead.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-7-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
58a71d2bf1
drm/bridge: analogix_dp: ignore return values of drm_panel_* calls
...
Follow the example of other drivers and ignore return values of the
drm_panel_prepare() / unprepare() / enable() / disable() calls. There is
no possible error recovery, so the driver just logs a message.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-6-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
d5f34ca5df
drm/bridge: analogix_dp: inline analogix_dp_prepare_panel()
...
The analogix_dp_prepare_panel() is now only calling a corresponding
drm_panel function. Inline it to simplify the code.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-5-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
62ca1c3a14
drm/bridge: analogic_dp: drop panel_lock
...
The analogix_dp_prepare_panel() function is called from bridge's
atomic_pre_enable() and atomic_post_disable() callbacks, which can not
happen simultaneously. Drop the useless mutex.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-4-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
4fc72e1fc4
drm/bridge: analogic_dp: drop panel_is_modeset
...
The dp->panel_is_modeset is now a write-only field. Drop it completely.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-3-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
0ce432e18c
drm/bridge: analogix_dp: drop unused argument to analogix_dp_prepare_panel()
...
After previous cleanup all calling sites pass true as is_modeset_prepare
argument to analogix_dp_prepare_panel(). Drop dead code depending on
that argument being false.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-2-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Dmitry Baryshkov
b65cbfe0e1
drm/bridge: analogix_dp: drop extra calls to analogix_dp_prepare_panel()
...
The analogix_dp_prepare_panel() returns immediately if there is no
attached panel. Drop several calls to this function which are performed
when dp->plat_data->panel is NULL.
Tested-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250401-panel-return-void-v1-1-93e1be33dc8d@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-22 16:49:11 +03:00
Biju Das
b1d6a89d7b
drm: renesas: rz-du: rzg2l_mipi_dsi: Update the comment in rzg2l_mipi_dsi_start_video()
...
Add missing space in the comment in rzg2l_mipi_dsi_start_video().
Reported-by: Pavel Machek <pavel@denx.de >
Closes: https://lore.kernel.org/all/ZPg7STHDn4LbLy7f@duo.ucw.cz/
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com >
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Link: https://lore.kernel.org/r/20250412061258.5447-1-biju.das.jz@bp.renesas.com
2025-04-22 11:28:02 +01:00
Boris Brezillon
b437b8f745
drm/panthor: Don't create a file offset for NO_MMAP BOs
...
Right now the DRM_PANTHOR_BO_NO_MMAP flag is ignored by
panthor_ioctl_bo_mmap_offset(), meaning BOs with this flag set can
have a file offset but can't be mapped anyway, because
panthor_gem_mmap() will filter them out.
If we error out at mmap_offset creation time, we can get rid of
panthor_gem_mmap() and call drm_gem_shmem_object_mmap directly, and
we get rid of this inconsistency of having an mmap offset for a
BO that can never be mmap-ed.
Changes in v2:
- Get rid of panthor_gem_mmap()
- Get rid of the Fixes tag and adjust the commit message accordingly
- Return ENOPERM instead of EINVAL
Changes in v3:
- Don't leak the BO ref
- Add R-bs
Reviewed-by: Steven Price <steven.price@arm.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Reviewed-by: Adrián Larumbe <adrian.larumbe@collabora.com >
Link: https://lore.kernel.org/r/20250417121942.3574111-1-boris.brezillon@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
2025-04-22 10:56:03 +02:00
Casey Connolly
e1eb7293ab
drm/panel: samsung-sofef00: Drop s6e3fc2x01 support
...
We never properly supported this panel and always used the wrong init
sequence. Drop support so we can move it to it's own proper driver.
Fixes: 5933baa36e ("drm/panel/samsung-sofef00: Add panel for OnePlus 6/T devices")
Signed-off-by: Casey Connolly <casey.connolly@linaro.org >
Signed-off-by: David Heidelberg <david@ixit.cz >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250419-drop-s6e3fc2x01-support-v1-1-05edfe0d27aa@ixit.cz
2025-04-22 09:40:14 +02:00
Tejas Vipin
61a0fc33b8
drm/mipi-dsi: Remove mipi_dsi_dcs_write_seq
...
There are no remaining users of mipi_dsi_dcs_write_seq and it can be
removed in favor of mipi_dsi_dcs_write_seq_multi.
Signed-off-by: Tejas Vipin <tejasvipin76@gmail.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
Link: https://lore.kernel.org/r/20250419041210.515517-3-tejasvipin76@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250419041210.515517-3-tejasvipin76@gmail.com
2025-04-22 09:35:23 +02:00
Tejas Vipin
d6a4da523d
drm/panel: panel-samsung-sofef00: transition to mipi_dsi wrapped functions
...
Changes the samsung-sofef00 panel to use multi style functions for
improved error handling.
Signed-off-by: Tejas Vipin <tejasvipin76@gmail.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
Link: https://lore.kernel.org/r/20250419041210.515517-2-tejasvipin76@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250419041210.515517-2-tejasvipin76@gmail.com
2025-04-22 09:35:22 +02:00
Aditya Garg
a49ce9cc85
drm/appletbdrm: use %p4cl instead of %p4cc
...
Due to lack of a proper format specifier, %p4cc was being used instead
of %p4cl for the purpose of printing FourCCs. But the disadvange was
that they were being printed in a reverse order. %p4cl should correct
this issue.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Signed-off-by: Aditya Garg <gargaditya08@live.com >
Link: https://lore.kernel.org/r/PN3PR01MB959783DC6377C4CAB203D7ADB8B52@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-04-21 10:18:30 -04:00
Aditya Garg
403ff8fd2d
printf: add tests for generic FourCCs
...
This patch adds support for kunit tests of generic 32-bit FourCCs added to
vsprintf.
Acked-by: Tamir Duberstein <tamird@gmail.com >
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Reviewed-by: Petr Mladek <pmladek@suse.com >
Tested-by: Petr Mladek <pmladek@suse.com >
Signed-off-by: Aditya Garg <gargaditya08@live.com >
Reviewed-by: Kees Cook <kees@kernel.org >
Link: https://lore.kernel.org/r/PN3PR01MB95973AF4F6262B2D1996FB25B8B52@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-04-21 10:18:30 -04:00
Hector Martin
1938479b27
lib/vsprintf: Add support for generic FourCCs by extending %p4cc
...
%p4cc is designed for DRM/V4L2 FourCCs with their specific quirks, but
it's useful to be able to print generic 4-character codes formatted as
an integer. Extend it to add format specifiers for printing generic
32-bit FourCCs with various endian semantics:
%p4ch Host byte order
%p4cn Network byte order
%p4cl Little-endian
%p4cb Big-endian
The endianness determines how bytes are interpreted as a u32, and the
FourCC is then always printed MSByte-first (this is the opposite of
V4L/DRM FourCCs). This covers most practical cases, e.g. %p4cn would
allow printing LSByte-first FourCCs stored in host endian order
(other than the hex form being in character order, not the integer
value).
Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk >
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Reviewed-by: Petr Mladek <pmladek@suse.com >
Tested-by: Petr Mladek <pmladek@suse.com >
Signed-off-by: Hector Martin <marcan@marcan.st >
Signed-off-by: Aditya Garg <gargaditya08@live.com >
Reviewed-by: Kees Cook <kees@kernel.org >
Link: https://lore.kernel.org/r/PN3PR01MB9597B01823415CB7FCD3BC27B8B52@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-04-21 10:18:30 -04:00
Damon Ding
729f8eefdc
drm/rockchip: analogix_dp: Add support for RK3588
...
RK3588 integrates the Analogix eDP 1.3 TX controller IP and the HDMI/eDP
TX Combo PHY based on a Samsung IP block. There are also two independent
eDP display interface with different address on RK3588 Soc.
The patch currently adds only the basic support, specifically RGB output
up to 4K@60Hz, without the tests for audio, PSR and other eDP 1.3 specific
features.
In additon, the above Analogix IP has always been utilized as eDP on
Rockchip platform, despite its capability to also support the DP v1.2.
Therefore, the newly added logs will contain the term 'edp' rather than
'dp'. And the newly added 'apb' reset control is to ensure the APB bus
of eDP controller works well on the RK3588 SoC.
Acked-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-12-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
0e8b86b6df
drm/bridge: analogix_dp: Add support for RK3588
...
Expand enum analogix_dp_devtype with RK3588_EDP, and add max_link_rate
and max_lane_count configs for it.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-11-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
f855146263
dt-bindings: display: rockchip: analogix-dp: Add support for RK3588
...
Compared with RK3288/RK3399, the HBR2 link rate support is the main
improvement of RK3588 eDP TX controller, and there are also two
independent eDP display interfaces on RK3588 Soc.
The newly added 'apb' reset is to ensure the APB bus of eDP controller
works well on the RK3588 SoC.
Reviewed-by: Rob Herring (Arm) <robh@kernel.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-10-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
d7b4936b2b
drm/rockchip: analogix_dp: Add support to get panel from the DP AUX bus
...
Move drm_of_find_panel_or_bridge() a little later and combine it with
component_add() into a new function rockchip_dp_link_panel(). The function
will serve as done_probing() callback of devm_of_dp_aux_populate_bus(),
aiding to support for obtaining the eDP panel via the DP AUX bus.
If failed to get the panel from the DP AUX bus, it will then try the other
way to get panel information through the platform bus.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Link: https://lore.kernel.org/r/20250310104114.2608063-9-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
c8f0b7cb01
drm/bridge: analogix_dp: Add support for &drm_dp_aux.wait_hpd_asserted()
...
Add analogix_dpaux_wait_hpd_asserted() to help confirm the HPD state
before doing AUX transfers.
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Link: https://lore.kernel.org/r/20250310104114.2608063-8-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
e5e9fa9f7a
drm/bridge: analogix_dp: Add support to get panel from the DP AUX bus
...
The main modification is moving the DP AUX initialization from function
analogix_dp_bind() to analogix_dp_probe(). In order to get the EDID of
eDP panel during probing, it is also needed to advance PM operations to
ensure that eDP controller and phy are prepared for AUX transmission.
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Link: https://lore.kernel.org/r/20250310104114.2608063-7-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:27:10 +03:00
Damon Ding
fd073dffef
drm/bridge: analogix_dp: Support to get &analogix_dp_device.plat_data and &analogix_dp_device.aux
...
Add two new functions: one to find &analogix_dp_device.plat_data via
&drm_dp_aux, and the other to get &analogix_dp_device.aux. Both of them
serve for the function of getting panel from DP AUX bus, which is why
they are included in a single commit.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-6-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:26:06 +03:00
Damon Ding
46b0caaad3
dt-bindings: display: rockchip: analogix-dp: Add support to get panel from the DP AUX bus
...
According to Documentation/devicetree/bindings/display/dp-aux-bus.yaml,
it is a good way to get panel through the DP AUX bus.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-5-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:26:06 +03:00
Damon Ding
2c0883459e
drm/bridge: analogix_dp: Add support for phy configuration.
...
Add support to configurate link rate, lane count, voltage swing and
pre-emphasis with phy_configure(). It is helpful in application scenarios
where analogix controller is mixed with the phy of other vendors.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-4-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:26:06 +03:00
Damon Ding
c71db05114
drm/bridge: analogix_dp: Remove CONFIG_PM related check in analogix_dp_bind()/analogix_dp_unbind()
...
Remove the check related to CONFIG_PM in order to make the code more
concise, as the CONFIG_PM should be a required option for many drivers.
In addition, it is preferable to use devm_pm_runtime_enable() instead of
manually invoking pm_runtime_enable() followed by pm_runtime_disable().
Suggested-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-3-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:26:06 +03:00
Damon Ding
efab13e7d1
drm/bridge: analogix_dp: Add irq flag IRQF_NO_AUTOEN instead of calling disable_irq()
...
The IRQF_NO_AUTOEN can be used for the drivers that don't want
interrupts to be enabled automatically via devm_request_threaded_irq().
Using this flag can provide be more robust compared to the way of
calling disable_irq() after devm_request_threaded_irq() without the
IRQF_NO_AUTOEN flag.
Suggested-by: Douglas Anderson <dianders@chromium.org >
Reviewed-by: Douglas Anderson <dianders@chromium.org >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
Link: https://lore.kernel.org/r/20250310104114.2608063-2-damon.ding@rock-chips.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-21 01:26:06 +03:00
Miguel Ojeda
74757ad1c1
drm/panic: use /// for private items too
...
`///` should still be used for private items [1]. Some of the items in
this file do so already, so do it for a few other clear candidates in
the file.
Link: https://lore.kernel.org/rust-for-linux/20250416112454.2503872-1-ojeda@kernel.org/ [1]
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com >
Reviewed-by: Christian Schrefl <chrisi.schrefl@gmail.com >
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com >
Link: https://lore.kernel.org/r/20250416122106.2554208-1-ojeda@kernel.org
2025-04-18 17:49:18 +02:00
Alexander Baransky
3d55aebe25
drm/panel: Add Visionox G2647FB105 panel driver
...
Add the driver for Visionox G2647FB105 6.47" FHD Plus CMD mode AMOLED panel
support found in:
- Xiaomi Mi Note 10 / CC9 Pro (sm7150-xiaomi-tucana)
- Xiaomi Mi Note 10 Lite (sm7150-xiaomi-toco)
Signed-off-by: Alexander Baransky <sanyapilot496@gmail.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414172637.197792-3-sanyapilot496@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414172637.197792-3-sanyapilot496@gmail.com
2025-04-17 17:39:09 +02:00
Alexander Baransky
7a5d0cbd8b
dt-bindings: display: panel: Add Visionox G2647FB105
...
Add a DT binding for the Visionox G2647FB105, a 6.47 inch 1080x2340
MIPI-DSI CMD mode AMOLED panel used in:
- Xiaomi Mi Note 10 / CC9 Pro (sm7150-xiaomi-tucana)
- Xiaomi Mi Note 10 Lite (sm7150-xiaomi-toco)
Xiaomi likes to use different panels in various revisions of the same
device. A factory panel even can be replaced with another model in a
service center.
So, the power configuration of this panel is similar to
some Samsung AMOLED panels, e.g. samsung,ams639rq08, which can be found on
other sm7150 Xiaomi devices. Even though Samsung panels weren't used
in sm7150-xiaomi-tucana and toco, the described voltage rails exist
(confirmed by schematics of the device).
Signed-off-by: Alexander Baransky <sanyapilot496@gmail.com >
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Link: https://lore.kernel.org/r/20250414172637.197792-2-sanyapilot496@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414172637.197792-2-sanyapilot496@gmail.com
2025-04-17 17:39:08 +02:00
AngeloGioacchino Del Regno
38d42c2613
drm: panel: Add driver for Himax HX8279 DDIC panels
...
Add a driver for the Himax HX8279-D MIPI-DSI DriverIC with support
for the Startek KX070FHFID078 7.0" 1200x1920 IPS panel, found on
various MediaTek Genio Evaluation Kit boards and for the Aoly
SL101PM1794FOG-v15 10.1" 1200x1920 LCD panel found on some I.MX8MM
boards.
Link: https://lore.kernel.org/r/20250410072456.387562-4-angelogioacchino.delregno@collabora.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414082918.30298-4-angelogioacchino.delregno@collabora.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414082918.30298-4-angelogioacchino.delregno@collabora.com
2025-04-17 17:38:52 +02:00
AngeloGioacchino Del Regno
a424c93db7
dt-bindings: display: panel: Add Himax HX8279/HX8279-D DDIC panels
...
Himax HX8279 is a Display DriverIC suitable for driving LCD
MIPI-DSI panels.
Describe this DriverIC, the Startek KD070FHFID078 panel found
on newer revisions of the MediaTek Genio 510/700/1200 Evaluation
Kits (EVK), and the Aoly SL101PM1794FOG-V15 found on some i.MX8MM
boards.
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Link: https://lore.kernel.org/r/20250410072456.387562-3-angelogioacchino.delregno@collabora.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20250414082918.30298-3-angelogioacchino.delregno@collabora.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414082918.30298-3-angelogioacchino.delregno@collabora.com
2025-04-17 17:38:52 +02:00
AngeloGioacchino Del Regno
a1958a56e5
dt-bindings: vendor-prefixes: Add Shenzhen Aoly Technology Co., Ltd.
...
Aoly is a manufacturer of LCD/IPS displays based in Shenzhen,
Mainland China.
Acked-by: Rob Herring (Arm) <robh@kernel.org >
Link: https://lore.kernel.org/r/20250410072456.387562-2-angelogioacchino.delregno@collabora.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20250414082918.30298-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250414082918.30298-2-angelogioacchino.delregno@collabora.com
2025-04-17 17:38:51 +02:00
Luca Ceresoli
178ac97535
drm/panel: simple: add Tianma P0700WXF1MBAA panel
...
Add the Tianma P0700WXF1MBAA 7" 1280x800 LVDS RGB TFT LCD panel.
Reuse the timings of the TM070JDHG34-00 as they are identical, even though
they are described differently by the datasheet as noted in the
comment. Power up/down timing are slightly different, so add a new struct
panel_desc for that.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-3-acbefe9ea669@bootlin.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-3-acbefe9ea669@bootlin.com
2025-04-17 17:38:18 +02:00
Luca Ceresoli
716c75afd8
drm/panel: simple: Tianma TM070JDHG34-00: add delays
...
Add power on/off delays for the Tianma TM070JDHG34-00.
Fixes: bf6daaa281 ("drm/panel: simple: Add Tianma TM070JDHG34-00 panel support")
Cc: stable@vger.kernel.org
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-2-acbefe9ea669@bootlin.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-2-acbefe9ea669@bootlin.com
2025-04-17 17:38:18 +02:00
Luca Ceresoli
12ad686ffd
dt-bindings: display: simple: Add Tianma P0700WXF1MBAA panel
...
Add the Tianma Micro-electronics P0700WXF1MBAA 7.0" LVDS LCD TFT panel.
Acked-by: Conor Dooley <conor.dooley@microchip.com >
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-1-acbefe9ea669@bootlin.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411-tianma-p0700wxf1mbaa-v3-1-acbefe9ea669@bootlin.com
2025-04-17 17:38:17 +02:00
Boris Brezillon
938aaed555
drm/panthor: Fix the panthor_gpu_coherency_init() error path
...
The panthor_gpu_coherency_init() call has been moved around, but the
error path hasn't been adjusted accordingly. Make sure we undo what
has been done before this call in case of failure.
Fixes: 7d5a3b22f5 ("drm/panthor: Call panthor_gpu_coherency_init() after PM resume()")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org >
Closes: https://lore.kernel.org/dri-devel/4da470aa-4f84-460e-aff8-dabc8cc4da15@stanley.mountain/T/#t
Reviewed-by: Steven Price <steven.price@arm.com >
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com >
Link: https://lore.kernel.org/r/20250414130120.581274-1-boris.brezillon@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
2025-04-17 11:29:49 +02:00
Dan Carpenter
d6fe216caf
drm/udl: Set error code in udl_init()
...
Return -ENOMEM if udl_alloc_urb_list() fails. Don't return success.
Fixes: fb10144ba4 ("drm/udl: Support adapters without firmware descriptor")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://lore.kernel.org/r/Z_-P4N4_U-xTC9-O@stanley.mountain
2025-04-17 10:21:40 +02:00
Andy Yan
4890d68db6
drm/bridge: dw-hdmi: Avoid including uapi headers
...
It is not recommended for drivers to include UAPI header
directly.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com >
Reviewed-by: Heiko Stuebner <heiko@sntech.de >
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411115941.318558-1-andyshrk@163.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-17 01:54:06 +03:00
Dmitry Baryshkov
b12fa5e76e
drm/bridge: select DRM_KMS_HELPER for AUX_BRIDGE
...
The aux bridge uses devm_drm_of_get_bridge() from the panel bridge (and
correctly selects DRM_PANEL_BRIDGE). However panel bridge is not a
separate module, it is compiled into the drm_kms_helper.o. Select
DRM_KMS_HELPER too to express this dependency.
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org >
Link: https://lore.kernel.org/r/20250411-aux-select-kms-v1-1-c4276f905a56@oss.qualcomm.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
2025-04-17 01:47:21 +03:00
Egor Vorontsov
d2310f047d
drm/edid: Refactor DisplayID timing block structs
...
Using le16 instead of u8[2].
Suggested-by: Jani Nikula <jani.nikula@linux.intel.com >
Signed-off-by: Egor Vorontsov <sdoregor@sdore.me >
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
Link: https://lore.kernel.org/r/a7967d7884d48b15ca08ae78d687e73124f0ba04.1744708239.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
2025-04-16 20:40:51 +03:00
Egor Vorontsov
e79ce1639a
drm/edid: Implement DisplayID Type IX & X timing blocks parsing
...
Some newer high refresh rate consumer monitors (including those by Samsung)
make use of DisplayID 2.1 timing blocks in their EDID data, notably for
their highest refresh rate modes. Such modes won't be available as of now.
Implement partial support for such blocks in order to enable native
support of HRR modes of most such monitors for users without having to rely
on EDID patching/override (or need thereof).
Closes: https://gitlab.freedesktop.org/drm/misc/kernel/-/issues/55
Suggested-by: Maximilian Boße <max@bosse.io >
Signed-off-by: Egor Vorontsov <sdoregor@sdore.me >
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
Link: https://lore.kernel.org/r/d795d27c6f60596df402ff151ce29938e2ad4f53.1744708239.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
2025-04-16 20:40:51 +03:00
Tejas Vipin
734b6f1050
drm/panel: boe-bf060y8m-aj0: transition to mipi_dsi wrapped functions
...
Changes the boe-bf060y8m-aj0 panel to use multi style functions for
improved error handling. Additionally the MIPI_DSI_MODE_LPM flag is set
after the off commands are run in boe_bf060y8m_aj0_off regardless of any
failures, and regulators are disabled if the boe_bf060y8m_aj0_on call in
boe_bf060y8m_aj0_prepare fails.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com >
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://lore.kernel.org/r/20250413035959.255842-1-tejasvipin76@gmail.com
2025-04-16 09:11:28 -07:00
Zhang Enpei
8400644d8a
gpu: drm: xlnx: zynqmp_dp: Use dev_err_probe()
...
Replace the open-code with dev_err_probe() to simplify the code.
Signed-off-by: Zhang Enpei <zhang.enpei@zte.com.cn >
Signed-off-by: Shao Mingyin <shao.mingyin@zte.com.cn >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Link: https://lore.kernel.org/r/20250402193852834atJ7eho66TlnKOIMSvpfr@zte.com.cn
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
2025-04-16 15:03:22 +03:00
Kuninori Morimoto
9aa94cabc4
drm: xlnx: zynqmp_dpsub: use snd_soc_dummy_dlc
...
struct zynqmp_dp_audio :: components has codec component, but it is
used as dummy DAI. OTOH, We can use common snd_soc_dummy_dlc.
Let's use common dummy_dlc instead of own component.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://lore.kernel.org/r/87ecxvr25o.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
2025-04-16 15:01:22 +03:00
Ryosuke Yasuoka
2b5bd56bc1
drm/virtio: Support drm_panic with non-vmapped shmem BO
...
Pass array of pages of the scanout buffer to shmem BO, allowing
drm_panic to work even if the BO is not vmapped.
Link: https://lore.kernel.org/all/20250407140138.162383-3-jfalempe@redhat.com/
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com >
Signed-off-by: Ryosuke Yasuoka <ryasuoka@redhat.com >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
[dmitry.osipenko@collabora.com: rebased on misc-next, fixed minor checkpatch warn]
[dmitry.osipenko@collabora.com: changed commit message to use link tag]
Link: https://lore.kernel.org/all/20250412132012.291837-1-ryasuoka@redhat.com/
2025-04-16 10:19:42 +03:00
Thomas Zimmermann
415cb45895
drm/virtio: Use dma_buf from GEM object instance
...
Avoid dereferencing struct drm_gem_object.import_attach for the
imported dma-buf. The dma_buf field in the GEM object instance refers
to the same buffer. Prepares to make import_attach optional.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Link: https://lore.kernel.org/r/20250414131507.566072-3-tzimmermann@suse.de
2025-04-16 10:05:03 +03:00