From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2BB3438D69D; Mon, 24 Aug 2026 11:28:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.135.223.130 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787570902; cv=none; b=PkfWn5YZj1AY3+CMdnJFnSVGgy7brpJ29zuBoo9x9eonJurKjys+rVvOYU5Fb0CdOtnssfhj7XqFp/ZfjoFm3tO4Ht0RCh99UfbPh7CU4wQ153t6APie2jYvHgYidWDwC+jTtoqXBVMNdkcXZTbA/DAIhRVbTBaS/oSmua1gt5Y= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787570902; c=relaxed/simple; bh=sdV8IKSzvBM2QqVDwBaCbcaPhegAg+U0Rp2ZABkRGd8=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=h8Rmp/cykpM9PYniHV6DrJKKDM4pGhR7zEv4M/o+TA9NS3oqgUw24C1opnvYycPS2RvAA2g4e1n4rY4NxRn8PkMioihjrcYZxtrn/kJVif9mId69kWka4WuA5I4TudzkiPeCob+gbJbDS6/BGLx6ndNyWL463aJQ8t8YSxj4NAI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de; spf=pass smtp.mailfrom=suse.de; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=jPAk+QU8; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=5lDYM8Sp; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=bsPlg+u0; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=OLusts3S; arc=none smtp.client-ip=195.135.223.130 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="jPAk+QU8"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="5lDYM8Sp"; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="bsPlg+u0"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="OLusts3S" Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 33A70868AD; Mon, 24 Aug 2026 11:28:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1787570893; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=jPAk+QU8Oz9JiYGtn+V5jZxMEyjAvNiz7x+giw+idIe7iWHZ3M9kfknb1WdCY6dzXCmQD3 RUzjbubEF3hnieEB81hcTriJJ/TZwn9WrJvXmwfrSSxcQQ1ZlbjhLeh4wlav9BK5HaMwO3 6684oDDWCwOgqkGGromNNiB5crtoKp8= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1787570893; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=5lDYM8Sp+2Zs/UK8WEQsqpqKl/p+3waU+CqzB8+6scnvBPnqiDamSiTmKrctumFJCWBEYi aX34sUfDAX5NblCQ== Authentication-Results: smtp-out1.suse.de; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1787570889; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=bsPlg+u0OwdeHNbNGrLeK44/R8qCs4CSg2PYS8tAMdo+SiYAgso2oR9h7L/qr4Kf3DuMkG JKgB4VRdqQ8XdeAhqD8b8vI76Bx+jM9yHqOPuKlYDaI0OV9UYbWCi5Q1nsdyTPB6peYLQF TjI7tAEaxq6cznVveiRZRfRGOnX5P94= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1787570889; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=OLusts3Smqe2AFyYsDutCyN37J42MZz2JAj9qpn2mbZkclBOoroaTNZlb/XsAZWC4PdLh8 KxcB0oUEd1WRgsCA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 2DC4E1333B; Mon, 24 Aug 2026 11:28:06 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id l1sQCsYqjGpBYAAAD6G6ig (envelope-from ); Mon, 24 Aug 2026 11:28:06 +0000 Message-ID: Date: Mon, 24 Aug 2026 13:28:05 +0200 Precedence: bulk X-Mailing-List: linux-hyperv@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 00/70] drm/crtc: Convert all drivers to atomic_create_state and remove reset To: Maxime Ripard , Maarten Lankhorst , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, Janne Grunau , Sasha Finkelstein , asahi@lists.linux.dev, =?UTF-8?Q?Christian_K=C3=B6nig?= , Alex Deucher , amd-gfx@lists.freedesktop.org, Liviu Dudau , Russell King , Alim Akhtar , Inki Dae , Krzysztof Kozlowski , Kyungmin Park , Peter Griffin , Seung-Woo Kim , linux-samsung-soc@vger.kernel.org, Alison Wang , Stefan Agner , Ruben Wauters , Tian Tao , Xinwei Kong , Yongbang Shi , John Stultz , Sumit Semwal , Xinliang Liu , Yongqin Liu , Dexuan Cui , Long Li , Saurabh Sengar , linux-hyperv@vger.kernel.org, Fabio Estevam , Frank Li , Liu Ying , Pengutronix Kernel Team , Sascha Hauer , imx@lists.linux.dev, Laurentiu Palcu , Lucas Stach , Paul Cercueil , linux-mips@vger.kernel.org, Anitha Chrisanthus , Paul Kocialkowski , Jerome Brunet , Kevin Hilman , Martin Blumenstingl , linux-amlogic@lists.infradead.org, Abhinav Kumar , Dmitry Baryshkov , Jessica Zhang , Marijn Suijten , Rob Clark , Sean Paul , freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, Marek Vasut , Dave Airlie , Gerd Hoffmann , spice-devel@lists.freedesktop.org, virtualization@lists.linux.dev, Geert Uytterhoeven , linux-renesas-soc@vger.kernel.org, Marcus Folkesson , Baolin Wang , Chunyan Zhang , Orson Zhai , Alain Volmat , Raphael Gallais-Pou , Alexandre Torgue , Maxime Coquelin , Philippe Cornu , Raphael Gallais-Pou , Yannick Fertre , Chen-Yu Tsai , Samuel Holland , linux-sunxi@lists.linux.dev, Jyri Sarha , Tomi Valkeinen , Aditya Garg , Aun-Ali Zaidi , LiangCheng Wang , Alex Lanzano , Hans de Goede , Icenowy Zheng , Chia-I Wu , Dmitry Osipenko , Gurchetan Singh , Michal Simek , Javier Martinez Canillas , Harry Wentland , Leo Li , Rodrigo Siqueira , Jocelyn Falempe , Alexandre Belloni , Claudiu Beznea , Dharma Balasubiramani , Manikandan Muralidharan , Nicolas Ferre , Philipp Zabel , Huacai Chen , Jianmin Lv , Mingcong Bai , Qianhai Wu , Xi Ruoyao , AngeloGioacchino Del Regno , Chun-Kuang Hu , Matthias Brugger , Danilo Krummrich , Lyude Paul , nouveau@lists.freedesktop.org, Kieran Bingham , Laurent Pinchart , Magnus Damm , Tomi Valkeinen , Biju Das , =?UTF-8?Q?Heiko_St=C3=BCbner?= , Andy Yan , Sandy Huang , linux-rockchip@lists.infradead.org, Iker Pedrosa , Jonathan Hunter , Mikko Perttunen , Thierry Reding , linux-tegra@vger.kernel.org, =?UTF-8?Q?Ma=C3=ADra_Canal?= , Dave Stevenson , Raspberry Pi Kernel Maintenance , Haneen Mohammed , Louis Chauvet , Melissa Wen , Broadcom internal kernel review list , Zack Rusin References: <20260821-drm-no-more-crtc-reset-v1-0-fb793475c05a@kernel.org> Content-Language: en-US From: Thomas Zimmermann Autocrypt: addr=tzimmermann@suse.de; keydata= xsBNBFs50uABCADEHPidWt974CaxBVbrIBwqcq/WURinJ3+2WlIrKWspiP83vfZKaXhFYsdg XH47fDVbPPj+d6tQrw5lPQCyqjwrCPYnq3WlIBnGPJ4/jreTL6V+qfKRDlGLWFjZcsrPJGE0 BeB5BbqP5erN1qylK9i3gPoQjXGhpBpQYwRrEyQyjuvk+Ev0K1Jc5tVDeJAuau3TGNgah4Yc hdHm3bkPjz9EErV85RwvImQ1dptvx6s7xzwXTgGAsaYZsL8WCwDaTuqFa1d1jjlaxg6+tZsB 9GluwvIhSezPgnEmimZDkGnZRRSFiGP8yjqTjjWuf0bSj5rUnTGiyLyRZRNGcXmu6hjlABEB AAHNJ1Rob21hcyBaaW1tZXJtYW5uIDx0emltbWVybWFubkBzdXNlLmRlPsLAjgQTAQgAOAIb AwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBHIX+6yM6c9jRKFo5WgNwR1TC3ojBQJftODH AAoJEGgNwR1TC3ojx1wH/0hKGWugiqDgLNXLRD/4TfHBEKmxIrmfu9Z5t7vwUKfwhFL6hqvo lXPJJKQpQ2z8+X2vZm/slsLn7J1yjrOsoJhKABDi+3QWWSGkaGwRJAdPVVyJMfJRNNNIKwVb U6B1BkX2XDKDGffF4TxlOpSQzdtNI/9gleOoUA8+jy8knnDYzjBNOZqLG2FuTdicBXblz0Mf vg41gd9kCwYXDnD91rJU8tzylXv03E75NCaTxTM+FBXPmsAVYQ4GYhhgFt8S2UWMoaaABLDe 7l5FdnLdDEcbmd8uLU2CaG4W2cLrUaI4jz2XbkcPQkqTQ3EB67hYkjiEE6Zy3ggOitiQGcqp j//OwE0EWznS4AEIAMYmP4M/V+T5RY5at/g7rUdNsLhWv1APYrh9RQefODYHrNRHUE9eosYb T6XMryR9hT8XlGOYRwKWwiQBoWSDiTMo/Xi29jUnn4BXfI2px2DTXwc22LKtLAgTRjP+qbU6 3Y0xnQN29UGDbYgyyK51DW3H0If2a3JNsheAAK+Xc9baj0LGIc8T9uiEWHBnCH+RdhgATnWW GKdDegUR5BkDfDg5O/FISymJBHx2Dyoklv5g4BzkgqTqwmaYzsl8UxZKvbaxq0zbehDda8lv hFXodNFMAgTLJlLuDYOGLK2AwbrS3Sp0AEbkpdJBb44qVlGm5bApZouHeJ/+n+7r12+lqdsA EQEAAcLAdgQYAQgAIAIbDBYhBHIX+6yM6c9jRKFo5WgNwR1TC3ojBQJftOH6AAoJEGgNwR1T C3ojVSkIALpAPkIJPQoURPb1VWjh34l0HlglmYHvZszJWTXYwavHR8+k6Baa6H7ufXNQtThR yIxJrQLW6rV5lm7TjhffEhxVCn37+cg0zZ3j7zIsSS0rx/aMwi6VhFJA5hfn3T0TtrijKP4A SAQO9xD1Zk9/61JWk8OysuIh7MXkl0fxbRKWE93XeQBhIJHQfnc+YBLprdnxR446Sh8Wn/2D Ya8cavuWf2zrB6cZurs048xe0UbSW5AOSo4V9M0jzYI4nZqTmPxYyXbm30Kvmz0rYVRaitYJ 4kyYYMhuULvrJDMjZRvaNe52tkKAvMevcGdt38H4KSVXAylqyQOW5zvPc4/sq9c= In-Reply-To: <20260821-drm-no-more-crtc-reset-v1-0-fb793475c05a@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -0.80 X-Spam-Level: X-Spam-Flag: NO X-Spamd-Result: default: False [-0.80 / 50.00]; BAYES_HAM(-3.00)[100.00%]; FORGED_RECIPIENTS(2.00)[m:mripard@kernel.org,m:maarten.lankhorst@linux.intel.com,m:airlied@gmail.com,m:simona@ffwll.ch,m:dri-devel@lists.freedesktop.org,m:j@jannau.net,m:k@chaosmail.tech,m:asahi@lists.linux.dev,m:christian.koenig@amd.com,m:alexander.deucher@amd.com,m:amd-gfx@lists.freedesktop.org,m:liviu.dudau@arm.com,m:linux@armlinux.org.uk,m:krzk@kernel.org,m:peter.griffin@linaro.org,m:stefan@agner.ch,m:rubenru09@aol.com,m:tiantao6@hisilicon.com,m:kong.kongxinwei@hisilicon.com,m:shiyongbang@huawei.com,m:jstultz@google.com,m:sumit.semwal@linaro.org,m:xinliang.liu@linaro.org,m:yongqin.liu@linaro.org,m:decui@microsoft.com,m:longli@microsoft.com,m:ssengar@linux.microsoft.com,m:festevam@gmail.com,m:imx@lists.linux.dev,m:paul@crapouillou.net,m:anitha.chrisanthus@intel.com,m:jbrunet@baylibre.com,m:khilman@baylibre.com,m:martin.blumenstingl@googlemail.com,m:linux-amlogic@lists.infradead.org,m:abhinav.kumar@linux.dev,m:lumag@kernel.org,m:jesszhan0024@gmail.com,m:freedreno@lists.freedesktop .org,m:marex@denx.de,m:spice-devel@lists.freedesktop.org,m:virtualization@lists.linux.dev,m:geert+renesas@glider.be,m:marcus.folkesson@gmail.com,m:baolin.wang@linux.alibaba.com,m:zhang.lyra@gmail.com,m:orsonzhai@gmail.com,m:alain.volmat@foss.st.com,m:rgallaispou@gmail.com,m:alexandre.torgue@foss.st.com,m:mcoquelin.stm32@gmail.com,m:philippe.cornu@foss.st.com,m:raphael.gallais-pou@foss.st.com,m:yannick.fertre@foss.st.com,m:wens@kernel.org,m:linux-sunxi@lists.linux.dev,m:jyri.sarha@iki.fi,m:tomi.valkeinen@ideasonboard.com,m:admin@kodeit.net,m:zaq14760@gmail.com,m:lanzano.alex@gmail.com,m:hansg@kernel.org,m:zhengxingda@iscas.ac.cn,m:olvaffe@gmail.com,m:dmitry.osipenko@collabora.com,m:gurchetansingh@chromium.org,m:michal.simek@amd.com,m:harry.wentland@amd.com,m:sunpeng.li@amd.com,m:siqueira@igalia.com,m:alexandre.belloni@bootlin.com,m:dharma.b@microchip.com,s:p.zabel@pengutronix.de,s:dave.stevenson@raspberrypi.com,s:kernel-list@raspberrypi.com,s:lyude@redhat.com,s:andy.yan@rock-chips.co m,s:hjc@rock-chips.com,s:heiko@sntech.de,s:linux-tegra@vger.kernel.org,s:xry111@xry111.site]; SUSPICIOUS_RECIPS(1.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.20)[-0.999]; MIME_GOOD(-0.10)[text/plain]; TO_DN_SOME(0.00)[]; MIME_TRACE(0.00)[0:+]; TAGGED_RCPT(0.00)[renesas]; FREEMAIL_TO(0.00)[kernel.org,linux.intel.com,gmail.com,ffwll.ch]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FROM_HAS_DN(0.00)[]; FREEMAIL_CC(0.00)[lists.freedesktop.org,jannau.net,chaosmail.tech,lists.linux.dev,amd.com,arm.com,armlinux.org.uk,samsung.com,kernel.org,linaro.org,vger.kernel.org,nxp.com,agner.ch,aol.com,hisilicon.com,huawei.com,google.com,microsoft.com,linux.microsoft.com,gmail.com,pengutronix.de,oss.nxp.com,crapouillou.net,intel.com,sys-base.io,baylibre.com,googlemail.com,lists.infradead.org,linux.dev,somainline.org,oss.qualcomm.com,poorly.run,denx.de,redhat.com,glider.be,linux.alibaba.com,foss.st.com,sholland.org,iki.fi,ideasonboard.com,proton.me,kodeit.net,iscas.ac.cn,collabora.com,chromium.org,igalia.com,bootlin.com,tuxon.dev,microchip.com,loongson.cn,aosc.io,xry111.site,bp.renesas.com,sntech.de,rock-chips.com,nvidia.com,raspberrypi.com,broadcom.com]; R_RATELIMIT(0.00)[to_ip_from(RLh4b8m38yy5xh1jtyurbarrz6)]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCPT_COUNT_GT_50(0.00)[135]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.com:url,suse.de:email,suse.de:mid,imap1.dmz-prg2.suse.org:helo] Hi Maxime Am 21.08.26 um 16:38 schrieb Maxime Ripard: > This is a follow-up to the plane reset removal series, and part of a > larger effort to remove the reset hook from all KMS objects. > > The CRTC reset hook is overloaded: it is called both at probe time to > create the initial software state and during suspend/resume to reset > hardware and software state. These two roles have different > requirements, and the reset hook is not fallible, making error > handling difficult for the initial state allocation path. > > While reset has the semantics to reset both the software and hardware > state, the vast majority of implementations and all the helpers only > reset the software state, making them equivalent to > atomic_create_state in practice. The atomic_create_state hook makes > this explicit: it only allocates and initializes a pristine state > without any side effect, and returns the state pointer or an ERR_PTR > on failure. > > This series converts all CRTC drivers tree-wide from the reset hook to > atomic_create_state, then removes the reset hook from struct > drm_crtc_funcs entirely. Two drivers (tilcdc and loongson) had actual > hardware reset logic mixed into their reset hook; those are moved to > CRTC creation instead. The conversions were done using a combination of > Coccinelle semantic patches and manual adjustments. > > Signed-off-by: Maxime Ripard I've gone through the series and it looks good to me; except for patch 50. Feel free to add Reviewed-by: Thomas Zimmermann to the series with the exception of patch 50. Best regards Thomas > --- > Maxime Ripard (70): > drm/adp: Switch to drm_atomic_helper_crtc_create_state > drm/amdgpu: vkms: Switch to drm_atomic_helper_crtc_create_state > drm/arm: hdlcd: Switch to drm_atomic_helper_crtc_create_state > drm/armada: Switch to drm_atomic_helper_crtc_create_state > drm/exynos: Switch to drm_atomic_helper_crtc_create_state > drm/fsl-dcu: Switch to drm_atomic_helper_crtc_create_state > drm/gud: Switch to drm_atomic_helper_crtc_create_state > drm/hisilicon: hibmc: Switch to drm_atomic_helper_crtc_create_state > drm/hisilicon: kirin: Switch to drm_atomic_helper_crtc_create_state > drm/hyperv: Switch to drm_atomic_helper_crtc_create_state > drm/imx: dc: Switch to drm_atomic_helper_crtc_create_state > drm/imx: dcss: Switch to drm_atomic_helper_crtc_create_state > drm/ingenic: Switch to drm_atomic_helper_crtc_create_state > drm/kmb: Switch to drm_atomic_helper_crtc_create_state > drm/logicvc: Switch to drm_atomic_helper_crtc_create_state > drm/meson: Switch to drm_atomic_helper_crtc_create_state > drm/msm: mdp4: Switch to drm_atomic_helper_crtc_create_state > drm/mxs: mxsfb: Switch to drm_atomic_helper_crtc_create_state > drm/qxl: Switch to drm_atomic_helper_crtc_create_state > drm/renesas: shmobile: Switch to drm_atomic_helper_crtc_create_state > drm/simple-kms: Remove unused reset_crtc hook > drm/simple-kms: Switch to drm_atomic_helper_crtc_create_state > drm/sitronix: st7571: Switch to drm_atomic_helper_crtc_create_state > drm/sprd: Switch to drm_atomic_helper_crtc_create_state > drm/sti: Switch to drm_atomic_helper_crtc_create_state > drm/stm: Switch to drm_atomic_helper_crtc_create_state > drm/sun4i: Switch to drm_atomic_helper_crtc_create_state > drm/tests: Switch to drm_atomic_helper_crtc_create_state > drm/tilcdc: Move hardware reset to CRTC creation > drm/tilcdc: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: appletbdrm: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: bochs: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: cirrus: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: pixpaper: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: sharp: Switch to drm_atomic_helper_crtc_create_state > drm/udl: Switch to drm_atomic_helper_crtc_create_state > drm/vbox: Switch to drm_atomic_helper_crtc_create_state > drm/verisilicon: Switch to drm_atomic_helper_crtc_create_state > drm/virtio: Switch to drm_atomic_helper_crtc_create_state > drm/xlnx: Switch to drm_atomic_helper_crtc_create_state > drm/mipi-dbi: Switch to drm_atomic_helper_crtc_create_state > drm/atomic-helper: Remove drm_atomic_helper_crtc_reset > sysfb: Convert to create_state > drm/amdgpu: dm: Convert to atomic_create_state > drm/komeda: Convert to atomic_create_state > drm/malidp: Convert to atomic_create_state > drm/ast: Convert to atomic_create_state > drm/atmel-hlcdc: Convert to atomic_create_state > drm/imx: ipuv3: Convert to atomic_create_state > drm/loongsoon: Move hardware reset to CRTC creation > drm/loongson: Convert to atomic_create_state > drm/mediatek: Convert to atomic_create_state > drm/mgag200: Convert to atomic_create_state > drm/msm: dpu1: Convert to atomic_create_state > drm/msm: mdp5: Convert to atomic_create_state > drm/mxsfb: lcdif: Convert to atomic_create_state > drm/nouveau: Convert to atomic_create_state > drm/omapdrm: Convert to atomic_create_state > drm/rcar-du: Convert to atomic_create_state > drm/rzg2l-du: Convert to atomic_create_state > drm/rockchip: vop: Convert to atomic_create_state > drm/rockchip: vop2: Convert to atomic_create_state > drm/sitronix: st7920: Convert to atomic_create_state > drm/solomon: ssd130x: Convert to atomic_create_state > drm/tegra: Convert to atomic_create_state > drm/vc4: Convert to atomic_create_state > drm/vkms: Convert to atomic_create_state > drm/vmwgfx: Convert to atomic_create_state > drm/atomic-helper: Remove __drm_atomic_helper_crtc_reset > drm/crtc: Remove reset > > drivers/gpu/drm/adp/adp_drv.c | 2 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c | 2 +- > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 17 ++++---- > drivers/gpu/drm/arm/display/komeda/komeda_crtc.c | 18 ++++---- > drivers/gpu/drm/arm/hdlcd_crtc.c | 2 +- > drivers/gpu/drm/arm/malidp_crtc.c | 18 ++++---- > drivers/gpu/drm/armada/armada_crtc.c | 2 +- > drivers/gpu/drm/ast/ast_mode.c | 18 ++++---- > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 19 ++++----- > drivers/gpu/drm/drm_atomic_state_helper.c | 45 -------------------- > drivers/gpu/drm/drm_mode_config.c | 4 +- > drivers/gpu/drm/drm_simple_kms_helper.c | 13 +----- > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 2 +- > drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 2 +- > drivers/gpu/drm/gud/gud_drv.c | 2 +- > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 2 +- > drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 2 +- > drivers/gpu/drm/hyperv/hyperv_drm_modeset.c | 2 +- > drivers/gpu/drm/imx/dc/dc-crtc.c | 2 +- > drivers/gpu/drm/imx/dcss/dcss-crtc.c | 2 +- > drivers/gpu/drm/imx/ipuv3/ipuv3-crtc.c | 18 ++++---- > drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 2 +- > drivers/gpu/drm/kmb/kmb_crtc.c | 2 +- > drivers/gpu/drm/logicvc/logicvc_crtc.c | 2 +- > drivers/gpu/drm/loongson/lsdc_crtc.c | 26 ++++++------ > drivers/gpu/drm/mediatek/mtk_crtc.c | 18 ++++---- > drivers/gpu/drm/meson/meson_crtc.c | 2 +- > drivers/gpu/drm/mgag200/mgag200_drv.h | 4 +- > drivers/gpu/drm/mgag200/mgag200_mode.c | 15 ++++--- > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 18 ++++---- > drivers/gpu/drm/msm/disp/mdp4/mdp4_crtc.c | 2 +- > drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c | 20 ++++----- > drivers/gpu/drm/mxsfb/lcdif_kms.c | 17 ++++---- > drivers/gpu/drm/mxsfb/mxsfb_kms.c | 4 +- > drivers/gpu/drm/nouveau/dispnv50/head.c | 14 +++---- > drivers/gpu/drm/omapdrm/omap_crtc.c | 17 ++++---- > drivers/gpu/drm/qxl/qxl_display.c | 2 +- > drivers/gpu/drm/renesas/rcar-du/rcar_du_crtc.c | 17 ++++---- > drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c | 15 +++---- > drivers/gpu/drm/renesas/shmobile/shmob_drm_crtc.c | 2 +- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 18 ++++---- > drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 18 ++++---- > drivers/gpu/drm/sitronix/st7571.c | 2 +- > drivers/gpu/drm/sitronix/st7920.c | 10 +++-- > drivers/gpu/drm/solomon/ssd130x.c | 10 +++-- > drivers/gpu/drm/sprd/sprd_dpu.c | 2 +- > drivers/gpu/drm/sti/sti_crtc.c | 2 +- > drivers/gpu/drm/stm/ltdc.c | 4 +- > drivers/gpu/drm/sun4i/sun4i_crtc.c | 2 +- > drivers/gpu/drm/sysfb/drm_sysfb_helper.h | 4 +- > drivers/gpu/drm/sysfb/drm_sysfb_modeset.c | 20 ++++----- > drivers/gpu/drm/tegra/dc.c | 18 ++++---- > drivers/gpu/drm/tests/drm_kunit_helpers.c | 2 +- > drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 49 +++++++++------------- > drivers/gpu/drm/tiny/appletbdrm.c | 2 +- > drivers/gpu/drm/tiny/bochs.c | 2 +- > drivers/gpu/drm/tiny/cirrus-qemu.c | 2 +- > drivers/gpu/drm/tiny/pixpaper.c | 2 +- > drivers/gpu/drm/tiny/sharp-memory.c | 2 +- > drivers/gpu/drm/udl/udl_modeset.c | 2 +- > drivers/gpu/drm/vboxvideo/vbox_mode.c | 2 +- > drivers/gpu/drm/vc4/tests/vc4_mock_crtc.c | 2 +- > drivers/gpu/drm/vc4/vc4_crtc.c | 14 +++---- > drivers/gpu/drm/vc4/vc4_drv.h | 2 +- > drivers/gpu/drm/vc4/vc4_txp.c | 2 +- > drivers/gpu/drm/verisilicon/vs_crtc.c | 2 +- > drivers/gpu/drm/virtio/virtgpu_display.c | 2 +- > drivers/gpu/drm/vkms/vkms_crtc.c | 18 ++++---- > drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 22 ++++------ > drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 2 +- > drivers/gpu/drm/xlnx/zynqmp_kms.c | 2 +- > include/drm/drm_atomic_state_helper.h | 3 -- > include/drm/drm_crtc.h | 12 ------ > include/drm/drm_mipi_dbi.h | 2 +- > include/drm/drm_simple_kms_helper.h | 1 - > 78 files changed, 275 insertions(+), 385 deletions(-) > --- > base-commit: 7ea58b9ddb52264a4ed36bccb975062ada32c62d > change-id: 20260709-drm-no-more-crtc-reset-14a4d5bc8d41 > > Best regards, -- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg) From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 98A22C5DF81 for ; Mon, 24 Aug 2026 14:30:03 +0000 (UTC) Received: from kara.freedesktop.org (unknown [131.252.210.166]) by gabe.freedesktop.org (Postfix) with ESMTPS id 578A810E555; Mon, 24 Aug 2026 14:30:02 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=suse.de header.i=@suse.de header.b="jPAk+QU8"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="5lDYM8Sp"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=suse.de header.i=@suse.de header.b="bsPlg+u0"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="OLusts3S"; dkim-atps=neutral Received: from kara.freedesktop.org (localhost [127.0.0.1]) by kara.freedesktop.org (Postfix) with ESMTP id 29AE047B66; Mon, 24 Aug 2026 14:13:18 +0000 (UTC) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=lists.freedesktop.org; s=20240201; t=1787580797; b=WFfzQN6GPdluZR9m3hltqrb1r8AU9Lm5WG3HR+nr+4hS1z0infU0mFxFKuyNws34tnvKr w8bNkDfhRZZXjuAWYjY0Eu83vtGH2zOMjjjVdJb3B1Z72ZE2G9QTs5mkCwTCR8Q1cPsiSdn qiBi06K8AZgotGtVMrr/qx6/zDBxoRRJRYwINMTk2mxOM0BV+MCsbNNtvED4MmMYInSpjQN cyanolp5RyKSOA9U45BgMKaf5QL5YNHTbUiPm/zlKKBbnE7rF1+cbQbjDpvqVtg1tDXKza8 2cHjBtjMTm7By7pHoAwYVjs9+FTAHj55AeIEY2VvsATX9ybo2M8k+uZG1jIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.freedesktop.org; s=20240201; t=1787580797; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=KZ58TwSsjZy81uw00gq5re7Y627c6fC/vYb8AJEAGaIs0OtYZrzztsX/m4zLafNEuh3eW F+MjF3zMn6lQ1YJxijThDpH48t2AEcwcg3eiqlFynI/RP3SWJUowRIajsqF2TnkGHcg0Aw2 mi2t9/KcKKxaWxmqx2Vv361eOTLOQG+KgMm089xruYt8vVcqwh9ydY71rudJnVTstUqv9vJ yJ3qA+PzToxdS7jX32PXJAEet4pZ+YRSsSteDbe4s9sVQLen0OKr1DHSYqmIhoCyUjW9gAS VvyeC+VfTqncS7Ot0BFNWz9zZEk/iWrvjLNgRbjpJDNGr1ey3ZR5DMAagK4g== ARC-Authentication-Results: i=1; mail.freedesktop.org; dkim=pass header.d=suse.de; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=suse.de policy.dmarc=none Authentication-Results: mail.freedesktop.org; dkim=pass header.d=suse.de; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=suse.de policy.dmarc=none Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by kara.freedesktop.org (Postfix) with ESMTPS id 0AB8B4064D for ; Mon, 24 Aug 2026 11:12:52 +0000 (UTC) Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by gabe.freedesktop.org (Postfix) with ESMTPS id 67ABA10E74D; Mon, 24 Aug 2026 11:29:35 +0000 (UTC) Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 2B5911F82E; Mon, 24 Aug 2026 11:28:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1787570893; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=jPAk+QU8Oz9JiYGtn+V5jZxMEyjAvNiz7x+giw+idIe7iWHZ3M9kfknb1WdCY6dzXCmQD3 RUzjbubEF3hnieEB81hcTriJJ/TZwn9WrJvXmwfrSSxcQQ1ZlbjhLeh4wlav9BK5HaMwO3 6684oDDWCwOgqkGGromNNiB5crtoKp8= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1787570893; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=5lDYM8Sp+2Zs/UK8WEQsqpqKl/p+3waU+CqzB8+6scnvBPnqiDamSiTmKrctumFJCWBEYi aX34sUfDAX5NblCQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1787570889; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=bsPlg+u0OwdeHNbNGrLeK44/R8qCs4CSg2PYS8tAMdo+SiYAgso2oR9h7L/qr4Kf3DuMkG JKgB4VRdqQ8XdeAhqD8b8vI76Bx+jM9yHqOPuKlYDaI0OV9UYbWCi5Q1nsdyTPB6peYLQF TjI7tAEaxq6cznVveiRZRfRGOnX5P94= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1787570889; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=oRfeKqw0N0kQLKC+424hjjzXjyHez3BAAze+hVfK2Rg=; b=OLusts3Smqe2AFyYsDutCyN37J42MZz2JAj9qpn2mbZkclBOoroaTNZlb/XsAZWC4PdLh8 KxcB0oUEd1WRgsCA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 2DC4E1333B; Mon, 24 Aug 2026 11:28:06 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id l1sQCsYqjGpBYAAAD6G6ig (envelope-from ); Mon, 24 Aug 2026 11:28:06 +0000 Message-ID: Date: Mon, 24 Aug 2026 13:28:05 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 00/70] drm/crtc: Convert all drivers to atomic_create_state and remove reset To: Maxime Ripard , Maarten Lankhorst , David Airlie , Simona Vetter References: <20260821-drm-no-more-crtc-reset-v1-0-fb793475c05a@kernel.org> Content-Language: en-US From: Thomas Zimmermann Autocrypt: addr=tzimmermann@suse.de; keydata= xsBNBFs50uABCADEHPidWt974CaxBVbrIBwqcq/WURinJ3+2WlIrKWspiP83vfZKaXhFYsdg XH47fDVbPPj+d6tQrw5lPQCyqjwrCPYnq3WlIBnGPJ4/jreTL6V+qfKRDlGLWFjZcsrPJGE0 BeB5BbqP5erN1qylK9i3gPoQjXGhpBpQYwRrEyQyjuvk+Ev0K1Jc5tVDeJAuau3TGNgah4Yc hdHm3bkPjz9EErV85RwvImQ1dptvx6s7xzwXTgGAsaYZsL8WCwDaTuqFa1d1jjlaxg6+tZsB 9GluwvIhSezPgnEmimZDkGnZRRSFiGP8yjqTjjWuf0bSj5rUnTGiyLyRZRNGcXmu6hjlABEB AAHNJ1Rob21hcyBaaW1tZXJtYW5uIDx0emltbWVybWFubkBzdXNlLmRlPsLAjgQTAQgAOAIb AwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBHIX+6yM6c9jRKFo5WgNwR1TC3ojBQJftODH AAoJEGgNwR1TC3ojx1wH/0hKGWugiqDgLNXLRD/4TfHBEKmxIrmfu9Z5t7vwUKfwhFL6hqvo lXPJJKQpQ2z8+X2vZm/slsLn7J1yjrOsoJhKABDi+3QWWSGkaGwRJAdPVVyJMfJRNNNIKwVb U6B1BkX2XDKDGffF4TxlOpSQzdtNI/9gleOoUA8+jy8knnDYzjBNOZqLG2FuTdicBXblz0Mf vg41gd9kCwYXDnD91rJU8tzylXv03E75NCaTxTM+FBXPmsAVYQ4GYhhgFt8S2UWMoaaABLDe 7l5FdnLdDEcbmd8uLU2CaG4W2cLrUaI4jz2XbkcPQkqTQ3EB67hYkjiEE6Zy3ggOitiQGcqp j//OwE0EWznS4AEIAMYmP4M/V+T5RY5at/g7rUdNsLhWv1APYrh9RQefODYHrNRHUE9eosYb T6XMryR9hT8XlGOYRwKWwiQBoWSDiTMo/Xi29jUnn4BXfI2px2DTXwc22LKtLAgTRjP+qbU6 3Y0xnQN29UGDbYgyyK51DW3H0If2a3JNsheAAK+Xc9baj0LGIc8T9uiEWHBnCH+RdhgATnWW GKdDegUR5BkDfDg5O/FISymJBHx2Dyoklv5g4BzkgqTqwmaYzsl8UxZKvbaxq0zbehDda8lv hFXodNFMAgTLJlLuDYOGLK2AwbrS3Sp0AEbkpdJBb44qVlGm5bApZouHeJ/+n+7r12+lqdsA EQEAAcLAdgQYAQgAIAIbDBYhBHIX+6yM6c9jRKFo5WgNwR1TC3ojBQJftOH6AAoJEGgNwR1T C3ojVSkIALpAPkIJPQoURPb1VWjh34l0HlglmYHvZszJWTXYwavHR8+k6Baa6H7ufXNQtThR yIxJrQLW6rV5lm7TjhffEhxVCn37+cg0zZ3j7zIsSS0rx/aMwi6VhFJA5hfn3T0TtrijKP4A SAQO9xD1Zk9/61JWk8OysuIh7MXkl0fxbRKWE93XeQBhIJHQfnc+YBLprdnxR446Sh8Wn/2D Ya8cavuWf2zrB6cZurs048xe0UbSW5AOSo4V9M0jzYI4nZqTmPxYyXbm30Kvmz0rYVRaitYJ 4kyYYMhuULvrJDMjZRvaNe52tkKAvMevcGdt38H4KSVXAylqyQOW5zvPc4/sq9c= In-Reply-To: <20260821-drm-no-more-crtc-reset-v1-0-fb793475c05a@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spamd-Result: default: False [-0.80 / 50.00]; BAYES_HAM(-3.00)[100.00%]; FORGED_RECIPIENTS(2.00)[m:airlied@gmail.com,m:simona@ffwll.ch,m:k@chaosmail.tech,m:christian.koenig@amd.com,m:alexander.deucher@amd.com,m:liviu.dudau@arm.com,m:linux@armlinux.org.uk,m:alim.akhtar@samsung.com,m:inki.dae@samsung.com,m:kyungmin.park@samsung.com,m:sw0312.kim@samsung.com,m:linux-samsung-soc@vger.kernel.org,m:stefan@agner.ch,m:rubenru09@aol.com,m:tiantao6@hisilicon.com,m:kong.kongxinwei@hisilicon.com,m:jstultz@google.com,m:linux-hyperv@vger.kernel.org,m:festevam@gmail.com,m:kernel@pengutronix.de,m:s.hauer@pengutronix.de,m:laurentiu.palcu@oss.nxp.com,m:l.stach@pengutronix.de,m:paul@crapouillou.net,m:linux-mips@vger.kernel.org,m:paulk@sys-base.io,m:jbrunet@baylibre.com,m:khilman@baylibre.com,m:martin.blumenstingl@googlemail.com,m:jesszhan0024@gmail.com,m:marijn.suijten@somainline.org,m:robin.clark@oss.qualcomm.com,m:sean@poorly.run,m:linux-arm-msm@vger.kernel.org,m:marex@denx.de,m:airlied@redhat.com,m:kraxel@redhat.com,m:geert+renesas@glider.be,m:linux-renesas-soc@vger.kern el.org,m:marcus.folkesson@gmail.com,m:zhang.lyra@gmail.com,m:orsonzhai@gmail.com,m:alain.volmat@foss.st.com,m:rgallaispou@gmail.com,m:alexandre.torgue@foss.st.com,m:mcoquelin.stm32@gmail.com,m:philippe.cornu@foss.st.com,m:raphael.gallais-pou@foss.st.com,m:yannick.fertre@foss.st.com,m:samuel@sholland.org,m:gargaditya08@proton.me,m:zaq14760@gmail.com,m:lanzano.alex@gmail.com,m:olvaffe@gmail.com,m:dmitry.osipenko@collabora.com,m:gurchetansingh@chromium.org,m:michal.simek@amd.com,m:javierm@redhat.com,m:harry.wentland@amd.com,m:sunpeng.li@amd.com,m:jfalempe@redhat.com,m:alexandre.belloni@bootlin.com,m:claudiu.beznea@tuxon.dev,s:kieran.bingham@ideasonboard.com,s:laurent.pinchart@ideasonboard.com,s:tomi.valkeinen@ideasonboard.com,s:mcanal@igalia.com,s:chenhuacai@kernel.org,s:chunkuang.hu@kernel.org,s:dakr@kernel.org,s:thierry.reding@kernel.org,s:nouveau@lists.freedesktop.org,s:linux-rockchip@lists.infradead.org,s:lvjianmin@loongson.cn,s:wuqianhai@loongson.cn,s:manikandan.m@microchip.com,s: nicolas.ferre@microchip.com,s:jonathanh@nvidia.com,s:mperttunen@nvidia.com]; SUSPICIOUS_RECIPS(1.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.20)[-0.999]; MIME_GOOD(-0.10)[text/plain]; TO_DN_SOME(0.00)[]; MIME_TRACE(0.00)[0:+]; TAGGED_RCPT(0.00)[renesas]; FREEMAIL_TO(0.00)[kernel.org,linux.intel.com,gmail.com,ffwll.ch]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FROM_HAS_DN(0.00)[]; FREEMAIL_CC(0.00)[lists.freedesktop.org,jannau.net,chaosmail.tech,lists.linux.dev,amd.com,arm.com,armlinux.org.uk,samsung.com,kernel.org,linaro.org,vger.kernel.org,nxp.com,agner.ch,aol.com,hisilicon.com,huawei.com,google.com,microsoft.com,linux.microsoft.com,gmail.com,pengutronix.de,oss.nxp.com,crapouillou.net,intel.com,sys-base.io,baylibre.com,googlemail.com,lists.infradead.org,linux.dev,somainline.org,oss.qualcomm.com,poorly.run,denx.de,redhat.com,glider.be,linux.alibaba.com,foss.st.com,sholland.org,iki.fi,ideasonboard.com,proton.me,kodeit.net,iscas.ac.cn,collabora.com,chromium.org,igalia.com,bootlin.com,tuxon.dev,microchip.com,loongson.cn,aosc.io,xry111.site,bp.renesas.com,sntech.de,rock-chips.com,nvidia.com,raspberrypi.com,broadcom.com]; R_RATELIMIT(0.00)[to_ip_from(RLoadnimawcdo3as9ydearnodd)]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCPT_COUNT_GT_50(0.00)[135]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.de:email,suse.de:mid,imap1.dmz-prg2.suse.org:helo,suse.com:url] X-MailFrom: tzimmermann@suse.de X-Mailman-Rule-Hits: max-recipients X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-size; news-moderation; no-subject; digests; suspicious-header Message-ID-Hash: 2DWV5DZBTLF7SVVKAUF3XELF4JKXR2IL X-Message-ID-Hash: 2DWV5DZBTLF7SVVKAUF3XELF4JKXR2IL X-Mailman-Approved-At: Mon, 24 Aug 2026 14:13:15 +0000 CC: dri-devel@lists.freedesktop.org, Janne Grunau , Sasha Finkelstein , asahi@lists.linux.dev, =?UTF-8?Q?Christian_K=C3=B6nig?= , Alex Deucher , amd-gfx@lists.freedesktop.org, Liviu Dudau , Russell King , Alim Akhtar , Inki Dae , Krzysztof Kozlowski , Kyungmin Park , Peter Griffin , Seung-Woo Kim , linux-samsung-soc@vger.kernel.org, Alison Wang , Stefan Agner , Ruben Wauters , Tian Tao , Xinwei Kong , Yongbang Shi , John Stultz , Sumit Semwal , Xinliang Liu , Yongqin Liu , Dexuan Cui , Long Li , Saurabh Sengar , linux-hyperv@vger.kernel.org, Fabio Estevam , Frank Li , Liu Ying , Pengutronix Kernel Team , Sascha Hauer , imx@lists.linux.dev, Laurentiu Palcu , Lucas Stach , Paul Cercueil , linux-mips@vger.kernel.org, Anitha Chrisanthus , Paul Kocialkowski , Jerome Brunet , Kevin Hilman , Martin Blumenstingl , linux-amlogic@lists.infradead.org, Abhinav Kumar , Dmitry Baryshkov , Jessica Zhang , Marijn Suijten , Rob Clark , Sean Paul , freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, Marek Vasut , Dave Airlie , Gerd Hoffmann , spice-devel@lists.freedesktop.org, virtualization@lists.linux.dev, Geert Uytterhoeven , linux-renesas-soc@vger.kernel.org, Marcus Folkesson , Baolin Wang , Chunyan Zhang , Orson Zhai , Alain Volmat , Raphael Gallais-Pou , Alexandre Torgue , Maxime Coquelin , Philippe Cornu , Raphael Gallais-Pou , Yannick Fertre , Chen-Yu Tsai , Samuel Holland , linux-sunxi@lists.linux.dev, Jyri Sarha , Tomi Valkeinen , Aditya Garg , Aun-Ali Zaidi , LiangCheng Wang , Alex Lanzano , Hans de Goede , Icenowy Zheng , Chia-I Wu , Dmitry Osipenko , Gurchetan Singh , Michal Simek , Javier Martinez Canillas , Harry Wentland , Leo Li , Rodrigo Siqueira , Jocelyn Falempe , Alexandre Belloni , Claudiu Beznea , Dharma Balasubiramani , Manikandan Muralidharan , Nicolas Ferre , Philipp Zabel , Huacai Chen , Jianmin Lv , Mingcong Bai , Qianhai Wu , Xi Ruoyao , AngeloGioacchino Del Regno , Chun-Kuang Hu , Matthias Brugger , Danilo Krummrich , nouveau@lists.freedesktop.org, Kieran Bingham , Laurent Pinchart , Magnus Damm , Tomi Valkeinen , Biju Das , =?UTF-8?Q?Heiko_St=C3=BCbner?= , Andy Yan , Sandy Huang , linux-rockchip@lists.infradead.org, Iker Pedrosa , Mikko Perttunen , Thierry Reding , linux-tegra@vger.kernel.org, =?UTF-8?Q?Ma=C3=ADra_Canal?= , Raspberry Pi Kernel Maintenance , Haneen Mohammed , Louis Chauvet , Melissa Wen , Broadcom internal kernel review list , Zack Rusin X-Mailman-Version: 3.3.8 Precedence: list List-Id: Nouveau development list Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Hi Maxime Am 21.08.26 um 16:38 schrieb Maxime Ripard: > This is a follow-up to the plane reset removal series, and part of a > larger effort to remove the reset hook from all KMS objects. > > The CRTC reset hook is overloaded: it is called both at probe time to > create the initial software state and during suspend/resume to reset > hardware and software state. These two roles have different > requirements, and the reset hook is not fallible, making error > handling difficult for the initial state allocation path. > > While reset has the semantics to reset both the software and hardware > state, the vast majority of implementations and all the helpers only > reset the software state, making them equivalent to > atomic_create_state in practice. The atomic_create_state hook makes > this explicit: it only allocates and initializes a pristine state > without any side effect, and returns the state pointer or an ERR_PTR > on failure. > > This series converts all CRTC drivers tree-wide from the reset hook to > atomic_create_state, then removes the reset hook from struct > drm_crtc_funcs entirely. Two drivers (tilcdc and loongson) had actual > hardware reset logic mixed into their reset hook; those are moved to > CRTC creation instead. The conversions were done using a combination of > Coccinelle semantic patches and manual adjustments. > > Signed-off-by: Maxime Ripard I've gone through the series and it looks good to me; except for patch 50. Feel free to add Reviewed-by: Thomas Zimmermann to the series with the exception of patch 50. Best regards Thomas > --- > Maxime Ripard (70): > drm/adp: Switch to drm_atomic_helper_crtc_create_state > drm/amdgpu: vkms: Switch to drm_atomic_helper_crtc_create_state > drm/arm: hdlcd: Switch to drm_atomic_helper_crtc_create_state > drm/armada: Switch to drm_atomic_helper_crtc_create_state > drm/exynos: Switch to drm_atomic_helper_crtc_create_state > drm/fsl-dcu: Switch to drm_atomic_helper_crtc_create_state > drm/gud: Switch to drm_atomic_helper_crtc_create_state > drm/hisilicon: hibmc: Switch to drm_atomic_helper_crtc_create_state > drm/hisilicon: kirin: Switch to drm_atomic_helper_crtc_create_state > drm/hyperv: Switch to drm_atomic_helper_crtc_create_state > drm/imx: dc: Switch to drm_atomic_helper_crtc_create_state > drm/imx: dcss: Switch to drm_atomic_helper_crtc_create_state > drm/ingenic: Switch to drm_atomic_helper_crtc_create_state > drm/kmb: Switch to drm_atomic_helper_crtc_create_state > drm/logicvc: Switch to drm_atomic_helper_crtc_create_state > drm/meson: Switch to drm_atomic_helper_crtc_create_state > drm/msm: mdp4: Switch to drm_atomic_helper_crtc_create_state > drm/mxs: mxsfb: Switch to drm_atomic_helper_crtc_create_state > drm/qxl: Switch to drm_atomic_helper_crtc_create_state > drm/renesas: shmobile: Switch to drm_atomic_helper_crtc_create_state > drm/simple-kms: Remove unused reset_crtc hook > drm/simple-kms: Switch to drm_atomic_helper_crtc_create_state > drm/sitronix: st7571: Switch to drm_atomic_helper_crtc_create_state > drm/sprd: Switch to drm_atomic_helper_crtc_create_state > drm/sti: Switch to drm_atomic_helper_crtc_create_state > drm/stm: Switch to drm_atomic_helper_crtc_create_state > drm/sun4i: Switch to drm_atomic_helper_crtc_create_state > drm/tests: Switch to drm_atomic_helper_crtc_create_state > drm/tilcdc: Move hardware reset to CRTC creation > drm/tilcdc: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: appletbdrm: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: bochs: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: cirrus: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: pixpaper: Switch to drm_atomic_helper_crtc_create_state > drm/tiny: sharp: Switch to drm_atomic_helper_crtc_create_state > drm/udl: Switch to drm_atomic_helper_crtc_create_state > drm/vbox: Switch to drm_atomic_helper_crtc_create_state > drm/verisilicon: Switch to drm_atomic_helper_crtc_create_state > drm/virtio: Switch to drm_atomic_helper_crtc_create_state > drm/xlnx: Switch to drm_atomic_helper_crtc_create_state > drm/mipi-dbi: Switch to drm_atomic_helper_crtc_create_state > drm/atomic-helper: Remove drm_atomic_helper_crtc_reset > sysfb: Convert to create_state > drm/amdgpu: dm: Convert to atomic_create_state > drm/komeda: Convert to atomic_create_state > drm/malidp: Convert to atomic_create_state > drm/ast: Convert to atomic_create_state > drm/atmel-hlcdc: Convert to atomic_create_state > drm/imx: ipuv3: Convert to atomic_create_state > drm/loongsoon: Move hardware reset to CRTC creation > drm/loongson: Convert to atomic_create_state > drm/mediatek: Convert to atomic_create_state > drm/mgag200: Convert to atomic_create_state > drm/msm: dpu1: Convert to atomic_create_state > drm/msm: mdp5: Convert to atomic_create_state > drm/mxsfb: lcdif: Convert to atomic_create_state > drm/nouveau: Convert to atomic_create_state > drm/omapdrm: Convert to atomic_create_state > drm/rcar-du: Convert to atomic_create_state > drm/rzg2l-du: Convert to atomic_create_state > drm/rockchip: vop: Convert to atomic_create_state > drm/rockchip: vop2: Convert to atomic_create_state > drm/sitronix: st7920: Convert to atomic_create_state > drm/solomon: ssd130x: Convert to atomic_create_state > drm/tegra: Convert to atomic_create_state > drm/vc4: Convert to atomic_create_state > drm/vkms: Convert to atomic_create_state > drm/vmwgfx: Convert to atomic_create_state > drm/atomic-helper: Remove __drm_atomic_helper_crtc_reset > drm/crtc: Remove reset > > drivers/gpu/drm/adp/adp_drv.c | 2 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c | 2 +- > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 17 ++++---- > drivers/gpu/drm/arm/display/komeda/komeda_crtc.c | 18 ++++---- > drivers/gpu/drm/arm/hdlcd_crtc.c | 2 +- > drivers/gpu/drm/arm/malidp_crtc.c | 18 ++++---- > drivers/gpu/drm/armada/armada_crtc.c | 2 +- > drivers/gpu/drm/ast/ast_mode.c | 18 ++++---- > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 19 ++++----- > drivers/gpu/drm/drm_atomic_state_helper.c | 45 -------------------- > drivers/gpu/drm/drm_mode_config.c | 4 +- > drivers/gpu/drm/drm_simple_kms_helper.c | 13 +----- > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 2 +- > drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 2 +- > drivers/gpu/drm/gud/gud_drv.c | 2 +- > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 2 +- > drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 2 +- > drivers/gpu/drm/hyperv/hyperv_drm_modeset.c | 2 +- > drivers/gpu/drm/imx/dc/dc-crtc.c | 2 +- > drivers/gpu/drm/imx/dcss/dcss-crtc.c | 2 +- > drivers/gpu/drm/imx/ipuv3/ipuv3-crtc.c | 18 ++++---- > drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 2 +- > drivers/gpu/drm/kmb/kmb_crtc.c | 2 +- > drivers/gpu/drm/logicvc/logicvc_crtc.c | 2 +- > drivers/gpu/drm/loongson/lsdc_crtc.c | 26 ++++++------ > drivers/gpu/drm/mediatek/mtk_crtc.c | 18 ++++---- > drivers/gpu/drm/meson/meson_crtc.c | 2 +- > drivers/gpu/drm/mgag200/mgag200_drv.h | 4 +- > drivers/gpu/drm/mgag200/mgag200_mode.c | 15 ++++--- > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 18 ++++---- > drivers/gpu/drm/msm/disp/mdp4/mdp4_crtc.c | 2 +- > drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c | 20 ++++----- > drivers/gpu/drm/mxsfb/lcdif_kms.c | 17 ++++---- > drivers/gpu/drm/mxsfb/mxsfb_kms.c | 4 +- > drivers/gpu/drm/nouveau/dispnv50/head.c | 14 +++---- > drivers/gpu/drm/omapdrm/omap_crtc.c | 17 ++++---- > drivers/gpu/drm/qxl/qxl_display.c | 2 +- > drivers/gpu/drm/renesas/rcar-du/rcar_du_crtc.c | 17 ++++---- > drivers/gpu/drm/renesas/rz-du/rzg2l_du_crtc.c | 15 +++---- > drivers/gpu/drm/renesas/shmobile/shmob_drm_crtc.c | 2 +- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 18 ++++---- > drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 18 ++++---- > drivers/gpu/drm/sitronix/st7571.c | 2 +- > drivers/gpu/drm/sitronix/st7920.c | 10 +++-- > drivers/gpu/drm/solomon/ssd130x.c | 10 +++-- > drivers/gpu/drm/sprd/sprd_dpu.c | 2 +- > drivers/gpu/drm/sti/sti_crtc.c | 2 +- > drivers/gpu/drm/stm/ltdc.c | 4 +- > drivers/gpu/drm/sun4i/sun4i_crtc.c | 2 +- > drivers/gpu/drm/sysfb/drm_sysfb_helper.h | 4 +- > drivers/gpu/drm/sysfb/drm_sysfb_modeset.c | 20 ++++----- > drivers/gpu/drm/tegra/dc.c | 18 ++++---- > drivers/gpu/drm/tests/drm_kunit_helpers.c | 2 +- > drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 49 +++++++++------------- > drivers/gpu/drm/tiny/appletbdrm.c | 2 +- > drivers/gpu/drm/tiny/bochs.c | 2 +- > drivers/gpu/drm/tiny/cirrus-qemu.c | 2 +- > drivers/gpu/drm/tiny/pixpaper.c | 2 +- > drivers/gpu/drm/tiny/sharp-memory.c | 2 +- > drivers/gpu/drm/udl/udl_modeset.c | 2 +- > drivers/gpu/drm/vboxvideo/vbox_mode.c | 2 +- > drivers/gpu/drm/vc4/tests/vc4_mock_crtc.c | 2 +- > drivers/gpu/drm/vc4/vc4_crtc.c | 14 +++---- > drivers/gpu/drm/vc4/vc4_drv.h | 2 +- > drivers/gpu/drm/vc4/vc4_txp.c | 2 +- > drivers/gpu/drm/verisilicon/vs_crtc.c | 2 +- > drivers/gpu/drm/virtio/virtgpu_display.c | 2 +- > drivers/gpu/drm/vkms/vkms_crtc.c | 18 ++++---- > drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 22 ++++------ > drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 2 +- > drivers/gpu/drm/xlnx/zynqmp_kms.c | 2 +- > include/drm/drm_atomic_state_helper.h | 3 -- > include/drm/drm_crtc.h | 12 ------ > include/drm/drm_mipi_dbi.h | 2 +- > include/drm/drm_simple_kms_helper.h | 1 - > 78 files changed, 275 insertions(+), 385 deletions(-) > --- > base-commit: 7ea58b9ddb52264a4ed36bccb975062ada32c62d > change-id: 20260709-drm-no-more-crtc-reset-14a4d5bc8d41 > > Best regards, -- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg)