Description
In the Linux kernel, the following vulnerability has been resolved:

drm/bridge: cdns-dsi: Replace deprecated UNIVERSAL_DEV_PM_OPS()

The deprecated UNIVERSAL_DEV_PM_OPS() macro uses the provided callbacks
for both runtime PM and system sleep. This causes the DSI clocks to be
disabled twice: once during runtime suspend and again during system
suspend, resulting in a WARN message from the clock framework when
attempting to disable already-disabled clocks.

[ 84.384540] clk:231:5 already disabled
[ 84.388314] WARNING: CPU: 2 PID: 531 at /drivers/clk/clk.c:1181 clk_core_disable+0xa4/0xac
...
[ 84.579183] Call trace:
[ 84.581624] clk_core_disable+0xa4/0xac
[ 84.585457] clk_disable+0x30/0x4c
[ 84.588857] cdns_dsi_suspend+0x20/0x58 [cdns_dsi]
[ 84.593651] pm_generic_suspend+0x2c/0x44
[ 84.597661] ti_sci_pd_suspend+0xbc/0x15c
[ 84.601670] dpm_run_callback+0x8c/0x14c
[ 84.605588] __device_suspend+0x1a0/0x56c
[ 84.609594] dpm_suspend+0x17c/0x21c
[ 84.613165] dpm_suspend_start+0xa0/0xa8
[ 84.617083] suspend_devices_and_enter+0x12c/0x634
[ 84.621872] pm_suspend+0x1fc/0x368

To address this issue, replace UNIVERSAL_DEV_PM_OPS() with
RUNTIME_PM_OPS(). Bridge and panel drivers should only deal with runtime
PM, as the DRM framework manages system-wide power transitions through
the bridge enable() and disable() hooks.
Published: 2026-08-10
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability arises from using the deprecated UNIVERSAL_DEV_PM_OPS() macro in the cdns-dsi driver. That macro triggers the same callbacks for both runtime and system suspend. Consequently, DSI clocks are disabled twice—once during runtime suspend and once again during system suspend—causing the clock framework to emit WARN messages and potentially mismanaging clock states. While this results primarily in noisy logs, the repeated disable could lead to unreliable power state transitions and degrade system stability during suspend cycles.

Affected Systems

All deployments of the Linux kernel that include the cdns-dsi bridge driver and have not applied the upstream commit that replaces UNIVERSAL_DEV_PM_OPS() with RUNTIME_PM_OPS(). The exact kernel versions affected are not enumerated in the advisory; any kernel prior to the noted patch would carry the issue. The bug is confined to systems utilizing the cdns-dsi bridge and its associated panel drivers.

Risk and Exploitability

The EPSS score is not available and the vulnerability is not listed in the CISA KEV catalog, indicating no known exploited instances. Because the defect occurs inside kernel power‑management callbacks, a successful exploit would require root access or the ability to load a malicious kernel module, making it unlikely to be leveraged remotely. The impact is primarily negative on system reliability rather than a classic security breach. Therefore, the risk level can be considered low, but monitoring for warning messages remains prudent.

Generated by OpenCVE AI on August 10, 2026 at 15:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the kernel to a version that includes the patch where cdns_dsi replaces UNIVERSAL_DEV_PM_OPS() with RUNTIME_PM_OPS(); the upstream commits referenced in the advisory can be used to identify the appropriate release.
  • If an immediate kernel upgrade is not possible, manually apply the upstream patch to drivers/bridge/cdns_dsi.c, substituting the macro usage with RUNTIME_PM_OPS() to correct the double‑disable logic.
  • As a temporary measure, disable runtime power management for the cdns_dsi driver by adding a module parameter or sysfs entry, preventing the driver from executing the deprecated callbacks until the bug is fixed.
  • Continuously monitor kernel logs for 'clk: already disabled' warnings, which would indicate the defect is still active.

Generated by OpenCVE AI on August 10, 2026 at 15:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: drm/bridge: cdns-dsi: Replace deprecated UNIVERSAL_DEV_PM_OPS() The deprecated UNIVERSAL_DEV_PM_OPS() macro uses the provided callbacks for both runtime PM and system sleep. This causes the DSI clocks to be disabled twice: once during runtime suspend and again during system suspend, resulting in a WARN message from the clock framework when attempting to disable already-disabled clocks. [ 84.384540] clk:231:5 already disabled [ 84.388314] WARNING: CPU: 2 PID: 531 at /drivers/clk/clk.c:1181 clk_core_disable+0xa4/0xac ... [ 84.579183] Call trace: [ 84.581624] clk_core_disable+0xa4/0xac [ 84.585457] clk_disable+0x30/0x4c [ 84.588857] cdns_dsi_suspend+0x20/0x58 [cdns_dsi] [ 84.593651] pm_generic_suspend+0x2c/0x44 [ 84.597661] ti_sci_pd_suspend+0xbc/0x15c [ 84.601670] dpm_run_callback+0x8c/0x14c [ 84.605588] __device_suspend+0x1a0/0x56c [ 84.609594] dpm_suspend+0x17c/0x21c [ 84.613165] dpm_suspend_start+0xa0/0xa8 [ 84.617083] suspend_devices_and_enter+0x12c/0x634 [ 84.621872] pm_suspend+0x1fc/0x368 To address this issue, replace UNIVERSAL_DEV_PM_OPS() with RUNTIME_PM_OPS(). Bridge and panel drivers should only deal with runtime PM, as the DRM framework manages system-wide power transitions through the bridge enable() and disable() hooks.
Title drm/bridge: cdns-dsi: Replace deprecated UNIVERSAL_DEV_PM_OPS()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-10T12:02:11.434Z

Reserved: 2026-07-30T09:28:09.379Z

Link: CVE-2026-68280

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T20:15:03Z

Weaknesses

No weakness.