From: Jonas Karlman <jonas@kwiboo.se>
To: dri-devel@lists.freedesktop.org,
"Sandy Huang" <hjc@rock-chips.com>,
"Heiko Stübner" <heiko@sntech.de>,
"Andy Yan" <andy.yan@rock-chips.com>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
"David Airlie" <airlied@gmail.com>,
"Daniel Vetter" <daniel@ffwll.ch>,
"Rob Herring" <robh@kernel.org>,
"Zheng Yang" <zhengyang@rock-chips.com>
Cc: linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
Jonas Karlman <jonas@kwiboo.se>
Subject: [PATCH 04/13] drm/rockchip: dw_hdmi: Fix reading EDID when using a forced mode
Date: Sat, 15 Jun 2024 17:03:55 +0000 [thread overview]
Message-ID: <20240615170417.3134517-5-jonas@kwiboo.se> (raw)
In-Reply-To: <20240615170417.3134517-1-jonas@kwiboo.se>
EDID cannot be read on RK3328 until after read_hpd has been called and
correct io voltage has been configured based on connection status.
When a forced mode is used, e.g. video=1920x1080@60e, the connector
detect ops, that in turn normally calls the read_hpd, never gets called.
This result in reading EDID to fail in connector get_modes ops.
Call dw_hdmi_rk3328_read_hpd at end of dw_hdmi_rk3328_setup_hpd to
correct io voltage and allow reading EDID after setup_hpd.
Fixes: 1c53ba8f22a1 ("drm/rockchip: dw_hdmi: add dw-hdmi support for the rk3328")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
---
drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
index fe33092abbe7..aae48e906af1 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
@@ -434,6 +434,8 @@ static void dw_hdmi_rk3328_setup_hpd(struct dw_hdmi *dw_hdmi, void *data)
HIWORD_UPDATE(RK3328_HDMI_SDAIN_MSK | RK3328_HDMI_SCLIN_MSK,
RK3328_HDMI_SDAIN_MSK | RK3328_HDMI_SCLIN_MSK |
RK3328_HDMI_HPD_IOE));
+
+ dw_hdmi_rk3328_read_hpd(dw_hdmi, data);
}
static const struct dw_hdmi_phy_ops rk3228_hdmi_phy_ops = {
--
2.45.2
next prev parent reply other threads:[~2024-06-15 17:05 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-15 17:03 [PATCH 00/13] rockchip: Enable 4K@60Hz mode on RK3228, RK3328, RK3399 and RK356x Jonas Karlman
2024-06-15 17:03 ` [PATCH 01/13] arm64: dts: rockchip: Increase VOP clk rate on RK3328 Jonas Karlman
2024-06-15 17:03 ` [PATCH 02/13] clk: rockchip: Set parent rate for DCLK_VOP clock on RK3228 Jonas Karlman
2024-06-17 20:30 ` Heiko Stübner
2024-06-17 20:50 ` Jonas Karlman
2024-06-17 20:56 ` Dragan Simic
2024-06-15 17:03 ` [PATCH 03/13] drm/rockchip: vop: Allow 4096px width scaling Jonas Karlman
2024-06-15 17:03 ` Jonas Karlman [this message]
2024-06-15 17:03 ` [PATCH 05/13] drm/rockchip: dw_hdmi: Allow High TMDS Bit Rates Jonas Karlman
2024-06-15 17:03 ` [PATCH 06/13] drm/rockchip: dw_hdmi: Add max_tmds_clock validation Jonas Karlman
2024-06-15 21:53 ` Diederik de Haas
2024-06-15 21:57 ` Jonas Karlman
2024-06-15 17:03 ` [PATCH 07/13] drm/rockchip: dw_hdmi: Filter modes based on hdmiphy_clk Jonas Karlman
2024-06-15 17:03 ` [PATCH 08/13] drm/rockchip: dw_hdmi: Adjust cklvl & txlvl for RF/EMI Jonas Karlman
2024-06-15 17:04 ` [PATCH 09/13] drm/rockchip: dw_hdmi: Add phy_config for 594Mhz pixel clock Jonas Karlman
2024-06-15 17:04 ` [PATCH 10/13] drm/rockchip: dw_hdmi: Set cur_ctr to 0 always Jonas Karlman
2024-06-15 17:04 ` [PATCH 11/13] drm/rockchip: dw_hdmi: Use auto-generated tables Jonas Karlman
2024-06-15 17:04 ` [PATCH 12/13] drm/rockchip: dw_hdmi: Enable 4K@60Hz mode on RK3399 and RK356x Jonas Karlman
2024-06-15 17:04 ` [PATCH 13/13] drm/rockchip: Load crtc devices in preferred order Jonas Karlman
2024-06-24 16:20 ` (subset) [PATCH 00/13] rockchip: Enable 4K@60Hz mode on RK3228, RK3328, RK3399 and RK356x Heiko Stuebner
2024-07-01 9:07 ` Diederik de Haas
2024-07-01 9:45 ` Diederik de Haas
2024-07-04 17:10 ` Christopher Obbard
2024-07-29 20:21 ` (subset) " Heiko Stuebner
2024-08-15 17:31 ` Heiko Stuebner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240615170417.3134517-5-jonas@kwiboo.se \
--to=jonas@kwiboo.se \
--cc=airlied@gmail.com \
--cc=andy.yan@rock-chips.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=heiko@sntech.de \
--cc=hjc@rock-chips.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=robh@kernel.org \
--cc=tzimmermann@suse.de \
--cc=zhengyang@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®