From nobody Mon Feb 9 20:32:52 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B695621D590 for ; Tue, 6 Jan 2026 03:10:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767669003; cv=none; b=S5WtoZJUUwqHy1nIXM1c0WlMIw/nYsgKaOlD/VWhP1h5aXEY1YzdluBp81Cp1YIKpMjO+39gQTS0uVvAgY87qdLzH3zOyvrA2CxheA5HvpnfGFirFtdCiyFsj0/AWMI5oz+PPcc93KcHCv87BOIRXmo9qKRSKo4Dqhc+/kLljTg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767669003; c=relaxed/simple; bh=OHanLuFuc76947yU3WzGXKL8IflDYvhJa4SYngSj/Nw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=t7IYl97XU8Wr2tyDnDos50+/VvQZlTOeItUOeyQmW0U+h6wXK1ZhJFq0BSnlYlsFj85n6udWoN95txxwANoaBixq9tUBPnHduXsTrhhAQcqLuPaaCYHZdqSEKnkYEiXIF/+VpBXrMgxmGN9S81Q2BwE4t35Rfp3BaKoOOx+goMQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=ONFjEibD; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=R3+KLN6x; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="ONFjEibD"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="R3+KLN6x" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6060nMO32943633 for ; Tue, 6 Jan 2026 03:10:01 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 1uGVNstsP/UQQcLwdrzkGVSuVG5G5/ESRhIQYzvPwck=; b=ONFjEibD5yK5fUZy O5ag6J+2m/+8CBwmtvt4LSZU9L5KntQcAK5CVDHinePnOYXiYO2YS3lrETDyHRnA E1olvjB6uj87vvQDLg9RylNdvo2dcVM+Mqvr4PiH324NOVtV7oUU8EHa9UHq/0Kh cKGupaPsGx0P+AjPLbvFZpuLffSuSXr/yPCLQUWfRc14/pSZBMFu5xCkgH41F1vU ts2nh+n7RlzxlxJ9Lgnb3RS5Ve++IFvyY07EAcEoO8o5W+tW2clCGHzwwtqni9hk 3h9ct+ernGUnS++aewPRtYZjEL0VrZVthuoxqZL5jpVYI7iUfznjgcICgICzU154 2uRy+A== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bgfv01rsq-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 06 Jan 2026 03:10:00 +0000 (GMT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-4f183e4cc7bso10564571cf.0 for ; Mon, 05 Jan 2026 19:10:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767669000; x=1768273800; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=1uGVNstsP/UQQcLwdrzkGVSuVG5G5/ESRhIQYzvPwck=; b=R3+KLN6xgeX1nBEST1uqzWU87Qmk86WDebvtG8afB/s19sxFdy+unJurGFstPYJRIX j/fNbvQKAzomHOAm4ndeTxqfTsEVLgBt47rHtF5ptYUCmT/Rg9QJ1Lu0JIPR40F0g/e+ OlzdgZYEYs8s8Fu5mDRoLotOFBjaIlCsJTWkONgfYqZTbnx00hoZrKtE7vatLXX0Q81F NaN7ONDcmUlM14l3Q/+rBF5ECJ7oFEmFD5svra3zcnUHFzrikmHPbepGY0Z0iMGButaJ 40/rMGtrLyjpHNR8gie7opZCND9x48yTm4oUMBklwTPg7Wi8LTohqGS7kOPY2KTBsJAU RaEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767669000; x=1768273800; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=1uGVNstsP/UQQcLwdrzkGVSuVG5G5/ESRhIQYzvPwck=; b=C/s3+44KzuzspDqaAZPpLA/H7aOQtsSgWlDeAXqMJm7GxZeD67SolZmB1fG5DCgwtS Z7VxJXfkNWhxv+fizDRoIkCwDRRoXbpESfJy+CB+384i28saKKcyDXNMflegfuBM5Ew1 qK/tG9WK6jYdlAfGSaAvhSf6phqGHgxV/Fv8NaLbVXAHdwAN10iq/cirQG4oKJhooHOx lXjQ1plsQ7L4AocsUG7B5b4jYWuIulfHWICHmmr7/MNjgOBxsLVfuFqjCdUQw632pXwX VLiF+rXQb4y+t8ms7122IofCjIMIToV9w+klUd1mChz9RmeEB3dhYh1NEVK8ZVXYe0Ky LaEw== X-Forwarded-Encrypted: i=1; AJvYcCVXKvPyGzi+zYvaidVbymel5L4Adb3ft1T6N8/1LeJQ40g3wL6BWRCTyE2hIrD3zgrn0SAgN5RTSwBg1Ko=@vger.kernel.org X-Gm-Message-State: AOJu0YyhTDY/Jlc71OaUfeWFVOxqeaU3UpWryN5bCs359XNlqebvjSKx HDKFuDLymm2aejI6GWxeE9LDp46RSfLuS/Zc5huXS88vipr8HchAvVqARt6kuOsDAg+rV92xtT0 CF/ugpqXa+w0z07dx7nQsyVx/VPC4bx87HBMgjbiLeszzXFR3ZIRB2kfKiF20ZvhR0BE= X-Gm-Gg: AY/fxX7wMO8F48DWNfdMZvxrvLwi/aBdAB3UffDtAvH6qdAyB7k54Fq0NNsF7Pa2q3Y i9vPZmfWa2TGmu6Zz7zfryad/Dp+10gekHhr++0g0c7M0GxlhNd8wdxSfkktSf+6cIiE29F32nW LZdHvS8333h9BOpAJJLpDq+k65N3jhOCQ7PIU7RxA5sEdgBvWvJOagmJdspaUn4Ex6NQxdiLadZ xVc3dnOHViRmSI7TlJeNZC1vKOpMtg6t04gMCnwQneUa5ZsN5p/bF6dFwDh42atgI9Rwcstm4aW 0AT5mUST4ihLZdNG60m8sLGqs6Pg7krXjFaibHkGJobD2AaPm123lfdRHsYprwq/2G0Fw0gxtG5 5UTcyR1N8WGVo9XH4gJvs/AWmp1hkUWnw9b/7xX6j+W4Rz7uGQtZb/YiZvEil9CuYCjvEHNjdWK k4C5jAe2ORs6JgMikEaO62RuE= X-Received: by 2002:a05:622a:5c98:b0:4ee:15af:b938 with SMTP id d75a77b69052e-4ffa7819d0cmr23555491cf.70.1767668999913; Mon, 05 Jan 2026 19:09:59 -0800 (PST) X-Google-Smtp-Source: AGHT+IH6gVe9gCbUT6aZzLT7RdSvNX2QeKy9mu54pHXwxlm6rpJqOM6kkyLcNKbwzAr7F+zpdY6IDQ== X-Received: by 2002:a05:622a:5c98:b0:4ee:15af:b938 with SMTP id d75a77b69052e-4ffa7819d0cmr23555291cf.70.1767668999498; Mon, 05 Jan 2026 19:09:59 -0800 (PST) Received: from umbar.lan (2001-14ba-a073-af00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a073:af00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-59b65d0d22csm242869e87.37.2026.01.05.19.09.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jan 2026 19:09:58 -0800 (PST) From: Dmitry Baryshkov Date: Tue, 06 Jan 2026 05:09:55 +0200 Subject: [PATCH v3 1/3] drm/mode_object: add drm_object_immutable_property_get_value() 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 Message-Id: <20260106-drm-fix-lut-checks-v3-1-f7f979eb73c8@oss.qualcomm.com> References: <20260106-drm-fix-lut-checks-v3-0-f7f979eb73c8@oss.qualcomm.com> In-Reply-To: <20260106-drm-fix-lut-checks-v3-0-f7f979eb73c8@oss.qualcomm.com> To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Harry Wentland , Leo Li , Rodrigo Siqueira , Alex Deucher , =?utf-8?q?Christian_K=C3=B6nig?= Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2687; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=OHanLuFuc76947yU3WzGXKL8IflDYvhJa4SYngSj/Nw=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpXH0DlMWQWECsl/rW26AE+Le0PH4Z89ea3vpjg tWGIWCs/zGJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaVx9AwAKCRCLPIo+Aiko 1SAyCACnEjzdAMzpyfkO6PvtCf+G3DKX8uG1K088anOusXdpHWWFhRk3GtMnCS5LCYqNRKYUYwJ Ytbagn9GTFUuoGQLESfr2Tf0CnjUDMKiTEXwNiGZysydZrW9zBqnJUMnRn8pOvinh4vXvVFKhrf 6c+WcZ0aSoNz54T/S0liD47Zhs5bMoJKvlMVLXP0qYjiceK3dPFRaSc2sl857rTvfCxxPa0WG6R OzStJU50ourr5HiMlCX49zusfzqsjkfF0jgbMblI1D6b3Db2/VRobXLtfeQOstro5PjC+ijLS0K GuxXxLdYyF0BZq5TUBES6CyaTl9+jrINf+WW2rxJAkB3imVF X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Authority-Analysis: v=2.4 cv=e9YLiKp/ c=1 sm=1 tr=0 ts=695c7d08 cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=uUhA93nX2LN1thLMeo8A:9 a=QEXdDO2ut3YA:10 a=dawVfQjAaf238kedN5IG:22 X-Proofpoint-GUID: 8_gjHiHYw0d1Zq2yRt3tcd4dX098-r9u X-Proofpoint-ORIG-GUID: 8_gjHiHYw0d1Zq2yRt3tcd4dX098-r9u X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA2MDAyNSBTYWx0ZWRfX+f6Aso7SCjz1 Ih+YdrCkwUzDxEwagFzh5A1Tlk6mq2wNmEgKdTQGliWG6t3s5cvbLcr2ELZAX+Y4yqfuw8nbLuR 0ZDmax9qGseWtOsqo+Y9d8f1DyLTJic/NZDAn6orI09hVAm0Gk/rGjcHDkYmGFSE2eMSCEtTquJ yyA0pTU1IA1C02/jvJA7PmB+mkwjq6jvvVWzuklzXYYg9UZPmGE4F3R2vpeM92ttxxmQG/FkgIc 9BKhv4mu2lxyn2w6XRJgSmMHhYWlyq1W0L1uTdIQYOF7eni4YjXOYSY6z2t7hRDXk0UuGW2vISD z1TcZYhhUAZ6Fuyt36B3Sl99HTfZ0SJfFtB9KDLrrr6GdI9j7v+qu4ucY4wDaG2587DEj+fbRUh 0heUUY34yRULrUQPrc+RPdSwW1ikHRYBh4Kb6yqsbDV9Ws5mqz8SaoIxG5THbNvu5gGzdQz7orr 8HRT2Sx2dHayT5a54MA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-05_02,2026-01-05_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 priorityscore=1501 phishscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 spamscore=0 bulkscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601060025 We have a helper to get property values for non-atomic drivers and another one default property values for atomic drivers. In some cases we need the ability to get value of immutable property, no matter what kind of driver it is. Implement new property-related helper, drm_object_immutable_property_get_value(), which lets the caller to get the value of the immutable property. Signed-off-by: Dmitry Baryshkov Reviewed-by: Thomas Zimmermann --- drivers/gpu/drm/drm_mode_object.c | 25 +++++++++++++++++++++++++ include/drm/drm_mode_object.h | 3 +++ 2 files changed, 28 insertions(+) diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_o= bject.c index b45d501b10c8..2d943a610b88 100644 --- a/drivers/gpu/drm/drm_mode_object.c +++ b/drivers/gpu/drm/drm_mode_object.c @@ -385,6 +385,31 @@ int drm_object_property_get_default_value(struct drm_m= ode_object *obj, } EXPORT_SYMBOL(drm_object_property_get_default_value); =20 +/** + * drm_object_immutable_property_get_value - retrieve the value of a prope= rty + * @obj: drm mode object to get property value from + * @property: property to retrieve + * @val: storage for the property value + * + * This function retrieves the software state of the given immutable prope= rty + * for the given mode object. + * + * This function can be called by both atomic and non-atomic drivers. + * + * Returns: + * Zero on success, error code on failure. + */ +int drm_object_immutable_property_get_value(struct drm_mode_object *obj, + struct drm_property *property, + uint64_t *val) +{ + if (drm_WARN_ON(property->dev, !(property->flags & DRM_MODE_PROP_IMMUTABL= E))) + return -EINVAL; + + return __drm_object_property_get_prop_value(obj, property, val); +} +EXPORT_SYMBOL(drm_object_immutable_property_get_value); + /* helper for getconnector and getproperties ioctls */ int drm_mode_object_get_properties(struct drm_mode_object *obj, bool atomi= c, bool plane_color_pipeline, diff --git a/include/drm/drm_mode_object.h b/include/drm/drm_mode_object.h index c68edbd126d0..44a0d6f8d01f 100644 --- a/include/drm/drm_mode_object.h +++ b/include/drm/drm_mode_object.h @@ -133,6 +133,9 @@ int drm_object_property_get_value(struct drm_mode_objec= t *obj, int drm_object_property_get_default_value(struct drm_mode_object *obj, struct drm_property *property, uint64_t *val); +int drm_object_immutable_property_get_value(struct drm_mode_object *obj, + struct drm_property *property, + uint64_t *val); =20 void drm_object_attach_property(struct drm_mode_object *obj, struct drm_property *property, --=20 2.47.3