From patchwork Fri Jul 31 16:19:49 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cristian Ciocaltea X-Patchwork-Id: 2831 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 628CD1C1D77 for ; Fri, 31 Jul 2026 18:33:55 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=collabora.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24843-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24843-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 8012B3177C0F for ; Fri, 31 Jul 2026 16:24:30 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B1B5F46A600; Fri, 31 Jul 2026 16:20:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="Z3rE6q9C" X-Original-To: linux-sunxi@lists.linux.dev Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (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 1EC7144CF29 for ; Fri, 31 Jul 2026 16:19:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785514797; cv=none; b=PYEs/oyOfCWURNA7J3IRxkbW+VGJQrSYWdtkj9bPtNo3u4xd9nsjT+mWwo5qm03VDrX9Ae9fsQLDdbFRk3nbOb1gU8J7uSY1Qeh+qczk/ggWKxQ9eBulgGR6h301/5STkYRsN/pDNngBXXr79E8hD//RruCqCdtAM0uetPYpo1c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785514797; c=relaxed/simple; bh=hEKxNu2C8ewO/+aCheyfTQqRKZ28rWyZ2tMcGpLe148=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YOeFMLQ4MScM9LbF8s6kc4uiO2Uke2edP6zgBp2TbxxTDETomH+lHGIg2HtaPzUAHRLoy5zmPivZYPRk1Iwt2UiTY4m7A+lIDy5ix/MPfkEn3rYgX1Wn38Qi2YIowoD/pGPHNiqlwXygtkcQny41bHUalwunHin2xh/FfL8B5/4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=Z3rE6q9C; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1785514784; bh=hEKxNu2C8ewO/+aCheyfTQqRKZ28rWyZ2tMcGpLe148=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Z3rE6q9Cp7WrUcC9hRs9EHgLzZR/YIutuDawEQhKJgH/dBBSsPWw1waoIfSWvBAzD Bhuip3VcxJC4YKp2duFTkO9Hn6e9Fqtu5MylYhGA/YuQkEqbx/8GxH2QEQiA6l6F6W fjZPjEjl4L/neFWhl5cpt7ZUFhqrwbV9H8x1m6ba0KkDlLk2O0UwqA7Q1W4LrOG66q a+GLnh52m+g66/Bxdrprj4LRDyi5uT+QoOZG+Z0y39YONHtPs9mzL9plmksi30sjZ6 yps35to6E65uZtzUOZhXDYCofov0YSubrCC9SvHsQzh9ez3j992zJKHDCY9JSWo501 uuMkuOyRaJxig== Received: from localhost (unknown [100.64.0.241]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange secp256r1 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: cristicc) by bali.collaboradmins.com (Postfix) with ESMTPSA id BE6E317E0937; Fri, 31 Jul 2026 18:19:44 +0200 (CEST) From: Cristian Ciocaltea Date: Fri, 31 Jul 2026 19:19:49 +0300 Subject: [PATCH v10 42/69] drm/vc4: hdmi: Switch to .force_ctx() connector helper Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20260731-dw-hdmi-qp-scramb-v10-42-294364b2cf15@collabora.com> References: <20260731-dw-hdmi-qp-scramb-v10-0-294364b2cf15@collabora.com> In-Reply-To: <20260731-dw-hdmi-qp-scramb-v10-0-294364b2cf15@collabora.com> To: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Chen-Yu Tsai , Samuel Holland , Dave Stevenson , =?utf-8?q?Ma=C3=ADra_Canal?= , Raspberry Pi Kernel Maintenance , Sandy Huang , =?utf-8?q?Heiko_St=C3=BCbner?= , Andy Yan , Algea Cao , Daniel Stone , Liu Ying , Phong LE Cc: kernel@collabora.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-rockchip@lists.infradead.org X-Mailer: b4 0.15.2 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Use drm_atomic_helper_connector_hdmi_force_ctx() as the .force_ctx() implementation, so that the acquire context created by the probe helper reaches the HDMI connector framework. This is a prerequisite for converting the driver to the common HDMI 2.0 scrambling infrastructure, which implicitly handles SCDC state recovery through a CRTC reset when the sink reconnects while the display pipeline is active. Note that this does not interfere with the local SCDC state-management implementation, since the driver's scrambler capability has not yet been exposed through the common helpers. Signed-off-by: Cristian Ciocaltea Reviewed-by: Maxime Ripard --- drivers/gpu/drm/vc4/vc4_hdmi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c index 4f7fc6689869..ba16e7944cf3 100644 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c @@ -504,7 +504,6 @@ static void vc4_hdmi_connector_reset(struct drm_connector *connector) } static const struct drm_connector_funcs vc4_hdmi_connector_funcs = { - .force = drm_atomic_helper_connector_hdmi_force, .fill_modes = drm_helper_probe_single_connector_modes, .reset = vc4_hdmi_connector_reset, .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state, @@ -513,6 +512,7 @@ static const struct drm_connector_funcs vc4_hdmi_connector_funcs = { static const struct drm_connector_helper_funcs vc4_hdmi_connector_helper_funcs = { .detect_ctx = vc4_hdmi_connector_detect_ctx, + .force_ctx = drm_atomic_helper_connector_hdmi_force_ctx, .get_modes = vc4_hdmi_connector_get_modes, .atomic_check = vc4_hdmi_connector_atomic_check, .mode_valid = drm_hdmi_connector_mode_valid,