Thomas Zimmermann
9175cb2c83
agp: Include "compat_ioctl.h" where necessary
...
Fix compiler warnings like
drivers/char/agp/frontend.c:46:20: warning: no previous prototype for 'agp_find_mem_by_key' [-Wmissing-prototypes]
46 | struct agp_memory *agp_find_mem_by_key(int key)
by including the compat_ioctl.h in the source file.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Acked-by: Helge Deller <deller@gmx.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20211201114645.15384-3-tzimmermann@suse.de
2022-01-14 15:11:42 +01:00
Thomas Zimmermann
938fb517d4
agp: Remove trailing whitespaces
...
Trivial coding-style fix.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Acked-by: Helge Deller <deller@gmx.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20211201114645.15384-2-tzimmermann@suse.de
2022-01-14 15:11:29 +01:00
Colin Ian King
7f0fec39c9
drm/vc4: remove redundant assignment of variable size
...
The variable 'size' is being assigned a value that is never read,
the assignment is redundant and can be removed. Cleans up clang-scan
warning:
drivers/gpu/drm/vc4/vc4_bo.c:358:2: warning: Value stored to 'size'
is never read [deadcode.DeadStores]
size = roundup(size, PAGE_SIZE);
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Link: https://patchwork.freedesktop.org/patch/msgid/20220112232036.1182846-1-colin.i.king@gmail.com
2022-01-14 14:14:56 +01:00
Drew Davenport
1500296576
drm: bridge: it66121: Remove redundant check
...
ctx->next_bridge is checked for NULL twice in a row. The second
conditional is redundant, so remove it.
Signed-off-by: Drew Davenport <ddavenport@chromium.org >
Acked-by: Neil Armstrong <narmstrong@baylibre.com >
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220114064012.1670612-1-ddavenport@chromium.org
2022-01-14 11:48:57 +01:00
Guchun Chen
d72d84aea4
locking/rwsem: drop redundant semicolon of down_write_nest_lock
...
Otherwise, braces are needed when using it.
Signed-off-by: Guchun Chen <guchun.chen@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220114083742.6219-1-guchun.chen@amd.com
Signed-off-by: Christian König <christian.koenig@amd.com >
2022-01-14 11:08:37 +01:00
Jagan Teki
93e97b05d5
drm/bridge: dw-mipi-dsi: Switch to atomic operations
...
Replace atomic version of the enable/disable operations to
continue the transition to the atomic API.
Also added default drm atomic operations for duplicate, destroy
and reset state API's in order to have smooth transition on
atomic API's.
Tested on Engicam i.Core STM32MP1 SoM.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20211112061741.120898-1-jagan@amarulasolutions.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-13 23:27:50 +01:00
José Expósito
d9168aa329
drm/stm: ltdc: Drop format_mod_supported function
...
The "drm_plane_funcs.format_mod_supported" can be removed in favor of
the default implementation.
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Yannick Fertre <yannick.fertre@foss.st.com >
Tested-by: Yannick Fertre <yannick.fertre@foss.st.com >
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com >
Tested-by: Jagan Teki <jagan@amarulasolutions.com > # i.Core STM32MP1
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211222090552.25972-7-jose.exposito89@gmail.com
2022-01-13 14:11:56 +01:00
Yannick Fertre
484e72d314
drm/stm: ltdc: add support of ycbcr pixel formats
...
This patch adds the following YCbCr input pixel formats on the latest
LTDC hardware version:
1 plane (co-planar) : YUYV, YVYU, UYVY, VYUY
2 planes (semi-planar): NV12, NV21
3 planes (full-planar): YU12=I420=DRM YUV420, YV12=DRM YVU420
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com >
Acked-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Philippe Cornu <philippe.cornu@foss.st.com >
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215214843.20703-1-yannick.fertre@foss.st.com
2022-01-13 14:06:22 +01:00
Yannick Fertre
8f2b5f6dcb
drm/stm: ltdc: add support of flexible pixel formats
...
This feature allows the generation of any RGB pixel format.
The list of supported formats is no longer linked to the
register LXPFCR_PF, that the reason why a list of drm formats is
defined for each display controller version.
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com >
Acked-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Tested-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215214835.20593-1-yannick.fertre@foss.st.com
2022-01-13 14:06:22 +01:00
Yannick Fertre
a55d08e0d4
drm/stm: ltdc: add per plane update support
...
Recent ltdc hardware versions offer the ability
to update a plane independently of others planes.
This is could be useful especially if a plane is
assigned to another OS.
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com >
Acked-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215214817.20310-1-yannick.fertre@foss.st.com
2022-01-13 14:06:21 +01:00
Yannick Fertre
fb998edf9e
drm/stm: ltdc: add YCbCr 422 output support
...
LTDC 40100 hw version supports the YCbCr 422 output,
reducing the output pins from 24 to 16. This feature
is useful for some external devices like HDMI bridges.
Both ITU-R BT.601 & ITU-R BT.709 are supported.
It is also possible to choose the chrominance order between
* Cb is output first (Y0Cb, then Y1Cr, Y2Cb and so on).
* Cr is output first (Y0Cr, then Y1Cb, Y2Cr and so on).
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com >
Acked-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215214750.20105-1-yannick.fertre@foss.st.com
2022-01-13 14:06:20 +01:00
Yannick Fertre
734c26450a
drm/stm: ltdc: switch to regmap
...
Replace the legacy register access by regmap API.
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com >
Acked-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Philippe Cornu <philippe.cornu@foss.st.com >
Reviewed-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Tested-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com >
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215214738.19946-1-yannick.fertre@foss.st.com
2022-01-13 14:06:20 +01:00
Alyssa Rosenzweig
8f54eab0ef
drm/panfrost: Merge some feature lists
...
Now that we only list features of interest to kernel space, lots of GPUs
have the same feature bits. To cut down on the repetition in the file,
merge feature lists that are identical between similar GPUs.
Note that this leaves some unmerged identical Bifrost feature lists, as
there are more features affecting Bifrost kernel space that we do not
yet handle.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
[Steve: fix typo in commit message]
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Steven Price <steven.price@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220109170920.2921-3-alyssa.rosenzweig@collabora.com
2022-01-13 09:48:39 +00:00
Alyssa Rosenzweig
16a89697a3
drm/panfrost: Remove features meant for userspace
...
Early versions of the legacy kernel driver included comprehensive
feature lists for every GPU, even though most of the enumerated features
only matter to userspace. For example, HW_FEATURE_INTERPIPE_REG_ALIASING
was a feature bit indicating that a GPU had "interpipe register
aliasing": arithmetic, load/store, and texture instruction all use
common general-purpose registers. GPUs without this feature bit have
dedicated load/store and texture "registers". Whether a GPU has this
feature or not is irrelevant to the kernel; it only matters in the
userspace compiler's register allocator. It's silly to enumerate it in
kernel space, and the information is understandably unused. To
underscore the point, this feature only makes sense in the context of
the Midgard instruction set. Bifrost never had dedicated load/store or
texture registers, so the feature bit was vacuously set for all Bifrost
hardware, even though this conveys no useful information.
To clean up the feature list, delete feature bits which could not
possibly matter to the kernel, leaving only those which do affect the
register-level operation of the chip.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Steven Price <steven.price@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220109170920.2921-2-alyssa.rosenzweig@collabora.com
2022-01-13 09:48:26 +00:00
Jiasheng Jiang
44ab30b056
drm/panfrost: Check for error num after setting mask
...
Because of the possible failure of the dma_supported(), the
dma_set_mask_and_coherent() may return error num.
Therefore, it should be better to check it and return the error if
fails.
Fixes: f3ba91228e ("drm/panfrost: Add initial panfrost driver")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn >
[Steve: fix Fixes: line]
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Steven Price <steven.price@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220106030326.2620942-1-jiasheng@iscas.ac.cn
2022-01-12 15:49:55 +00:00
Javier Martinez Canillas
a11d854f07
video: vga16fb: Fix logic that checks for the display standard
...
The vga16fb framebuffer driver supports both Enhanced Graphics Adapter
(EGA) and Video Graphics Array (VGA) 16 color graphic cards.
But the logic to check whether the EGA or VGA standard are used is not
correct. It just checks if screen_info.orig_video_isVGA is set, but it
should check if is set to VIDEO_TYPE_VGAC instead.
This means that it assumes to be VGA even if is set to VIDEO_TYPE_EGAC.
All non-x86 architectures though treat orig_video_isVGA as a boolean so
only do the change for x86 and keep the old logic for the other arches.
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com >
Tested-by: Kris Karas <bugs-a21@moonlit-rail.com >
Acked-by: Maxime Ripard <maxime@cerno.tech >
Link: https://patchwork.freedesktop.org/patch/msgid/20220110095625.278836-2-javierm@redhat.com
2022-01-12 11:48:46 +01:00
Jagan Teki
7b1534188c
drm: bridge: nwl-dsi: Drop panel_bridge from nwl_dsi
...
panel_bridge pointer never used anywhere except the one it
looked up at nwl_dsi_bridge_attach.
Drop it from the nwl_dsi structure.
Reviewed-by: Guido Günther <agx@sigxcpu.org >
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220110172533.66614-1-jagan@amarulasolutions.com
2022-01-12 11:10:11 +01:00
Colin Ian King
0f5d326172
drm/bridge: adv7533: make array clock_div_by_lanes static const
...
Don't populate the read-only array clock_div_by_lanes on the stack but
instead it static const. Also makes the object code a little smaller.
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220109204105.51878-1-colin.i.king@gmail.com
2022-01-12 11:06:15 +01:00
Jagan Teki
bd29823e05
Revert "drm: exynos: dsi: Convert to bridge driver"
...
This reverts commit 92e794fab8 .
It is merged by accident, the actual patch series on this bridge
conversion is still under review.
Revert this as it breaks the exynos DSI.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220111184347.502471-1-jagan@amarulasolutions.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-12 11:02:32 +01:00
Thomas Zimmermann
9d31993451
drm/mipi-dbi: Fix source-buffer address in mipi_dbi_buf_copy
...
Set the source-buffer address after mapping the buffer into the
kernel's address space. Makes MIPI DBI helpers work again.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Fixes: c47160d8ed ("drm/mipi-dbi: Remove dependency on GEM CMA helper library")
Reviewed-by: Noralf Trønnes <noralf@tronnes.org >
Reported-by: Noralf Trønnes <noralf@tronnes.org >
Cc: Thomas Zimmermann <tzimmermann@suse.de >
Cc: Daniel Vetter <daniel.vetter@ffwll.ch >
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com >
Cc: Maxime Ripard <mripard@kernel.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220111132634.18302-1-tzimmermann@suse.de
2022-01-12 10:26:03 +01:00
Minghao Chi
e592dc3205
drm/gma500: remove redundant ret variable
...
Return value directly instead of taking this in another redundant
variable.
Reported-by: Zeal Robot <zealci@zte.com.cn >
Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn >
Signed-off-by: CGEL ZTE <cgel.zte@gmail.com >
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220112082524.667552-1-chi.minghao@zte.com.cn
2022-01-12 10:16:29 +01:00
Daniel Vetter
d1f5a6d9d0
drm/doc: overview before functions for drm_writeback.c
...
Otherwise it's really hard to link to that, which I realized when I
wanted to link to the property definitions for a question on irc.
Fix it.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Fixes: e2d7fc20b3 ("drm/writeback: wire drm_writeback.h to kernel-doc")
Cc: Sam Ravnborg <sam@ravnborg.org >
Cc: Daniel Vetter <daniel.vetter@ffwll.ch >
Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com >
Cc: Brian Starkey <brian.starkey@arm.com >
Cc: Liviu Dudau <liviu.dudau@arm.com >
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220111202714.1128406-1-daniel.vetter@ffwll.ch
2022-01-11 22:10:49 +01:00
Jiasheng Jiang
4a39156166
drm/v3d/v3d_drv: Check for error num after setting mask
...
Because of the possible failure of the dma_supported(), the
dma_set_mask_and_coherent() may return error num.
Therefore, it should be better to check it and return the error if
fails.
Also, we can create a variable for the mask to solve the
alignment issue.
Fixes: 334dd38a38 ("drm/v3d: Set dma_mask as well as coherent_dma_mask")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn >
Reviewed-by: Melissa Wen <mwen@igalia.com >
Signed-off-by: Melissa Wen <melissa.srw@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220110013807.4105270-1-jiasheng@iscas.ac.cn
2022-01-11 19:07:42 -01:00
Jani Nikula
f199f71f20
drm/mst: use DP_GET_SINK_COUNT() for sink count in ESI
...
Take bit 7 into account when reading sink count from
DP_DEVICE_SERVICE_IRQ_VECTOR_ESI0.
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220104184857.784563-2-jani.nikula@intel.com
2022-01-11 17:28:54 +02:00
Jani Nikula
55a9c00021
drm/dp: note that DPCD 0x2002-0x2003 match 0x200-0x201
...
DP_SINK_COUNT_ESI and DP_DEVICE_SERVICE_IRQ_VECTOR_ESI0 have the same
contents as DP_SINK_COUNT and DP_DEVICE_SERVICE_IRQ_VECTOR,
respectively.
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220104184857.784563-1-jani.nikula@intel.com
2022-01-11 17:28:44 +02:00
Maxime Ripard
c406ad5e4a
drm/vc4: Notify the firmware when DRM is in charge
...
Once the call to drm_fb_helper_remove_conflicting_framebuffers() has
been made, simplefb has been unregistered and the KMS driver is entirely
in charge of the display.
Thus, we can notify the firmware it can free whatever resource it was
using to maintain simplefb functional.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Acked-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215095117.176435-5-maxime@cerno.tech
2022-01-11 13:16:12 +01:00
Maxime Ripard
a7e6f3d8a4
drm/vc4: Remove conflicting framebuffers before callind bind_all
...
The bind hooks will modify their controller registers, so simplefb is
going to be unusable anyway. Let's avoid any transient state where it
could still be in the system but no longer functionnal.
Acked-by: Nicolas Saenz Julienne <nsaenz@kernel.org >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215095117.176435-4-maxime@cerno.tech
2022-01-11 13:16:11 +01:00
Maxime Ripard
d62b9bee52
drm/vc4: Support nomodeset
...
If we have nomodeset on the kernel command line we should have the
firmware framebuffer driver kept as is and not try to load the
full-blown KMS driver.
In this case, let's just register the v3d driver.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215095117.176435-3-maxime@cerno.tech
2022-01-11 13:16:11 +01:00
Maxime Ripard
39feb6e726
firmware: raspberrypi: Add RPI_FIRMWARE_NOTIFY_DISPLAY_DONE
...
The RPI_FIRMWARE_NOTIFY_DISPLAY_DONE firmware call allows to tell the
firmware the kernel is in charge of the display now and the firmware can
free whatever resources it was using.
Acked-by: Nicolas Saenz Julienne <nsaenz@kernel.org >
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Link: https://patchwork.freedesktop.org/patch/msgid/20211215095117.176435-2-maxime@cerno.tech
2022-01-11 13:16:10 +01:00
Lucas De Marchi
e8c1f36157
dma-buf-map: Fix dot vs comma in example
...
Fix typo: separate arguments with comma rather than dot.
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20220111003305.1214667-1-lucas.demarchi@intel.com
2022-01-11 09:46:53 +01:00
Alyssa Rosenzweig
a9e4fb5142
drm/panfrost: Update create_bo flags comment
...
Update a comment stating create_bo took no flags, since it now takes a
bit mask of optional flags NOEXEC and HEAP.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Steven Price <steven.price@arm.com >
Signed-off-by: Steven Price <steven.price@arm.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220109163704.2564-1-alyssa.rosenzweig@collabora.com
2022-01-10 16:39:46 +00:00
Rajat Jain
0af2e827b6
drm/privacy_screen_x86: Add entry for ChromeOS privacy-screen
...
Add a static entry in the x86 table, to detect and wait for
privacy-screen on some ChromeOS platforms.
Please note that this means that if CONFIG_CHROMEOS_PRIVACY_SCREEN is
enabled, and if "GOOG0010" device is found in ACPI, then the i915 probe
shall return EPROBE_DEFER until a platform driver actually registers the
privacy-screen: https://hansdegoede.livejournal.com/25948.html
Signed-off-by: Rajat Jain <rajatja@google.com >
Reviewed-by: Hans de Goede <hdegoede@redhat.com >
Acked-by: Benson Leung <bleung@chromium.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107190208.95479-3-rajatja@google.com
2022-01-10 12:17:37 +01:00
Rajat Jain
3fb57847f6
platform/chrome: Add driver for ChromeOS privacy-screen
...
This adds the ACPI driver for the ChromeOS privacy screen that is
present on some chromeos devices.
Note that ideally, we'd want this privacy screen driver to be probed
BEFORE the drm probe in order to avoid a drm probe deferral:
https://hansdegoede.livejournal.com/25948.html
In practise, I found that ACPI drivers are bound to their devices AFTER
the drm probe on chromebooks. So on chromebooks with privacy-screen,
this patch along with the other one in this series results in a probe
deferral of about 250ms for i915 driver. However, it did not result in
any user noticeable delay of splash screen in my personal experience.
In future if this probe deferral turns out to be an issue, we can
consider turning this ACPI driver into something that is probed
earlier than the drm drivers.
Signed-off-by: Rajat Jain <rajatja@google.com >
Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
Acked-by: Benson Leung <bleung@chromium.org >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107190208.95479-2-rajatja@google.com
2022-01-10 12:17:37 +01:00
Rajat Jain
30598d925d
drm/privacy_screen: Add drvdata in drm_privacy_screen
...
Allow a privacy screen provider to stash its private data pointer in the
drm_privacy_screen, and update the drm_privacy_screen_register() call to
accept that. Also introduce a *_get_drvdata() so that it can retrieved
back when needed.
This also touches the IBM Thinkpad platform driver, the only user of
privacy screen today, to pass NULL for now to the updated API.
Signed-off-by: Rajat Jain <rajatja@google.com >
Reviewed-by: Hans de Goede <hdegoede@redhat.com >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107190208.95479-1-rajatja@google.com
2022-01-10 12:17:37 +01:00
Jagan Teki
3dbc84a595
drm: bridge: adv7511: Fix ADV7535 HPD enablement
...
Existing HPD enablement logic is not compatible with ADV7535
bridge, thus any runtime plug-in of HDMI cable is not working
on these bridge designs.
Unlike other ADV7511 family of bridges, the ADV7535 require
HPD_OVERRIDE bit to set and reset for proper handling of HPD
functionality.
Fix it.
Fixes: 8501fe4b14 ("drm: bridge: adv7511: Add support for ADV7535")
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220109172949.168167-1-jagan@amarulasolutions.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-10 12:01:37 +01:00
Xin Ji
607a264ea7
drm/bridge: anx7625: add audio codec .get_eld support
...
Provide .get_eld interface in hdmi_codec_ops for hdmi-codec driver.
Reviewed-by: Robert Foss <robert.foss@linaro.org >
Signed-off-by: Xin Ji <xji@analogixsemi.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220106100127.1862702-3-xji@analogixsemi.com
2022-01-10 11:55:03 +01:00
Xin Ji
cd1637c7e4
drm/bridge: anx7625: add HDCP support
...
This patch provides HDCP setting interface for userspace to dynamic
enable/disable HDCP function.
Reported-by: kernel test robot <lkp@intel.com >
Reviewed-by: Robert Foss <robert.foss@linaro.org >
Signed-off-by: Xin Ji <xji@analogixsemi.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220106100127.1862702-2-xji@analogixsemi.com
2022-01-10 11:55:01 +01:00
Xin Ji
191be00229
drm/bridge: anx7625: Add bridge helper atomic conversion
...
Add bridge helper atomic conversion.
Reviewed-by: Robert Foss <robert.foss@linaro.org >
Signed-off-by: Xin Ji <xji@analogixsemi.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220106100127.1862702-1-xji@analogixsemi.com
2022-01-10 11:55:00 +01:00
José Expósito
0f299473c1
drm/vkms: drop "Multiple overlay planes" TODO
...
Remove the task from the TODO list.
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Melissa Wen <mwen@igalia.com >
Signed-off-by: Melissa Wen <melissa.srw@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107182809.141003-3-jose.exposito89@gmail.com
2022-01-09 16:14:37 -01:00
José Expósito
df2d385cb4
drm/vkms: add support for multiple overlay planes
...
Create 8 overlay planes instead of 1 when the "enable_overlay" module
parameter is set.
The following igt-gpu-tools tests were executed without finding
regressions. Notice than the numbers are identical:
| master branch | this patch |
| SUCCESS | SKIP | FAIL | SUCCESS | SKIP | FAIL |
kms_atomic | 10 | 02 | 00 | 10 | 02 | 00 |
kms_plane_cursor | 09 | 45 | 00 | 09 | 45 | 00 |
kms_plane_multiple | 01 | 23 | 00 | 01 | 23 | 00 |
kms_writeback | 04 | 00 | 00 | 04 | 00 | 00 |
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Melissa Wen <mwen@igalia.com >
Signed-off-by: Melissa Wen <melissa.srw@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107182809.141003-2-jose.exposito89@gmail.com
2022-01-09 16:14:35 -01:00
José Expósito
5edaa2b974
drm/vkms: refactor overlay plane creation
...
Move the logic to create an overlay plane to its own function.
Refactor, no functional changes.
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Melissa Wen <mwen@igalia.com >
Signed-off-by: Melissa Wen <melissa.srw@gmail.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20220107182809.141003-1-jose.exposito89@gmail.com
2022-01-09 16:14:34 -01:00
Jiri Vanek
5313fb2c77
drm/bridge/tc358775: Fix for dual-link LVDS
...
Fixed wrong register shift for single/dual link LVDS output.
Tested-by: Jiri Vanek <jirivanek1@gmail.com >
Signed-off-by: Jiri Vanek <jirivanek1@gmail.com >
Reviewed-by: Vinay Simha BN <simhavcs@gmail.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220106190027.1498-1-jirivanek1@gmail.com
2022-01-07 17:38:16 +01:00
Ivaylo Dimitrov
36e195467e
drm: omapdrm: Fix implicit dma_buf fencing
...
Currently omapdrm driver does not initialize dma_buf_export_info resv
member, which leads to a new dma_resv being allocated and attached to
the exported dma_buf. This leads to the issue that fences created on
dma_buf objects imported by other drivers are ignored by omapdrm, as only
fences in gem object resv are waited on. This leads to various issues like
displaying incomplete frames.
Fix that by initializing dma_buf resv to the resv of the gem object being
exported.
Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com >
Tested-by: Merlijn Wajer <merlijn@wizzup.org >
Tested-by: Tony Lindgren <tony@atomide.com >
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com >
Link: https://patchwork.freedesktop.org/patch/msgid/1641397018-29872-1-git-send-email-ivo.g.dimitrov.75@gmail.com
2022-01-06 15:31:33 +02:00
KuoHsiang Chou
59a39fcc21
drm/ast: Enable the supporting of wide screen on AST2600
...
Enable the supporting of wide sscreen on AST2600, so that the resolution
of 16:9 and 16:10 are able to be selected on Display Settings.
Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com >
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20211229082749.5415-1-kuohsiang_chou@aspeedtech.com
2022-01-06 10:02:07 +01:00
yangcong
506d9d7414
drm/panel: Update Boe-tv110c9m initial code
...
Optimize two problems
a)Turn off low voltage detection register.During the esd test,
the low-voltage detection ic may be triggered to enter the slpin state,
so a black screen occurs on the panel.
b)Optimize CMD2 page1 gamma.
Signed-off-by: yangcong <yangcong5@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/20211231045056.118640-1-yangcong5@huaqin.corp-partner.google.com
2022-01-05 16:12:18 -08:00
José Expósito
91d8531393
drm/plane: Fix typo in format_mod_supported documentation
...
Fix minor typo: "valdiate" -> "validate".
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Simon Ser <contact@emersion.fr >
Link: https://patchwork.freedesktop.org/patch/msgid/20211226112503.31771-3-jose.exposito89@gmail.com
2022-01-06 00:53:39 +01:00
José Expósito
d14f0c2053
drm/plane: Make format_mod_supported truly optional
...
The documentation for "drm_plane_funcs.format_mod_supported" reads:
This *optional* hook is used for the DRM to determine if the given
format/modifier combination is valid for the plane. This allows the
DRM to generate the correct format bitmask (which formats apply to
which modifier), and to validate modifiers at atomic_check time.
*If not present*, then any modifier in the plane's modifier
list is allowed with any of the plane's formats.
However, where the function is not present, an invalid IN_FORMATS blob
property with modifiers but no formats is exposed to user-space.
This breaks the latest Weston [1]. For testing purposes, I extracted the
affected code to a standalone program [2].
Make "create_in_format_blob" behave as documented.
[1] https://gitlab.freedesktop.org/wayland/weston/-/blob/9.0/libweston/backend-drm/kms.c#L431
[2] https://github.com/JoseExposito/drm-sandbox/blob/main/in_formats.c
Signed-off-by: José Expósito <jose.exposito89@gmail.com >
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Simon Ser <contact@emersion.fr >
Link: https://patchwork.freedesktop.org/patch/msgid/20211226112503.31771-2-jose.exposito89@gmail.com
2022-01-06 00:52:57 +01:00
Miaoqian Lin
b146e343a9
drm/bridge: nwl-dsi: Fix PM disable depth imbalance in nwl_dsi_probe
...
The pm_runtime_enable will increase power disable depth.
Thus a pairing decrement is needed on the error handling
path to keep it balanced according to context.
Fixes: 44cfc62334 ("drm/bridge: Add NWL MIPI DSI host controller support")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220105104826.1418-1-linmq006@gmail.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-05 18:50:00 +01:00
Miaoqian Lin
96211b7c56
drm/bridge: Add missing pm_runtime_disable() in __dw_mipi_dsi_probe
...
If the probe fails, we should use pm_runtime_disable() to balance
pm_runtime_enable().
Add missing pm_runtime_disable() for __dw_mipi_dsi_probe.
Fixes: 46fc51546d ("drm/bridge/synopsys: Add MIPI DSI host controller bridge")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220105104113.31415-1-linmq006@gmail.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-05 18:49:51 +01:00
AngeloGioacchino Del Regno
9294914dd5
drm/bridge: parade-ps8640: Link device to ensure suspend/resume order
...
Entering suspend while the display attached to this bridge is still on
makes the resume sequence to resume the bridge first, display last:
when this happens, we get a timeout while resuming the bridge, as its
MCU will get stuck due to the display being unpowered.
On the other hand, on mt8173-elm, closing the lid makes the display to
get powered off first, bridge last, so at resume time the sequence is
swapped (compared to the first example) and everything just works
as expected.
Add a stateless device link to the DRM device that this bridge belongs
to, ensuring a correct resume sequence and solving the unability to
correctly resume bridge operation in the first mentioned example.
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Signed-off-by: Robert Foss <robert.foss@linaro.org >
Link: https://patchwork.freedesktop.org/patch/msgid/20220105090802.73564-1-angelogioacchino.delregno@collabora.com
Reviewed-by: Robert Foss <robert.foss@linaro.org >
2022-01-05 18:31:26 +01:00