Hi Maxime,
On 9/8/20 9:00 PM, Maxime Ripard wrote:
Hi Hoegeun,
On Mon, Sep 07, 2020 at 08:49:12PM +0900, Hoegeun Kwon wrote:
On 9/3/20 5:00 PM, Maxime Ripard wrote:
Hi everyone,
Here's a (pretty long) series to introduce support in the VC4 DRM driver for the display pipeline found in the BCM2711 (and thus the RaspberryPi 4).
The main differences are that there's two HDMI controllers and that there's more pixelvalve now. Those pixelvalve come with a mux in the HVS that still have only 3 FIFOs. Both of those differences are breaking a bunch of expectations in the driver, so we first need a good bunch of cleanup and reworks to introduce support for the new controllers.
Similarly, the HDMI controller has all its registers shuffled and split in multiple controllers now, so we need a bunch of changes to support this as well.
Only the HDMI support is enabled for now (even though the DPI and DSI outputs have been tested too).
Let me know if you have any comments Maxime
Cc: bcm-kernel-feedback-list@broadcom.com Cc: devicetree@vger.kernel.org Cc: Kamal Dasu kdasu.kdev@gmail.com Cc: Philipp Zabel p.zabel@pengutronix.de Cc: Rob Herring robh+dt@kernel.org Cc: Stephen Boyd sboyd@kernel.org
Changes from v4: - Rebased on top of next-20200828 - Collected the various tags - Fixed some issues with 4k support and dual output (thanks Hoegeun!)
Thanks for your v5 patchset.
I tested all patches based on the next-20200812.
Thanks again for testing all the patches
Everything else is fine, but the dual hdmi modetest doesn't work well in my environment...
In my environment, dsi is not connected, I have seen your answer[1].
Can you share a bit more your setup? What monitors are being connected to each HDMI port? Do you hotplug any?
Yes, Monitors are being connected to each HDMI ports. (did not use hotplug)
When booting, both HDMI-0 and 1 are recognized and the kernel log is output. But after run modetest on HDMI-0(works) and modetest on HDMI-1(works), crtc timed out occurs on HDMI-0 and does not work.
When HDMI-0 is not working we do a modetest on HDMI-0, it will work agin after about 40 sec.
Below is the log for modetest.
root:~> modetest -Mvc4 -s 32:1280x720 - HDMI-0 works setting mode 1280x720-60Hz@XR24 on connectors 32, crtc 64 failed to set gamma: Invalid argument
root:~> modetest -Mvc4 -s 32:1280x720 - HDMI-0 works setting mode 1280x720-60Hz@XR24 on connectors 32, crtc 64 failed to set gamma: Invalid argument
root:~> modetest -Mvc4 -s 38:1280x720 - HDMI-1 works setting mode 1280x720-60Hz@XR24 on connectors 38, crtc 69 failed to set gamma: Invalid argument
- Crtc timed out occurs on HDMI-0 and does not work.
[ 71.134283] [drm:drm_atomic_helper_wait_for_flip_done] *ERROR* [CRTC:64:crtc-3] flip_done timed out [ 81.374296] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CRTC:64:crtc-3] flip_done timed out [ 91.618380] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CONNECTOR:32:HDMI-A-1] flip_done timed out [ 101.854274] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [PLANE:60:plane-3] flip_done timed out
[ 112.094271] [drm:drm_atomic_helper_wait_for_flip_done] *ERROR* [CRTC:64:crtc-3] flip_done timed out [ 122.590311] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CRTC:64:crtc-3] flip_done timed out
root:~> modetest -Mvc4 -s 32:1280x720 [ 132.830309] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CONNECTOR:32:HDMI-A-1] flip_done timed out [ 143.070307] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [PLANE:60:plane-3] flip_done timed out [ 153.310303] [drm:drm_atomic_helper_wait_for_flip_done] *ERROR* [CRTC:64:crtc-3] flip_done timed out setting mode 1280x720-60Hz@XR24 on connectors 32, crtc 64 [ 163.550340] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CRTC:64:crtc-3] flip_done timed out [ 173.790277] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CONNECTOR:32:HDMI-A-1] flip_done timed out [ 184.030286] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [PLANE:60:plane-3] flip_done timed out failed to set gamma: Invalid argument - HDMI-0 works
Best regards, Hoegeun