{"id":2222391,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2222391/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260411-waveshare-dsi-touch-v2-18-75cdbeac5156@oss.qualcomm.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/1.1/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260411-waveshare-dsi-touch-v2-18-75cdbeac5156@oss.qualcomm.com>","date":"2026-04-11T12:10:38","name":"[v2,18/21] drm/panel: add devm_drm_panel_add() helper","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"d245d46acda2c71741bb2d2db28d4a3a98b0cc64","submitter":{"id":90483,"url":"http://patchwork.ozlabs.org/api/1.1/people/90483/?format=json","name":"Dmitry Baryshkov","email":"dmitry.baryshkov@oss.qualcomm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260411-waveshare-dsi-touch-v2-18-75cdbeac5156@oss.qualcomm.com/mbox/","series":[{"id":499552,"url":"http://patchwork.ozlabs.org/api/1.1/series/499552/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=499552","date":"2026-04-11T12:10:21","name":"drm/panel: support Waveshare DSI TOUCH kits","version":2,"mbox":"http://patchwork.ozlabs.org/series/499552/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2222391/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2222391/checks/","tags":{},"headers":{"Return-Path":"\n <linux-gpio+bounces-35048-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.a=rsa-sha256\n header.s=qcppdkim1 header.b=Vs9pX17r;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.a=rsa-sha256 header.s=google header.b=V47bSwwl;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=linux-gpio+bounces-35048-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com\n header.b=\"Vs9pX17r\";\n\tdkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=\"V47bSwwl\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=205.220.180.131","smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=oss.qualcomm.com"],"Received":["from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4ftCJB5l0qz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 11 Apr 2026 22:13:46 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id EB1D73034399\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 11 Apr 2026 12:11:57 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 39E473603FE;\n\tSat, 11 Apr 2026 12:11:31 +0000 (UTC)","from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com\n [205.220.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 5FD4C35C19C\n\tfor <linux-gpio@vger.kernel.org>; Sat, 11 Apr 2026 12:11:29 +0000 (UTC)","from pps.filterd (m0279870.ppops.net [127.0.0.1])\n\tby mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63B43QrH621302\n\tfor <linux-gpio@vger.kernel.org>; Sat, 11 Apr 2026 12:11:28 GMT","from mail-qt1-f200.google.com (mail-qt1-f200.google.com\n [209.85.160.200])\n\tby mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dfexfrncp-1\n\t(version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n\tfor <linux-gpio@vger.kernel.org>; Sat, 11 Apr 2026 12:11:28 +0000 (GMT)","by mail-qt1-f200.google.com with SMTP id\n d75a77b69052e-50b4031b86dso77812701cf.0\n        for <linux-gpio@vger.kernel.org>;\n Sat, 11 Apr 2026 05:11:28 -0700 (PDT)","from umbar.lan\n (2001-14ba-a073-af00-264b-feff-fe8b-be8a.rev.dnainternet.fi.\n [2001:14ba:a073:af00:264b:feff:fe8b:be8a])\n        by smtp.gmail.com with ESMTPSA id\n 38308e7fff4ca-38e495b4e73sm11906291fa.41.2026.04.11.05.11.24\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Sat, 11 Apr 2026 05:11:25 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775909491; cv=none;\n b=tRHI3ETcKUSIv+VvfI/PotBIKJpDTZpm3jua8COPIBzuXYndygD7S2FF6iGehRbPtDxhrKr4UAAn8JPslWZyFGEcYNMVVWGLJXZEtKEqNxN+OHk/4T/h4Qhz701NxL7GGiQMTRxXEjP/vlRmt2AC/r/bcq11tAcRaeuzMEVoQBY=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775909491; c=relaxed/simple;\n\tbh=rf4el4++6e9jBpjjECUwGqmrfgQoRtn7snVn69MvoWU=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=cT3H+lxFI4NVYTypyRVbQ8N94uSCmWDeBH6K8SOhpRxkvww/yP0PToTnfGRd4LcHajkLGVJFIHh1SigJj3oBPRhO5JUqctyGfRIvLvFuuFKLMmiPT2x5kOp7Qi2/JllqWgYrsKjowZjFVAHaN10zod3ub9e0kXny2lBtTEtU15o=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com;\n spf=pass smtp.mailfrom=oss.qualcomm.com;\n dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com\n header.b=Vs9pX17r;\n dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=V47bSwwl; arc=none smtp.client-ip=205.220.180.131","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n\tcc:content-transfer-encoding:content-type:date:from:in-reply-to\n\t:message-id:mime-version:references:subject:to; s=qcppdkim1; bh=\n\tu/JqaEb+NMid83GHj5mNNQA+ojq3d6qm/84/uWVT8xw=; b=Vs9pX17rEvZCJU/5\n\toR/lUvbWwG3vzUYIVLFj4RIdRazZfdYBaVQCmITh9XgDOzbRzUVvuZtrB8jtqYcy\n\t0CzUo0fACwCigiJSH5UqZ6nnHsWtWlAxNS8/97UN+cDidJ2ljJYwEHa3ZSYKKM+n\n\t1sztsrYOYEKK4en7P0t1ZMwsPyxL4j6bZXnl1dP4BIyhQRgwFSwZs1PrxAP22BUM\n\t+b9clcSAIU7kwKsoOrgok1WUFABxGlI0l8Jf9p/p7YxwntQT9DRbYCxRsjtgOY4U\n\tIblltI34k5Sk3XRnPSxYYY2cINCTVwaAj0SsUIdxA1xLtR4qurOAgiGKiZxZcNHv\n\tX9bOPQ==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=oss.qualcomm.com; s=google; t=1775909488; x=1776514288;\n darn=vger.kernel.org;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n         :reply-to;\n        bh=u/JqaEb+NMid83GHj5mNNQA+ojq3d6qm/84/uWVT8xw=;\n        b=V47bSwwlmal/1g+ndili7Z0kaSKMLbMxtnU/Rb4Csz/823/zCY27gh8uNc46haMK/p\n         t47IxFqS7b44XauA0E/2DXh9+CpKZf4mWk5m1roDU4kGj/OFYGZnlVsxunhpoXjBOt5w\n         +mwHkTknoYBjbmORSRXOmpsRIo5++IiOVKeUfqTIYSID24mh9Gi1H4h+eAWy4iJCQuLr\n         vyk9auU8hzv/MwBJIn4iVdwCyJoWyw/8EomH/cDeJLhOI2Aw54moZu8iv77rCeI/XaNS\n         VAnl+QMtTk9QI6fcj5PcUBgcMrOIqXj1N13WAjul033FRGRyVtXcSIcByN+JHx7rjSUb\n         QPDQ=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775909488; x=1776514288;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n         :cc:subject:date:message-id:reply-to;\n        bh=u/JqaEb+NMid83GHj5mNNQA+ojq3d6qm/84/uWVT8xw=;\n        b=A3jhcJ/QAQ+tQgz9hltoc1UV8qeyFl2nLNb76cBLfgRoNgTIR0C5QDcAoOUwCzNJto\n         K1dfp2nkz72nSLiXP/Us/1HG3i5guilCl7wL462L/Torgtt/8GJ5hC07mA5bb1/gKf8j\n         ZC2sysQJPp8sUA4BSqdN/jHvAlrWe00pWRyTozLHA8fcjTVPIThjSL6jKX51z3W+MQNX\n         0kK3axY9x2dv+Voae5W+Soo+i2hIjatjDXmi1XwrRwKDai9vVTLyCnCtCYddR156PyEj\n         3afpcQkSLHfLKy/Y4VFzo6KKp4qPAexIOLIC01f1f8LAkAWSB1Qbxs/qkdu895KRI9/i\n         t3NA==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUseueBV8WT7o2au8ehQdlqQ2KqpKoyhGrGi1OzCgbtdoOBPA2ngVm+3OoM0Wcnpug6ZNLydiyBoUiY@vger.kernel.org","X-Gm-Message-State":"AOJu0Ywb9M4Jtuq0FC80lz3ufspzBEhUkjiLCwqFJYj/qwU0H8KtS4GR\n\t0efmRktg2GTcQkkqmHscRZGWlxCKQVamzdiGyCDdZMwREWrlb5pwz2Q02SMq0c6lyr5xN8MJtxU\n\tI8uawueDprW54JjN8fPLpHRn2GJr8Ii/s6gflolj8Uox47hRkLTGLHblnrS1UIfWk","X-Gm-Gg":"AeBDiesTkVG3HL2QrRcMIOwvv8KVQ9cHePBKcXRXp2UchxMEAiMHTSfKc0ToDnLt4hL\n\tGO5zBreXsZPbEQfIvdf+sUWiBJeT1HqhrZ8/LIVDnurUMMOc8tazoGl83O2TJtZAVCfUIZfBCON\n\toM5Q7P26DyeGKO2uYNS7MhDg/MokIY0V556xAkncjv/SS0Ei9tqxrrqV93Pl6JXZvkJF5KanfET\n\tFblNrvg/kesBYfCBNi1Ki38i3nsgQwXw+4hBbBxxRIbPKILYygjdGBF664WuSK3vmKWVu32bF7n\n\ta7C6vThWYQwkChgJa2X9vykR1iKuZSmm8U9tHwOMoDmlPWLTgas1L5PpJao2TihS7bO4ogu21zc\n\tILs0yn6fL7iF3GGxzTFTQgiQ+pWClKOIm30WAP0gmRlUouAPpGZao9eGlngOA7IRt5sgTixOQNQ\n\tuxmfUhgLbcpq+iLsSr7cpBMc32N2cwDawVDj8=","X-Received":["by 2002:a05:622a:a548:b0:50b:4ccf:135e with SMTP id\n d75a77b69052e-50dd5b7c79fmr77592711cf.31.1775909487819;\n        Sat, 11 Apr 2026 05:11:27 -0700 (PDT)","by 2002:a05:622a:a548:b0:50b:4ccf:135e with SMTP id\n d75a77b69052e-50dd5b7c79fmr77592201cf.31.1775909487381;\n        Sat, 11 Apr 2026 05:11:27 -0700 (PDT)"],"From":"Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>","Date":"Sat, 11 Apr 2026 15:10:38 +0300","Subject":"[PATCH v2 18/21] drm/panel: add devm_drm_panel_add() helper","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260411-waveshare-dsi-touch-v2-18-75cdbeac5156@oss.qualcomm.com>","References":"<20260411-waveshare-dsi-touch-v2-0-75cdbeac5156@oss.qualcomm.com>","In-Reply-To":"<20260411-waveshare-dsi-touch-v2-0-75cdbeac5156@oss.qualcomm.com>","To":"Neil Armstrong <neil.armstrong@linaro.org>,\n        Jessica Zhang <jesszhan0024@gmail.com>,\n        David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,\n        Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,\n        Maxime Ripard <mripard@kernel.org>,\n        Thomas Zimmermann <tzimmermann@suse.de>,\n Rob Herring <robh@kernel.org>,\n        Krzysztof Kozlowski <krzk+dt@kernel.org>,\n        Conor Dooley <conor+dt@kernel.org>,\n        Cong Yang <yangcong5@huaqin.corp-partner.google.com>,\n        Ondrej Jirman <megi@xff.cz>,\n        Javier Martinez Canillas <javierm@redhat.com>,\n        Jagan Teki <jagan@edgeble.ai>, Liam Girdwood <lgirdwood@gmail.com>,\n        Mark Brown <broonie@kernel.org>, Linus Walleij <linusw@kernel.org>,\n        Bartosz Golaszewski <brgl@kernel.org>","Cc":"dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,\n        linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org","X-Mailer":"b4 0.15.1","X-Developer-Signature":"v=1; a=openpgp-sha256; l=2089;\n i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id;\n bh=rf4el4++6e9jBpjjECUwGqmrfgQoRtn7snVn69MvoWU=;\n b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBp2jpHm6fYy9faeKzAMPgr6LGW7nVgHcX8hKrg+\n qopFVe49u6JATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCado6RwAKCRCLPIo+Aiko\n 1RooCACTizZflR7WKB6rcWXc9mVqam8f3y7ZEymyQjkmYT0Fq5EoVed/5U/A/eHZbscogqTiZHo\n 31eHxncXOZIKlam+Rv8DV3lvfmC1W0NvHM+NKkJrxtKTV/MF8b0eO2A1uHFp1ys+EDjst6dPB6R\n Ny1kZAL7tOKNTUiHzdl2K954tffQj8KMkM02GaQSYuZ+RKoakeIaPDDg3cOh5gJxi4HdQos4Dtt\n SMUa0tZ7SBIcvkji9Xckd8bWlaMtm1YQE06k7qPvyWJGsK3i/0wBY+Z57Yz9bjKZfXh/hVdUGM0\n iY1IpWo+PdeQ+t27iZqaqWDgaDYRSZKqbP0s9N/dvJIgjK4K","X-Developer-Key":"i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp;\n fpr=8F88381DD5C873E4AE487DA5199BF1243632046A","X-Proofpoint-GUID":"1xBX3LKXAku6MaVEHSKK-vGx1gi2R9tD","X-Authority-Analysis":"v=2.4 cv=OpZ/DS/t c=1 sm=1 tr=0 ts=69da3a70 cx=c_pps\n a=JbAStetqSzwMeJznSMzCyw==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10\n a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22\n a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8\n a=EUspDBNiAAAA:8 a=VYOP6asi5FRKG1UsDooA:9 a=QEXdDO2ut3YA:10\n a=uxP6HrT_eTzRwkO_Te1X:22","X-Proofpoint-ORIG-GUID":"1xBX3LKXAku6MaVEHSKK-vGx1gi2R9tD","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDExMDEwMiBTYWx0ZWRfXxUAlRzauXdgx\n fbHWcdz5knf1nVrmI+3wPMXh4C52qJcb1oegp8rzWfUek4cgxHzmRL6Ty/hnhghkbrsbg1PsjeJ\n ZI7LNeBnt0DTtVgVp8/Go7mcCv7ARJ95dKAAM9sQVQb50JW0albJcTasDAZdRug42AJd56/MIfr\n 0whuXIbnrvhAOTZfOebp2Xi58in0xLr19qODeh+69qJiQbbqbzloEqe4D2slaUNST1lsiH3vL56\n cVi1baD1JbIyt3wfn7KufRXWkgv0VdRlXCQYCr7kvIGMrdi5vTGB2BeYoebigx4PY6jz5adhFC4\n IYVW9ngwxT0YK5qE1abJsKpMLq2qWPZieNWUh7/0KVvr4KbpX3gB2TgsKSv1Dcr9JkmlLZqvCyt\n DO3Amjdz6vViJ/s/B/oPvE7fUVL1gAsiWq41VBNDtDO3l/k/O7qsXywVlUjvxW9jWkK4olttxS4\n GlzbxcCCOjl3a9tpVmg==","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-11_03,2026-04-09_02,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n impostorscore=0 malwarescore=0 spamscore=0 bulkscore=0 priorityscore=1501\n adultscore=0 lowpriorityscore=0 phishscore=0 clxscore=1015 suspectscore=0\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604110102"},"content":"Add devm_drm_panel_add(), devres-managed version of drm_panel_add().\nIt's not uncommon for the panel drivers to use devres functions for most\nof the resources. Provide corresponding replacement for drm_panel_add().\n\nReviewed-by: Linus Walleij <linusw@kernel.org>\nSigned-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>\n---\n drivers/gpu/drm/drm_panel.c | 23 +++++++++++++++++++++++\n include/drm/drm_panel.h     |  1 +\n 2 files changed, 24 insertions(+)","diff":"diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c\nindex d1e6598ea3bc..a6029b699b73 100644\n--- a/drivers/gpu/drm/drm_panel.c\n+++ b/drivers/gpu/drm/drm_panel.c\n@@ -101,6 +101,29 @@ void drm_panel_remove(struct drm_panel *panel)\n }\n EXPORT_SYMBOL(drm_panel_remove);\n \n+static void drm_panel_add_release(void *data)\n+{\n+\tdrm_panel_remove(data);\n+}\n+\n+/**\n+ * devm_drm_panel_add - add a panel to the global registry using devres\n+ * @panel: panel to add\n+ *\n+ * Add a panel to the global registry so that it can be looked\n+ * up by display drivers. The panel to be added must have been\n+ * allocated by devm_drm_panel_alloc(). Unlike drm_panel_add() with this\n+ * function there is no need to call drm_panel_remove(), it will be called\n+ * automatically.\n+ */\n+int devm_drm_panel_add(struct device *dev, struct drm_panel *panel)\n+{\n+\tdrm_panel_add(panel);\n+\n+\treturn devm_add_action_or_reset(dev, drm_panel_add_release, panel);\n+}\n+EXPORT_SYMBOL(devm_drm_panel_add);\n+\n /**\n  * drm_panel_prepare - power on a panel\n  * @panel: DRM panel\ndiff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h\nindex 2407bfa60236..1fb9148dd095 100644\n--- a/include/drm/drm_panel.h\n+++ b/include/drm/drm_panel.h\n@@ -329,6 +329,7 @@ void drm_panel_put(struct drm_panel *panel);\n \n void drm_panel_add(struct drm_panel *panel);\n void drm_panel_remove(struct drm_panel *panel);\n+int devm_drm_panel_add(struct device *dev, struct drm_panel *panel);\n \n void drm_panel_prepare(struct drm_panel *panel);\n void drm_panel_unprepare(struct drm_panel *panel);\n","prefixes":["v2","18/21"]}