{"id":"CVE-2026-99214","aliases":[],"title":"drm/vc4: hdmi: Move packet RAM enable to PM runtime","titleSource":"Linux","descriptionSource":"Linux","products":[{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"b47a72f30768ffe76e105b3e91ad7022003e8504","status":"affected","lessThan":"6b03e354526f6bad60ed3a7f08fec8b7d29d2f27","versionType":"git"},{"version":"b47a72f30768ffe76e105b3e91ad7022003e8504","status":"affected","lessThan":"6a987992c78e2e04f71e685d1c589f8ea2151fa2","versionType":"git"},{"version":"b47a72f30768ffe76e105b3e91ad7022003e8504","status":"affected","lessThan":"3f57b34485dc01e5a2db60a89a6ae5439a897e53","versionType":"git"}],"defaultStatus":"unaffected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99214"},{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"6.11","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.11","versionType":"semver"},{"version":"6.18.59","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.13","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"defaultStatus":"affected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99214"}],"remediation":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vc4: hdmi: Move packet RAM enable to PM runtime\n\nAudio can be triggered by the HPD handler and start up before video has\nbeen restored, calling vc4_hdmi_write_infoframe() for the audio infoframe.\nvc4_hdmi_write_infoframe() needs Packet RAM to be on to store the\ninfoframe, however, if the video hasn't been enabled,\nvc4_hdmi_encoder_post_crtc_enable() hasn't been called and therefore, the\nPacket RAM can be disabled by the time vc4_hdmi_write_infoframe() executes,\ncausing the following splat:\n\n[  201.570266] ------------[ cut here ]------------\n[  201.570293] Packet RAM has to be on to store the packet.\n[  201.570367] WARNING: drivers/gpu/drm/vc4/vc4_hdmi.c:683 at vc4_hdmi_write_infoframe+0x404/0x494 [vc4], CPU#0: wireplumber/1606\n[...]\n[  201.658650] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)\n[...]\n[  201.758499] Call trace:\n[  201.760967]  vc4_hdmi_write_infoframe+0x404/0x494 [vc4] (P)\n[  201.766607]  vc4_hdmi_write_audio_infoframe+0x1c/0x28 [vc4]\n[  201.772247]  write_infoframe+0xbc/0x140 [drm_display_helper]\n[  201.777975]  drm_atomic_helper_connector_hdmi_update_audio_infoframe+0x80/0xdc [drm_display_helper]\n[  201.787140]  vc4_hdmi_audio_prepare+0x4ac/0x570 [vc4]\n[  201.792252]  drm_connector_hdmi_audio_prepare+0x24/0x30 [drm_display_helper]\n[  201.799390]  hdmi_codec_prepare+0x100/0x160 [snd_soc_hdmi_codec]\n[  201.805471]  snd_soc_pcm_dai_prepare+0xd4/0x100 [snd_soc_core]\n[  201.811375]  __soc_pcm_prepare+0x60/0x12c [snd_soc_core]\n[  201.816752]  soc_pcm_prepare+0x34/0x58 [snd_soc_core]\n[  201.821863]  snd_pcm_do_prepare+0x70/0x8c [snd_pcm]\n[  201.826798]  snd_pcm_action_nonatomic+0xe4/0x174 [snd_pcm]\n[  201.832350]  snd_pcm_prepare+0xc8/0xd8 [snd_pcm]\n[  201.837021]  snd_pcm_common_ioctl+0x458/0x614 [snd_pcm]\n[  201.842308]  snd_pcm_ioctl+0x30/0x48 [snd_pcm]\n[  201.846802]  __arm64_sys_ioctl+0x88/0xd8\n[  201.850769]  invoke_syscall+0x48/0xf4\n[  201.854470]  el0_svc_common+0x80/0xd8\n[  201.858171]  do_el0_svc+0x1c/0x28\n[  201.861520]  el0_svc+0x3c/0xb0\n[  201.864605]  el0t_64_sync_handler+0x68/0xdc\n[  201.868834]  el0t_64_sync+0x198/0x19c\n[  201.872536] ---[ end trace 0000000000000000 ]---\n\nConsidering that Packet RAM enable is essentially a power management\nconfiguration, move its enabling/disabling to the Runtime PM hooks.\n\nNote that post_crtc_disable() still stops all infoframes, but keeps Packet\nRAM enabled, leaving it to be disabled by runtime suspend.","severity":"unknown","score":null,"published":"2026-10-28T10:36:07.867Z","modified":"2026-10-28T10:36:07.867Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://git.kernel.org/stable/c/6b03e354526f6bad60ed3a7f08fec8b7d29d2f27","https://git.kernel.org/stable/c/6a987992c78e2e04f71e685d1c589f8ea2151fa2","https://git.kernel.org/stable/c/3f57b34485dc01e5a2db60a89a6ae5439a897e53"],"sources":[{"name":"CVE","id":"CVE-2026-99214","modified":"2026-10-28T10:36:07.867Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-99214"}],"assessments":[],"sourceAffected":[],"kev":{"status":"not-listed","checkedAt":"2026-10-28T22:25:35.093Z"},"coverage":[{"source":"NVD","status":"not-checked"},{"source":"GHSA","status":"not-checked"},{"source":"EUVD","status":"not-checked"},{"source":"EPSS","status":"not-checked"}],"evidence":[]}