From patchwork Thu Oct 22 12:31:46 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Ripard X-Patchwork-Id: 3691 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sto.lore.kernel.org (sto.lore.kernel.org [172.232.135.74]) by mxe881.netcup.net (Postfix) with ESMTPS id 6CA5E1C1F20 for ; Thu, 22 Oct 2026 14:36:38 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=kernel.org; spf=pass (sender IP is 172.232.135.74) smtp.mailfrom=linux-sunxi+bounces-26796-noreply=patchwork.local@lists.linux.dev smtp.helo=sto.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.232.135.74 as permitted sender) client-ip=172.232.135.74; envelope-from=linux-sunxi+bounces-26796-noreply=patchwork.local@lists.linux.dev; helo=sto.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.77.114.92]) by sto.lore.kernel.org (Postfix) with ESMTP id 76863604A5E for ; Thu, 22 Oct 2026 12:36:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass header.oldest-pass=0 smtp.remote-ip=127.0.0.1 ARC-Seal: i=2; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=pass; t=1792672596; b=2pki/PTYnKt3jTVpfAOpcC201PhzC1wNqNFehEEtBwflpaGhcaGNl7I7XD13lKPpsLYX /Zyz8GwVg8TpRrkddf6MbvHpjf23seWLWidT2Kmiei6JB8XfPJjOBw3j1KgqsGoolOeVp 8ORq/GPFAjRgQ0opx79SOTk1fvDDZeJJtn4A18AC283ci6WJaowNe0RUl+XMsfbaSCy8m 3aqRC7aQfhdOwXcp3NW1cAUWIe6ya9ld102pxToj7u+E/CsGnzuYKIZLK4z31qwWM7wZr 3C9xfIjRz5TlI2/NH2Z06O1ly93GCJNYJDKDIs9b1hZeCGDQM3G5eD8sTlvvf+eQOag== ARC-Message-Signature: i=2; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1792672596; h=X-Original-To:Received:Received:DKIM-Signature:From:Date:Subject: X-Mailing-List:List-Id:List-Post:List-Help:List-Subscribe: List-Unsubscribe:List-Owner:Precedence:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key; bh=LUcl12gwkN8B7VfualkhTFi3SbBn5mj0wBC5eClpxhE=; b=VapB+j2G4UhQsrPq4ZxJ3avjTHdgK8gIwMKovCC16Oxn5VXAw7h8io+rUHvnWvtAyy7V 2Q2ulxgCUa7tKGFlPhzKC7Fk++4LkKc+0dJijQR1uOeR19/cda8S7MJLbsJA6D+h0oJKP adkVApxrmFIUHsuO0kRL1g+W70KVNgD8upu5ivjtpAfjIpdD4/W7iUtWJZXVDFWj0+Vi7 1AetDdXJwIi4tlAfz8PkOFDz0VeMozUxRVGJjfH3cyV4ACeS25HxlVhwnaEyO3A8c6H7a vJZYKvl0nSlKD21hlI6vADxCURh4TeWn57LQa3Lqq4+lXPKXa8cZ0fX8wLCZ1vnewXg== ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dkim=pass header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=cswfRlBX; arc=pass header.oldest-pass=0 smtp.remote-ip=127.0.0.1 Received: from localhost.localdomain (localhost [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 580FF606A31A; Thu, 22 Oct 2026 12:36:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=cswfRlBX X-Original-To: linux-sunxi@lists.linux.dev Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=100.103.45.18 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1792672596; b=ZA+7OGMqOREH6bfNq3yv5P6+QFgumTaI2oVLbEtabRf3MDf/oXbkJGxyp27ztyqxh7py EOxdvWzKD4lxCAkp+ivCIbH1Qxy+w1ySmLrXy+wLqQrUW8jCrcXl3FbNA3dsbIORVxjW9 qe0Vx//hDOQ7A4QuHTmg88GRKtu7Mes7rb8WOpL/dJQyf76LSa+Zm4RmmX0xSKBM7MVcD i7lxERJD993SB/GxTgCum57I9fPqPvBQ+CuS2mO6AJ5m88+/nEuFJxFKgbgO3E5Njn7PN pc+K0XL5+slleRq6qxz6laeILcu5aY++3S9h5Upveg87RIEhHrZIwR2As0OyggtwKRQ== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1792672596; h=Received:DKIM-Signature:From:Date:Subject:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key; bh=LUcl12gwkN8B7VfualkhTFi3SbBn5mj0wBC5eClpxhE=; b=IFKZ31HA6V0TER7xODU+3Hz9YPgQAK2w1mPGxvZm7a4Wo+8CHqfxetohQU6+K7UTERlv ZnBHsigsvh71hUiPfHIekL3z8Qj3+9HuP3+VihS/P0BSsiXTm0iSzkBN9i+uzKeR8v2Gh 1IahEwkSsYZWKXfO8YOzQTtYwxkKLKYaQyGbmNy8geYyPAHahKZVsHYVNnhH1HJPqhXnX Z+Skna3Vig7znOg3wbP/IRHKih6Lzk9PtTTP4A8+VOWSjQ0v23DdFlcpnivDZnlikX+/D jGrM87z+/DAYiNYQ/BcA/HjDEkXHTFryp+crTOukUKNOM455cFTNjazsOmrEmG5VXCQ== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=cswfRlBX; arc=none smtp.remote-ip=100.103.45.18 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F14C5606A319 for ; Thu, 22 Oct 2026 12:36:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1AEFE1F000C1; Thu, 22 Oct 2026 12:36:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1792672595; bh=LUcl12gwkN8B7VfualkhTFi3SbBn5mj0wBC5eClpxhE=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=cswfRlBXSmu5Mf4wULxcuKDDwWwZVpnZtPbJVn+Pnn3Mx9bV8cUq9FrPs65Kj2udo j8r7bdY2G57A9CICKPS7OVn5H0rwEqnTtdMvl3EL0JCnNAO0VHXznJKm3buV2UmJzC 0qi5iG0XoRnGTfHuhbiv2vBpuig9rabuUbo5un5scReQcaWfey6CeRLcIBZ/iVRil5 ArUy6XZAMYYhFI1oTQ9bfHIPrtU4KAwXFvCBu1EnOmMyYMc64za2IZQ2XzZvwO4Mtw yK6U468EmHmA8WtO4inedGH+LCxyH6YS7VUr5WllA3nfEHGJ9UbUPQBZNic24cu6yU TjM4k/zpMaUGg== From: Maxime Ripard Date: Thu, 22 Oct 2026 14:31:46 +0200 Subject: [PATCH v2 47/59] drm/sun4i: hdmi: Convert to atomic_create_state X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Message-Id: <20261022-drm-no-more-connector-reset-v2-47-0b7e4e85b1e8@kernel.org> References: <20261022-drm-no-more-connector-reset-v2-0-0b7e4e85b1e8@kernel.org> In-Reply-To: <20261022-drm-no-more-connector-reset-v2-0-0b7e4e85b1e8@kernel.org> To: Maarten Lankhorst , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, Maxime Ripard , Chen-Yu Tsai , Samuel Holland , linux-sunxi@lists.linux.dev X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2001; i=mripard@kernel.org; h=from:subject:message-id; bh=w9nESPjYXbVij1sc0qXET6/o4C+Z94CFJROMxWaY4s4=; b=owGbwMvMwCmsHn9OcpHtvjLG02pJDFm3mBbFnSo1su/UKjKwK88JnW+9uFD55b0lVndrhT37l yRfWhXSMZWFQZiTQVZMkeWJTNjp5e2LqxzsV/6AmcPKBDKEgYtTACZyWoOxVlQua5f721N//mTX hq+f/KHPlW3lSUsxKZ/QlSc0OpjX35m5XMdk9R+xcvdpna7H2E5/Y2yYdHfzm/tPVU/3BQslOGx 7diA41M5RPIJB65iMsNa07Iq/bJobmHcs2fFa7XFegfblZk4A X-Developer-Key: i=mripard@kernel.org; a=openpgp; fpr=BE5675C37E818C8B5764241C254BCFC56BF6CE8D X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [1.81 / 15.00]; RBL_SENDERSCORE(2.00)[172.232.135.74:from]; MAILLIST(-0.18)[generic]; MIME_GOOD(-0.10)[text/plain]; BAD_REP_POLICIES(0.10)[]; HAS_LIST_UNSUB(-0.01)[]; FROM_NEQ_ENVFROM(0.00)[mripard@kernel.org,linux-sunxi@lists.linux.dev]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.232.128.0/19, country:SG]; RCVD_COUNT_FIVE(0.00)[5]; FROM_HAS_DN(0.00)[]; TAGGED_FROM(0.00)[bounces-26796-noreply=patchwork.local]; R_DKIM_ALLOW(0.00)[kernel.org:s=k20260515]; DBL_BLOCKED_OPENRESOLVER(0.00)[sholland.org:email,sto.lore.kernel.org:helo,sto.lore.kernel.org:rdns,linux.dev:email]; FORGED_SENDER_MAILLIST(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; R_SPF_ALLOW(0.00)[+ip4:172.232.135.74]; DKIM_TRACE(0.00)[kernel.org:+]; TO_DN_SOME(0.00)[]; RECEIVED_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[100.103.45.18:received,100.77.114.92:received]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc20261015:i=2]; DMARC_POLICY_ALLOW(0.00)[kernel.org,quarantine]; FREEMAIL_TO(0.00)[linux.intel.com,suse.de,gmail.com,ffwll.ch]; RCPT_COUNT_SEVEN(0.00)[9]; MIME_TRACE(0.00)[0:+]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RBL_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[172.232.135.74:from] X-Rspamd-Queue-Id: 6CA5E1C1F20 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?= The sun4i HDMI connector reset implementation creates a pristine state and initializes the HDMI state. It does not perform any hardware reset. Since this is equivalent to what atomic_create_state expects, convert the reset function to an atomic_create_state hook that returns the initialized state. Signed-off-by: Maxime Ripard --- Cc: Chen-Yu Tsai Cc: Samuel Holland Cc: linux-sunxi@lists.linux.dev --- drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c index 3084f6570c29..58626d0562ae 100644 --- a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c +++ b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c @@ -291,9 +291,17 @@ sun4i_hdmi_connector_detect(struct drm_connector *connector, bool force) } -static void sun4i_hdmi_connector_reset(struct drm_connector *connector) +static struct drm_connector_state * +sun4i_hdmi_connector_create_state(struct drm_connector *connector) { - drm_atomic_helper_connector_reset(connector); - __drm_atomic_helper_connector_hdmi_state_init(connector->state, + struct drm_connector_state *connector_state; + + connector_state = drm_atomic_helper_connector_create_state(connector); + if (IS_ERR(connector_state)) + return connector_state; + + __drm_atomic_helper_connector_hdmi_state_init(connector_state, connector); + + return connector_state; } @@ -302,5 +310,5 @@ static const struct drm_connector_funcs sun4i_hdmi_connector_funcs = { .detect = sun4i_hdmi_connector_detect, .fill_modes = drm_helper_probe_single_connector_modes, - .reset = sun4i_hdmi_connector_reset, + .atomic_create_state = sun4i_hdmi_connector_create_state, .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state, .atomic_destroy_state = drm_atomic_helper_connector_destroy_state,