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 6A622CCFA18 for ; Tue, 11 Nov 2025 08:43:24 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CB6C310E50A; Tue, 11 Nov 2025 08:43:21 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="lbW0KT4+"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9375D10E508; Tue, 11 Nov 2025 08:43:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1762850601; x=1794386601; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=0v0Jtgl9ARnONMGzGj32WLscEffYpaujXorUUW25ELM=; b=lbW0KT4+lrBTDG6Yzm7N2fArBevv5ME3QAD6w93bgujze3rhnzZtbRKc Su4QiVX4txmEfvZaH9sssV2tAuD0sAhnUyKyaby0ME96++L++W5v0qHxL PVfgc8fW+LKxiNwP/2ipM6CFDIM2Uspi208jvQ+iRCHafe/OKvx4kHswC Zsy1CPAgu36rv3F+yDqsP1HpbtS0kX5WEMgOXfCTg1kCqC2dQVTlspuU/ wjqji4XghxDRqOhji3T1ncqH83V0ee05f4U3RxOgELIn61RHS3VDBhZ1A A1lyL+9gV/DouLYFqya64Lo26MPu4VmOSqN0JKmuexY8D7e5POi3UEn4m A==; X-CSE-ConnectionGUID: 5M/bfIqkTXm25OhivQcIfw== X-CSE-MsgGUID: SH5hm+ctTuy6ZFhM8LrMxg== X-IronPort-AV: E=McAfee;i="6800,10657,11609"; a="68551498" X-IronPort-AV: E=Sophos;i="6.19,296,1754982000"; d="scan'208";a="68551498" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Nov 2025 00:43:21 -0800 X-CSE-ConnectionGUID: hFwRs/CoQy+PlF0epsld2A== X-CSE-MsgGUID: rbCgK/t2QtCBeSkBGPXRmQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.19,296,1754982000"; d="scan'208";a="193162977" Received: from mjarzebo-mobl1.ger.corp.intel.com (HELO localhost) ([10.245.246.239]) by fmviesa005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Nov 2025 00:43:18 -0800 From: Jani Nikula To: Thomas Zimmermann , dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org, ville.syrjala@linux.intel.com Subject: Re: [PATCH 06/24] drm/vblank: prefer drm_crtc_vblank_crtc() over drm_vblank_crtc() In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <2a20632181adc85a737b0a87dce7e753ff8d5b0d.1762791343.git.jani.nikula@intel.com> Date: Tue, 11 Nov 2025 10:43:15 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" On Tue, 11 Nov 2025, Thomas Zimmermann wrote: > Am 10.11.25 um 17:17 schrieb Jani Nikula: >> Use the higher level function where crtc is available. >> >> Signed-off-by: Jani Nikula > > Reviewed-by: Thomas Zimmermann > > Is there a long-term plan to replace drm_vblank_crtc() entirely? > Otherwise this looks a bit pointless. Well, almost entirely. There are a few cases (plus the one that Ville mentioned later in the series) that need to operate on dev + pipe alone. The main point is that when you have a crtc and use that for the source of pipe, you don't have to do range checks on the pipe. This becomes gradually more evident in the series. BR, Jani. > >> --- >> drivers/gpu/drm/drm_vblank.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c >> index e3a5a783686f..96dbff63f52d 100644 >> --- a/drivers/gpu/drm/drm_vblank.c >> +++ b/drivers/gpu/drm/drm_vblank.c >> @@ -712,7 +712,7 @@ drm_crtc_vblank_helper_get_vblank_timestamp_internal( >> { >> struct drm_device *dev = crtc->dev; >> unsigned int pipe = crtc->index; >> - struct drm_vblank_crtc *vblank = drm_vblank_crtc(dev, pipe); >> + struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); >> struct timespec64 ts_etime, ts_vblank_time; >> ktime_t stime, etime; >> bool vbl_status; >> @@ -1302,7 +1302,7 @@ int drm_crtc_wait_one_vblank(struct drm_crtc *crtc) >> { >> struct drm_device *dev = crtc->dev; >> int pipe = drm_crtc_index(crtc); >> - struct drm_vblank_crtc *vblank = drm_vblank_crtc(dev, pipe); >> + struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc); >> int ret; >> u64 last; >> -- Jani Nikula, Intel