From nobody Thu Mar 5 08:53:38 2026 Received: from mail-ej1-f67.google.com (mail-ej1-f67.google.com [209.85.218.67]) (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 0DFEF2C3255 for ; Mon, 16 Feb 2026 16:45:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.67 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771260329; cv=none; b=ZhtW5WlHZ3/It8oypXgjxVzJedduoDDWhOcJKIxGh9TNBBwnYMYOfuKQnXPk7DfMxX/kV8wvxiqxWOXBf7wnlgG0lGOyWXQU4fKw7vP3kO6loN0LVZkF0q7SeSlisPIwROlILbF5WcFKURLfaZeM1GF0Qv8JA4qeWGDxvn+VVqo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771260329; c=relaxed/simple; bh=nJmW8bJP7uxYKHtjHbPGq5rXU7o6arb6Gjwsjqn1wRU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=FOxdTPXHXfS1ylDe2yP9OvkOw1QHrXNUxwt8u0TqVuZNniTYj6vlR0QNcv6zFnbAd4jFqouWoDUtqlqHgd3lsSHEpioB4OiVKrWPsHQi5PAMlih0pKHjuT9EVWWUBXEDhse3/xf30ZU8a04VR+sLufPcZeiIUnp7SY3ckh4nfD4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=gGJBjkVd; arc=none smtp.client-ip=209.85.218.67 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gGJBjkVd" Received: by mail-ej1-f67.google.com with SMTP id a640c23a62f3a-b8fa19e6186so64116566b.3 for ; Mon, 16 Feb 2026 08:45:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771260326; x=1771865126; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1Ztq3hyjq4dBqjOVD+VwET2LGqK9hc4CUPcVZQOdgeE=; b=gGJBjkVdMYk4ZTUJmBte7JODk289nJk1mXTOACpWRoLMjT3AHt2CYaz9FqNZVcRiem CunE7xJH+O61VL8NY5ChFrBkAOhV90qHkMWN0bEh6viIofZqtmGTJ6zCPVi2dVc0wPQX vgPzjkZZGkuB3LTWK+9vLkAG0MFtY4n3l22Wg84PO7Pkhz6I/9imkfINJfMDwYb+/coG /dZffVZcFytgrF/JqCM4XrgBoix6bqbQNQa6jNkEFsMazABcsNJ8Qqm5wKKn8SJ8isM9 qkcsy1qrTdVRQR325LerwgxipLdPKM2gJi8GFi/8i4VS6E9ti6A+SHSBFRIfPxM3t7ZN jcjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771260326; x=1771865126; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=1Ztq3hyjq4dBqjOVD+VwET2LGqK9hc4CUPcVZQOdgeE=; b=QCkzC7xudj0KEp9JrBElE9QyMK52io4P0q1kZRagoZ1HgdQS4hzIC0jPgOUwHdolFU XdeIzthdg51j0zYK2fo9j+5S5aDwWPro2EeRlDcLgGCZEuEMYNRjbVTRoFFRwNig5IBi sbtVKgSirGlBUzdt7gFvz4OZ1rWWp7h8HyLDzZQtE8Ek549nA3zm5990vlMr2x6fSj4c 5l9tMbQQ1mRrUQpPVejS6ZM4j1+jwZ1SYMTcKrOIHyn0SJsqanMo7qW8QbWqJui/Nepx eXvCQ2LYGbQGr6/irDc/hbY+vJo6Vop7i6cqocUVQYHbDriWt7RUYF4ghTrald9appHc Ig2w== X-Forwarded-Encrypted: i=1; AJvYcCUSmrqwekulRUnsk7W4vk/t6DJ2Wb65gF6UVb2q4fCWtUgFk/68rPHh/w2DPoRkvB7l9eZ978dzM3XoSfA=@vger.kernel.org X-Gm-Message-State: AOJu0YyrWsJ+D9EzFamT4a66yHwHi/hZQqxAp7wzzVeNqBXe/smow+Cl bYeMxSMOaBf9B7seDGg31EjKJCnumL9PuCHvOY3KQo1SzTA3RZE7/SxL X-Gm-Gg: AZuq6aJUxrFRum7hUPVnjHRyvjRgoWJt4s1I9AY1i2qlZOXDFz6h28yjQG5BI51Bnj8 U7MpqODUc9bfpHYv8pHd8fxQvYkqxD2NvfVu5Vfu+jpOlCTklkTfP9cruA3WxV621qhk37OEldR id41obC4RGFqf/vQyObQXA2lYmLRZ10ZTgC9CxdIbOsCsJpWt8/98D/RXuEwFCXzUCBFQ6x7zzs TVHEXf4RAHWCD5fOzf9G+SSSw4jKw25GLKou2JH2lTrluSMtHGJTnNLQp6lji5UHl7jZM4/97rI yqA7EZdrC1FhLktndnXZB0xNga+YDY/qOnxfyPNvj+FBlliZLgL2ue0V/myJAmBuNUay6HXHWHq zfSzGHhS/aZtiwTeacsaAqJLo57MywirhX7Kl+BteAiclFmbH76nUtrncyAMN7JFbCcg5KgXwbT Ux+hPgrZhGG3Ajo5nh1iSB6hw4H6quInMgsf0ZvkVOAOImBQPvX+f7Ei+EqUQQ3eNLC37RPx+bx wQo X-Received: by 2002:a17:907:608c:b0:b8f:e96:7880 with SMTP id a640c23a62f3a-b8fac86c68dmr364359766b.0.1771260326136; Mon, 16 Feb 2026 08:45:26 -0800 (PST) Received: from laptok.lan (87-205-5-123.static.ip.netia.com.pl. [87.205.5.123]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b8fc735d185sm264683866b.14.2026.02.16.08.45.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Feb 2026 08:45:25 -0800 (PST) From: =?UTF-8?q?Tomasz=20Paku=C5=82a?= To: alexander.deucher@amd.com, harry.wentland@amd.com, sunpeng.li@amd.com Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, siqueira@igalia.com, dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, tomasz.pakula.oficjalny@gmail.com, bernhard.berger@gmail.com, michel.daenzer@mailbox.org, daniel@fooishbar.org Subject: [PATCH v4 05/27] drm/amd/display: Always try to parse AMD vsdb Date: Mon, 16 Feb 2026 17:44:54 +0100 Message-ID: <20260216164516.36803-6-tomasz.pakula.oficjalny@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260216164516.36803-1-tomasz.pakula.oficjalny@gmail.com> References: <20260216164516.36803-1-tomasz.pakula.oficjalny@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable [Why] Allows us to make the code inside amdgpu_dm_update_freesync_caps() more concise and prepares for vsdb usage outside of HDMI and DP -> HDMI 2.1 dongles. [How] Move the parsing function outside of specific signal type blocks. Merge signal type checks and freesync_supported checks Signed-off-by: Tomasz Paku=C5=82a --- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gp= u/drm/amd/display/amdgpu_dm/amdgpu_dm.c index be3bb5a86959..64d1dae4d214 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -13322,6 +13322,7 @@ void amdgpu_dm_update_freesync_caps(struct drm_conn= ector *connector, goto update; =20 edid =3D drm_edid_raw(drm_edid); // FIXME: Get rid of drm_edid_raw() + parse_amd_vsdb_cea(amdgpu_dm_connector, edid, &vsdb_info); =20 if (amdgpu_dm_connector->dc_link) dpcd_caps =3D amdgpu_dm_connector->dc_link->dpcd_caps; @@ -13343,28 +13344,22 @@ void amdgpu_dm_update_freesync_caps(struct drm_co= nnector *connector, amdgpu_dm_connector->as_type =3D ADAPTIVE_SYNC_TYPE_EDP; } =20 - } else if (sink->sink_signal =3D=3D SIGNAL_TYPE_HDMI_TYPE_A) { - parse_amd_vsdb_cea(amdgpu_dm_connector, edid, &vsdb_info); - if (vsdb_info.freesync_supported) { - monitor_range_from_vsdb(&connector->display_info, &vsdb_info); - freesync_capable =3D copy_range_to_amdgpu_connector(connector); - } + } else if (sink->sink_signal =3D=3D SIGNAL_TYPE_HDMI_TYPE_A && vsdb_info.= freesync_supported) { + monitor_range_from_vsdb(&connector->display_info, &vsdb_info); + freesync_capable =3D copy_range_to_amdgpu_connector(connector); } =20 if (amdgpu_dm_connector->dc_link) as_type =3D dm_get_adaptive_sync_support_type(amdgpu_dm_connector->dc_li= nk); =20 - if (as_type =3D=3D FREESYNC_TYPE_PCON_IN_WHITELIST) { - parse_amd_vsdb_cea(amdgpu_dm_connector, edid, &vsdb_info); - if (vsdb_info.freesync_supported) { - amdgpu_dm_connector->pack_sdp_v1_3 =3D true; - amdgpu_dm_connector->as_type =3D as_type; - amdgpu_dm_connector->vsdb_info =3D vsdb_info; + if (as_type =3D=3D FREESYNC_TYPE_PCON_IN_WHITELIST && vsdb_info.freesync_= supported) { + amdgpu_dm_connector->pack_sdp_v1_3 =3D true; + amdgpu_dm_connector->as_type =3D as_type; + amdgpu_dm_connector->vsdb_info =3D vsdb_info; =20 - parse_amd_vsdb_cea(amdgpu_dm_connector, edid, &vsdb_info); - monitor_range_from_vsdb(&connector->display_info, &vsdb_info); - freesync_capable =3D copy_range_to_amdgpu_connector(connector); - } + parse_amd_vsdb_cea(amdgpu_dm_connector, edid, &vsdb_info); + monitor_range_from_vsdb(&connector->display_info, &vsdb_info); + freesync_capable =3D copy_range_to_amdgpu_connector(connector); } =20 update: --=20 2.53.0