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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 132FCC9830B for ; Wed, 23 Sep 2026 14:42:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type: Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date :Subject:Cc:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=pAuvWDVYVwhz9FttWiM1t3wAMo1yh0IBF3GPtqoFkZA=; b=ZcQi0Ei9+nLdKsuTyfHYzQ/PmI XjwMhpRjo3HsWD716OC6ud04dqst8Mm7hpQRHGonHxDQ1SSgue/UJ+Iq0rX4XKKeOoz/POIHng9hT zAWlb4InhAvSrlVwFHceJ4AHMENsDvPHIakWLdf9vRa5Bx8WikeStfBJjRJI94uwOlFDD3inBlU4d oB7+o3Hr/RSMEQBh0Hjje5zJ65WIeGNlH3vhX5Hvu5ucaj5t7vXNf82FZLcsQkrctuAOOrRirctTA ZQECCJ56wN8fo0Y3jefD8eVifBl55rywrRPRbMsScQKrmK3nfmg7R3SJ3a05Jpb1F1q52FC3Pj9zE 59QgLy0g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x9OAX-00000008ZAC-0QyS; Wed, 23 Sep 2026 14:41:57 +0000 Received: from sender4-pp-f112.zoho.com ([136.143.188.112]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1x9OAU-00000008Z9M-0mER; Wed, 23 Sep 2026 14:41:55 +0000 ARC-Seal: i=1; a=rsa-sha256; t=1790174432; cv=none; d=zohomail.com; s=zohoarc; b=e5OkvZYukIt5GiTQhW6G+Kt1c269AMGHFXpP3r7i+CLvslhzze3rX4ILzx5pTKxgBRIk4eGy2F5HaUWIQuzEmjWHV2bh0li4VAw5VV3vgx58YZezIfbSNX3mvz04KJRvYDlIcdq25Kp7+aL0OkmwqjFMeVYFhQKb9NXxvlicAf0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790174432; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:Subject:Subject:To:To:Message-Id:Reply-To; bh=pAuvWDVYVwhz9FttWiM1t3wAMo1yh0IBF3GPtqoFkZA=; b=ddYCwNc0m34CAPczGPwkeH3AcvGPgdXzFqRZh6b8tu6HRgdBLSyoKd1k+BgSfZT8VhNkaMponBaq8nwYgKFU9o35+0FOliOdAf/BzJJOcTlQuvzxhRBhmW2NjqGnHQLHbf/tQYiFxSkyMRQDGxMi0/J9VrrjnYY0aleWunJAIL4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=nicolas.frattaroli@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1790174432; s=zohomail; d=collabora.com; i=nicolas.frattaroli@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:MIME-Version:Content-Transfer-Encoding:Content-Type:Message-Id:Reply-To; bh=pAuvWDVYVwhz9FttWiM1t3wAMo1yh0IBF3GPtqoFkZA=; b=Gv6B+QMS10z3axRJLGhhpi3sf27EvZHXCdFXjbFmfzCs9qJg3pQk9aS/Yk9UJaPi SLUfnU66bwh4D4qSZKNaxfUGEmDj5eTCix712HE5alCc2nZV+3gwqhIU/a8i6VS0FLY nyguwDqV8p9OR2I5z9STawWqE/wrdi7EY/f1vV+s= Received: by smtp.zohomail.com with SMTPS id 1790174426791143.0815861883815; Wed, 23 Sep 2026 07:40:26 -0700 (PDT) From: Nicolas Frattaroli To: "Borah, Chaitanya Kumar" , Leo Li , Daniel Stone , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Helge Deller , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Sandy Huang , Heiko =?UTF-8?B?U3TDvGJuZXI=?= , Andy Yan , Michel =?UTF-8?B?RMOkbnplcg==?= Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-fbdev@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, kernel@collabora.com, Derek Foreman , wayland-devel@lists.freedesktop.org Subject: Re: [PATCH RFC 13/25] drm: Add VRR target frame rate properties Date: Wed, 23 Sep 2026 16:39:57 +0200 Message-ID: In-Reply-To: <588442c7-2589-4026-a8f8-e03f944318c3@mailbox.org> References: <20260921-vrr-limiter-uapi-v1-0-2fcd7d011646@collabora.com> <20260921-vrr-limiter-uapi-v1-13-2fcd7d011646@collabora.com> <588442c7-2589-4026-a8f8-e03f944318c3@mailbox.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260923_074154_290334_D137BB29 X-CRM114-Status: GOOD ( 13.86 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wednesday, 23 September 2026 11:51:45 Central European Summer Time Miche= l D=C3=A4nzer wrote: > On 9/21/26 17:51, Nicolas Frattaroli wrote: > >=20 > > + * .. _VRR-MIN-NUMERATOR: > > + * > > + * "VRR_MIN_NUMERATOR": > > + * Default &drm_crtc integer property forming the numerator of a > > + * numerator/denominator pair of a frame rate to set as the minimum VRR > > + * target rate. Set to 0 to disable. > > + * > > + * "VRR_MIN_DENOMINATOR": > > + * Default &drm_crtc integer property forming the denominator of a > > + * numerator/denominator pair of a frame rate to set as the minimum VRR > > + * target rate. If :ref:`VRR_MIN_NUMERATOR ` is not > > + * zero, it must be non-zero. > > + * Otherwise, must also be zero. > > + * > > + * .. _VRR-MAX-NUMERATOR: > > + * > > + * "VRR_MAX_NUMERATOR": > > + * Default &drm_crtc integer property forming the numerator of a > > + * numerator/denominator pair of a frame rate to set as the maximum VRR > > + * target rate. Set to 0 to disable. > > + * > > + * "VRR_MAX_DENOMINATOR": > > + * Default &drm_crtc integer property forming the denominator of a > > + * numerator/denominator pair of a frame rate to set as the maximum VRR > > + * target rate. If :ref:`VRR_MAX_NUMERATOR ` is not > > + * zero, it must be non-zero. Otherwise, must also be zero. > > */ >=20 > Is there a reason that DENOMINATOR must be 0 when the corresponding NUMER= ATOR is? 0 divided by any number is still 0. No, I think that's an arbitrary convention I settled on and don't enforce. I guess it should be "Otherwise, may also be zero", because the only situation I'm making userspace avoid is x/0 where x !=3D 0. > > Either way, should these rules be enforced in drm_atomic_crtc_set_prope= rty? >=20 > Or rather in atomic_check. Due to complicating factors like EDID, CinemaVRR, and QMS TFRmin/TFRmax, ch= ecking the properties for sensible values is done in the HDMI state helpers at the= moment. If/when there is a similar mechanism for DP, we can probably factor the com= mon parts out. I really do hope all drivers (including those that don't use the= HDMI state helpers) can at least share the hdmi_validate_vrr() logic, but I have= n't factored this out into an exported function yet because I don't know how si= milar the DisplayPort-equivalent mechanisms requirements are, or how much of the = state derivation non-state-helper drivers (i.e. i915 and amdgpu) need. Kind regards, Nicolas Frattaroli