From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 54D4533ADBF for ; Tue, 19 May 2026 06:36:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779172614; cv=none; b=bqthPqdwHdfDqtb4rXlF8LVGyLI3zCiOk2t/5ii+K4lvgqAEGD/6p7VK5I/d4t39GAXM8ymvtc6dwrrXZ5Vpx99OGHzn/3CP5MnxBaXZDDepKdtaRrIf300Lx3Y7oKjjuUsTMM4Xoyx2uIgk2PbvAMjThl4lRdUC26JJpDYWE1M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779172614; c=relaxed/simple; bh=7AaeSvfyqPMp9R+dhmGlKn/SXtEA+e23F3uNc8wGbDU=; h=Message-ID:Date:MIME-Version:From:Subject:To:Cc:References: In-Reply-To:Content-Type; b=SAJyaUZZvRKTmBboqPAe5ybB2VQLDakjIdauNKyhftJ00GdZVL2L48w77Q3jB7OWh4Wz8thpT5AtsVNtoU7D2qOBLfW8yc9OSQgM+CoJtkjbFodl6vcogU//w6OefZH7ZGCBRBrGBNOV1v5K6u4/vyv9BcSrmj6BLu/J+A179Lk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sxKuhout; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="sxKuhout" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 915E7C2BCB3; Tue, 19 May 2026 06:36:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1779172614; bh=7AaeSvfyqPMp9R+dhmGlKn/SXtEA+e23F3uNc8wGbDU=; h=Date:From:Subject:To:Cc:References:In-Reply-To:From; b=sxKuhoutbBtK0thy7g5VaN56hzdcLoA0tILrxGQOek5+j+K/xXcdlk7QLBdLhYcJd ON7Izh0cieqjaKKnzTWscuOox14dF0WZROd5EZ1b0Dge0P2DhT+XCTnym3s1ZZjGJX KQHPS3qrU+Z30q3sodjyEBu1OI28g5L1IvExI3ZE0KU8QBGPcSc8drqsaNTsEZ7TWd ycoA5MW5zdgtgaeSr8GQqSNHrnPLUHm5G3x/vzRN6sMUSDJP5qFnWeksX3Sgd5fT/W 238OQVJtmsy0ggkXFLpOOs+8wfxS0WZd62q7RsjV2L8zsYusvz1yKgUQ+c5KZSZShu Gon7WAJKaUpew== Message-ID: <48fdaecd-a8b9-473d-aad2-35f5e459f161@kernel.org> Date: Tue, 19 May 2026 08:36:50 +0200 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Hans Verkuil Subject: Re: [PATCH 05/13] drm/meson: encoder_hdmi: Use CEC phys addr from display_info To: Jonas Karlman , Neil Armstrong , Kevin Hilman , Heiko Stuebner , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Jerome Brunet , Martin Blumenstingl Cc: dri-devel@lists.freedesktop.org, linux-amlogic@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org References: <20260518194744.2483580-1-jonas@kwiboo.se> <20260518194744.2483580-6-jonas@kwiboo.se> Content-Language: en-US, nl In-Reply-To: <20260518194744.2483580-6-jonas@kwiboo.se> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 18/05/2026 21:47, Jonas Karlman wrote: > The dw-hdmi bridge detect() func now updates EDID for the connector. > Something that ensures that display_info.source_physical_address has an > updated CEC phys addr when the hpd_notify() func is called. > > Change to use display_info source_physical_address directly instead of > re-reading EDID to set the CEC phys addr at HPD interrupt. > > Signed-off-by: Jonas Karlman Acked-by: Hans Verkuil Regards, Hans > --- > drivers/gpu/drm/meson/meson_encoder_hdmi.c | 26 ++++------------------ > 1 file changed, 4 insertions(+), 22 deletions(-) > > diff --git a/drivers/gpu/drm/meson/meson_encoder_hdmi.c b/drivers/gpu/drm/meson/meson_encoder_hdmi.c > index 55c0601df3c6..1b9a1d9ed3d3 100644 > --- a/drivers/gpu/drm/meson/meson_encoder_hdmi.c > +++ b/drivers/gpu/drm/meson/meson_encoder_hdmi.c > @@ -330,28 +330,10 @@ static void meson_encoder_hdmi_hpd_notify(struct drm_bridge *bridge, > if (!encoder_hdmi->cec_notifier) > return; > > - if (status == connector_status_connected) { > - const struct drm_edid *drm_edid; > - const struct edid *edid; > - > - drm_edid = drm_bridge_edid_read(encoder_hdmi->bridge.next_bridge, > - encoder_hdmi->connector); > - if (!drm_edid) > - return; > - > - /* > - * FIXME: The CEC physical address should be set using > - * cec_notifier_set_phys_addr(encoder_hdmi->cec_notifier, > - * connector->display_info.source_physical_address) from a path > - * that has read the EDID and called > - * drm_edid_connector_update(). > - */ > - edid = drm_edid_raw(drm_edid); > - > - cec_notifier_set_phys_addr_from_edid(encoder_hdmi->cec_notifier, edid); > - > - drm_edid_free(drm_edid); > - } else > + if (status == connector_status_connected) > + cec_notifier_set_phys_addr(encoder_hdmi->cec_notifier, > + connector->display_info.source_physical_address); > + else > cec_notifier_phys_addr_invalidate(encoder_hdmi->cec_notifier); > } >