rockchip-drm display-subsystem: [drm] *ERROR* POST_BUF_EMPTY irq err at vp0
Cristian Ciocaltea
cristian.ciocaltea at collabora.com
Fri Mar 14 07:28:41 PDT 2025
On 3/14/25 2:27 PM, Marcin Juszkiewicz wrote:
> W dniu 14.03.2025 o 13:00, Cristian Ciocaltea pisze:
>> On 3/13/25 4:13 PM, Marcin Juszkiewicz wrote:
>>> I took my FriendlyELEC NanoPC-T6 LTS back to operation. Installed Fedora
>>> rawhide on it and trying to get screen working.
>>>
>>> Running 6.14-rc6 on it. Kernel log is full of this message:
>>>
>>> rockchip-drm display-subsystem: [drm] *ERROR* POST_BUF_EMPTY irq err
>>> at vp0
>>>
>>> /sys/devices/platform/display-subsystem/drm/card0/card0-HDMI-A-1/modes
>>> shows list of resolutions available on my 10" screen. Monitor says
>>> "HDMI: no signal".
>>>
>>> I remember having screen running once with some set of out-of-tree
>>> patches but iirc it was before HDMI0 support was present in mainline.
>>>
>>> Where I should look?
>>
>> I need access to the full kernel log, but before that do the following:
>>
>> 1. Ensure the kernel is built with dynamic debug support
>>
>> CONFIG_DYNAMIC_DEBUG=y
>>
>> 2. Append the following to kernel cmdline:
>>
>> rockchipdrm.dyndbg=+p dw_hdmi_qp.dyndbg=+p
>> phy_rockchip_samsung_hdptx.dyndbg=+p
>>
>> 3. Deploy the updated kernel (if needed) and reboot
>> 4. Unplug the screen from the HDMI port
>>
>> 5. Open a console terminal (SSH or serial) and run:
>>
>> echo 0x4 > /sys/module/drm/parameters/debug
>>
>> 6. Plug the screen back
>> 7. Wait a few seconds
>> 8. Get the kernel log
>
> Thanks, booted with requested options, enabled debug.
>
> Connected 10" 1366x768 monitor which told "HDMI: No signal". Disconnected.
I think the problem stems from the rather limited display modes handling
in vop2 - see [1] which will be part of the v6.15 kernel release.
In particular, your display seems to prefer 1366x768 at 60Hz, which most
probably is one of the unsupported modes - I wasn't able to test this as
none of my displays advertises it.
For now, I'd suggest to try any of the following options:
1. Update your kernel a recent linux-next, i.e. next-20250207 or newer
This should fix your problem and you'll also get the confirmation that
upcoming v6.15 will work as expected.
2. Force a given <mode> via kernel cmdline:
video=HDMI-A-1:<mode>
where <mode> should be one of those supported by your display.
I'd suggest giving these a try (one at a time):
1920x1080 at 50, 1280x1024 at 60, 1152x864 at 75, 1152x864 at 60, 1152x864 at 50
3. Change current mode from user-space
Depending on the compositor choice, you may try experimenting with:
wlr-randr, gnome-randr, xrandr, etc
For quickly validating the supported modes, I'd recommend:
$ modetest -M rockchip -s HDMI-A-1:<mode>
Note that <mode> in this case has a slightly different format, i.e.
need to replace '@' with '-':
1920x1080 at 50 -> 1920x1080-50
Hope this helps,
Cristian
[1] https://web.git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=2c1268e7aad0819f38e56134bbc2095fd95fde1b
More information about the Linux-rockchip
mailing list