Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2216839/?format=api
{ "id": 2216839, "url": "http://patchwork.ozlabs.org/api/patches/2216839/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260327-gpio-kill-dev-sync-probe-v1-4-efac254f1a1d@oss.qualcomm.com/", "project": { "id": 42, "url": "http://patchwork.ozlabs.org/api/projects/42/?format=api", "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": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260327-gpio-kill-dev-sync-probe-v1-4-efac254f1a1d@oss.qualcomm.com>", "list_archive_url": null, "date": "2026-03-27T10:31:14", "name": "[4/4] gpio: remove dev-sync-probe", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "fb4a79217d4f421ef736b4ccb35e0b54baf28fbd", "submitter": { "id": 92196, "url": "http://patchwork.ozlabs.org/api/people/92196/?format=api", "name": "Bartosz Golaszewski", "email": "bartosz.golaszewski@oss.qualcomm.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260327-gpio-kill-dev-sync-probe-v1-4-efac254f1a1d@oss.qualcomm.com/mbox/", "series": [ { "id": 497743, "url": "http://patchwork.ozlabs.org/api/series/497743/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/list/?series=497743", "date": "2026-03-27T10:31:11", "name": "gpio: kill dev-sync-probe", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/497743/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2216839/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2216839/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-gpio+bounces-34247-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=MXP8idKd;\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=gp59MI1Z;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34247-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=\"MXP8idKd\";\n\tdkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=\"gp59MI1Z\"", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=205.220.168.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 tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::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 4fhxtY3lBsz1xy1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 21:37:57 +1100 (AEDT)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 673B03146126\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 10:32:05 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 7A20222579E;\n\tFri, 27 Mar 2026 10:31:39 +0000 (UTC)", "from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com\n [205.220.168.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 D65E43B6C19\n\tfor <linux-gpio@vger.kernel.org>; Fri, 27 Mar 2026 10:31:37 +0000 (UTC)", "from pps.filterd (m0279863.ppops.net [127.0.0.1])\n\tby mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 62R6w3xD1860237\n\tfor <linux-gpio@vger.kernel.org>; Fri, 27 Mar 2026 10:31:37 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 4d5bxv2mh8-1\n\t(version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n\tfor <linux-gpio@vger.kernel.org>; Fri, 27 Mar 2026 10:31:37 +0000 (GMT)", "by mail-qt1-f200.google.com with SMTP id\n d75a77b69052e-5090cc6a7d2so58886231cf.2\n for <linux-gpio@vger.kernel.org>;\n Fri, 27 Mar 2026 03:31:37 -0700 (PDT)", "from brgl-qcom.local ([2a01:cb1d:dc:7e00:94ec:a3a:baff:9151])\n by smtp.gmail.com with ESMTPSA id\n ffacd0b85a97d-43b919588e6sm13382138f8f.16.2026.03.27.03.31.34\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 27 Mar 2026 03:31:34 -0700 (PDT)" ], "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774607499; cv=none;\n b=Om4+qdSE4OrcT20ZJVWGQluAwRkn1Pvid70RvyrmUcpufW7XKRy8asEo3oluk4SpSbBc7rcAhH2RDlszOUxffYpbpQ1HBv5J/nHMJnQKFuQXfNOfBD0DCtT7MmPs/4ZFGAFMlIvd32QB6dRICux2jrE/42tGzeDsNUoK87Ye3M0=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774607499; c=relaxed/simple;\n\tbh=WU6CDpkC8Dvbh1VCJ3wGEu3AeMqtqKzCcbncYoIIAYU=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=kdX759rdhjotQ4rkskhdE0h5uJVhZXuVS1ONdEjwaBoynyghYX6+8N6kTFsxcyiBtTsdtCWmWH+mGGle4MVc/iAz7JBJTodHnJ83KCUdGZpVQgggr6hTWkrkg/uW/fkUjmxWLln1cWTdyNgzExSnwuei6T7kV2x0mgPe7hYJo1g=", "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=MXP8idKd;\n dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=gp59MI1Z; arc=none smtp.client-ip=205.220.168.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\t3gB2pfdhzvATTeNOLtgyG3Q7kaxhJF7M36bMfUs/gTo=; b=MXP8idKdvurI6883\n\tqOomr1pOlOs4loHEG/C95gwRZGYWsity4Fagjv76OrCmxBSamW2pKP4FDYCJ+sUR\n\tpkfmO2jDdWlTth5umvXvt8iE1O4xpwIfr60ipPXL0A5dNUB+94gG4J7FyfzjQ1Li\n\tbE7WdqTB8JVke/PBEUmdL2qdNUaavv4Tml5DJH+8PenXmgHdT0fdJyjB2lQCN4iz\n\tqj1nWOCNTXUlyNRGaERLtO85KwlRJ8sUOE6T+PQ6t/orCldvdJTbChahfKS7PmTv\n\tlUbXYgzSk2DY3xNwg0odAGR7TVRjdyKqQxBUEKNquJrwHHw4vTFakSwUqfN0V0px\n\tQlFevQ==", "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oss.qualcomm.com; s=google; t=1774607496; x=1775212296;\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=3gB2pfdhzvATTeNOLtgyG3Q7kaxhJF7M36bMfUs/gTo=;\n b=gp59MI1ZAokgRYfVgmk37G3TQjRFRwDNXt3/Dgxn0V7tucLjn2blK+u9rPmHgY8Tk0\n j9uqK+79kl46MR2v19KkJrncbUsW2smjPNNJyUf9Ef9pawrGci7j/xa5kPjdiz2G5icG\n 5Ilu1aM3jR+YpJ5xnjcHpI2tC/V3q5iEmgq7yFyM2rDq2jGY53DWn5kPBbCQeGCen6aC\n O8IPijTWLUfGtcA7yV7htdjSwEmj/LmZIhZn1ph0e6SySV4lMe/aKQZnrYLPzWWnnE5a\n 31od0VB2E6Mp7OBr9PV2TrdskxLIuYnllPQqRFbWE2dQt5mOMuGRx6LhD7QwHxGUE/TW\n KB5Q==" ], "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1774607496; x=1775212296;\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=3gB2pfdhzvATTeNOLtgyG3Q7kaxhJF7M36bMfUs/gTo=;\n b=gQ9gg6TcMt3SAtUGCjm6uO5OOdn6JrCy8J1zyRn8TnB1h+eapaiC6Id/Lx/T3r9C+o\n WFBrdomq8jCOoiSdGdsAOFlukEPcbWIHdkDdgyA15fZDIVtLgJLGnmKfSAKosqHJqSQj\n z2QmjhinomxCcfnhcnbdaTq9tM8hOYpF7NnZIfIf6rkE9f3uijGhOJ+VP38ajLsx5dfm\n avwGG1UM6qCxsr01IWhOB55JMLyOT0MRnLVycL/VxK7ENVVs0K0bg+vuA5GWc06Tiw6d\n v/OP4MNOrlTNS6KeW+saaI7d2/utR+9WLFymfjK6et9OQ35Y90VfDyx+Bhvoe+OEXYEe\n ZOmw==", "X-Gm-Message-State": "AOJu0YzOZvV8khk6/3QSN8Ld8tQJJhlRPbGGatfk1X+FcJ2FPklTaR0H\n\tsz5fZE4KXxvdqEvqwLT97zmnJR6eTAgHiaXWp4kfjbXPMX9P0vtYVF0MR3apKn/ALm7V0IsUP+9\n\tNJr8ZQRs4reqpjIDuvVNabIj0e7EuQVpGY7UkJYLcB/btzsNMjxP7rKvz7/htmWO9", "X-Gm-Gg": "ATEYQzzbnGUXMa5Lga3gCehPtzad/UX5CkFslcezB5rGAFBWBtmE+exloivlREQ424a\n\tU/e3/tYm5cFCFVUufO3oHWP5ilYQql4ak5PR9O4eou2iqOZ19MhPJtruT+I+1t7OmiF23Phudut\n\tC9MiptGxSuLU5Kr7Dq7priikCr1wJTIzgF+rWhDSZQywBsGOYUP2Fk7C7QDb2gAMi2bsUgrF/fo\n\tPo33dtfzeceHkBwOLfuTNU/KIFjk3q0Yu1X5mLuFHyYZvUt9XJZC0TxVhNOmXEXpxvHPPoMi5g3\n\tnysGjFrsMsJy1TtEnki7IVIBdRGX/Cwdd7jgTKFg9Kun1zu5Ls6EeRbY1swCAGn21nX7G3VcS9p\n\tYEtrHQAqG/x5uQjAftpiHGhU8DofYXeKE5LjgNL4j0QIKKt3rZH0=", "X-Received": [ "by 2002:ac8:5982:0:b0:50b:5243:d679 with SMTP id\n d75a77b69052e-50ba38b1800mr23937691cf.46.1774607496238;\n Fri, 27 Mar 2026 03:31:36 -0700 (PDT)", "by 2002:ac8:5982:0:b0:50b:5243:d679 with SMTP id\n d75a77b69052e-50ba38b1800mr23937261cf.46.1774607495728;\n Fri, 27 Mar 2026 03:31:35 -0700 (PDT)" ], "From": "Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>", "Date": "Fri, 27 Mar 2026 11:31:14 +0100", "Subject": "[PATCH 4/4] gpio: remove dev-sync-probe", "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": "\n <20260327-gpio-kill-dev-sync-probe-v1-4-efac254f1a1d@oss.qualcomm.com>", "References": "\n <20260327-gpio-kill-dev-sync-probe-v1-0-efac254f1a1d@oss.qualcomm.com>", "In-Reply-To": "\n <20260327-gpio-kill-dev-sync-probe-v1-0-efac254f1a1d@oss.qualcomm.com>", "To": "Linus Walleij <linusw@kernel.org>, Bartosz Golaszewski <brgl@kernel.org>,\n Geert Uytterhoeven <geert+renesas@glider.be>,\n Koichiro Den <koichiro.den@canonical.com>", "Cc": "linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,\n Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>", "X-Mailer": "b4 0.14.2", "X-Developer-Signature": "v=1; a=openpgp-sha256; l=5390;\n i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id;\n bh=WU6CDpkC8Dvbh1VCJ3wGEu3AeMqtqKzCcbncYoIIAYU=;\n b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBpxlx+YuCT5bM77vqw9y37aa3cTWbIljfFX6LDP\n l9lF7bBLZGJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCacZcfgAKCRAFnS7L/zaE\n w7PGD/96S1XxvMAn/LVbrC3X09OwYebs5mrMuBjdtw8876fx9SDho5XLNX5pGEmG4Xi9kUHxTLx\n Eunqpoj0GnRXkXHIRV7zfCmEpN2lGJ+9D+bQ7vURI5ld+f8y+XbwF3ampX8I4g84z//URvKaMac\n 0H7M6ZCHuXWo4MO0+Z4XbOMGdrthjB5wviXIVZuaPkr6NR6O7rbkLrml37dbau2LhPk0rmmAFVB\n dFbfaytCtwFUKHyt/My3rtgWyLC5cimZPq6H4J2/sP5vB95qyvCr07gufFHwvBHYRZ7TOsIj5yX\n T1PGKJdq9E6h730GGERFFP9pcgkW9bgAp+hFxAThjbj2g8Y8SjhSlgj0WuSp5814igLhjIxuj2r\n EjScMq8iQ4mdUH2ViAsS6GeH4XCJGkugciElEe22s1ge+8w5/ghmNIOqaIlkFHlbQwC2VBxMFry\n VbE8Uh0cOXBZmxoBzp5bzE8Cyh41z0R7ct3Sv17DnigPgSYPDYMTUr/DyUgieBWUQN7RZXXueC6\n wkhrxxnl+76Bq15vfJvvVWv7qobrmLtHg1DTzJkA5X3KwV8ifTZIIqQ8qm42K3hwyDCGN83iRZh\n 2+sxLSCxAVQutg6K5B5BxsPg20F+MtW+jwi2Beh47ktIuzsVu3bWu5YfJY5G4vOh0l7LuLPYkt2\n EOj00yEK8IpQE2w==", "X-Developer-Key": "i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp;\n fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772", "X-Authority-Analysis": "v=2.4 cv=A99h/qWG c=1 sm=1 tr=0 ts=69c65c89 cx=c_pps\n a=JbAStetqSzwMeJznSMzCyw==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10\n a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22\n a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=EUspDBNiAAAA:8\n a=DfNHnWVPAAAA:8 a=G7goKWzWcKrMef2dhUMA:9 a=QEXdDO2ut3YA:10\n a=uxP6HrT_eTzRwkO_Te1X:22 a=rjTVMONInIDnV1a_A2c_:22", "X-Proofpoint-ORIG-GUID": "igR_G1DY2o8nz2jl50ejp5VhVbMz_Fz5", "X-Proofpoint-GUID": "igR_G1DY2o8nz2jl50ejp5VhVbMz_Fz5", "X-Proofpoint-Spam-Details-Enc": "AW1haW4tMjYwMzI3MDA3NiBTYWx0ZWRfXxsmmgEMnpfUm\n 7szVjBHbgiDAUMXsB4vk25eoP0TNoCgK60dcedYD55m+i0VBIYtXocMrSILRn3tyZCBQcoEi4GP\n UTeaD1acnikF9FllEwRXDQcqnvGBS6c6+MXUfb3PmIRArs55w4Ou+CEQKu+HD1GndbyVaUWsACu\n wBKuGlltRuFkFTRoLsUszHjzYGYX+MQNQysvdst9aq9o1EXlAIoy9BZ8ERm19JamjhO4CMOq40m\n yCrjHbKgwHXsHGZTKAE9f2CGG6733nwR81FmdyLCW2LCBO3GbfMpkAGf9V+eJD8LTrGo7gGOEAr\n Jr8Irx63MXa0jeVuvH/8umGZ23sSioHrHHt+uK78U59B90A0t4+Q9MLIeT+w7Ut2Xd3MpA07A2p\n htwpqJVjbOzuF0MTVKZ4MwFLk//j58F4ifKpt1bRukInhTx2oK4GYFnxxpZb+zCGNtcM3pJuDJJ\n Ja9EkIp6bxt4BiEpamA==", "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-03-26_04,2026-03-26_01,2025-10-01_01", "X-Proofpoint-Spam-Details": "rule=outbound_notspam policy=outbound score=0\n suspectscore=0 adultscore=0 malwarescore=0 spamscore=0 impostorscore=0\n phishscore=0 bulkscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603270076" }, "content": "There are no more users. Remove the dev-sync-probe module.\n\nSigned-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>\n---\n drivers/gpio/Kconfig | 3 --\n drivers/gpio/Makefile | 3 --\n drivers/gpio/dev-sync-probe.c | 97 -------------------------------------------\n drivers/gpio/dev-sync-probe.h | 25 -----------\n 4 files changed, 128 deletions(-)", "diff": "diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig\nindex 56a7ddaa95eac07ee4f7b755335595805a316319..257123b3568688ad86a742043af2c6e098a56c3c 100644\n--- a/drivers/gpio/Kconfig\n+++ b/drivers/gpio/Kconfig\n@@ -2082,6 +2082,3 @@ config GPIO_VIRTUSER\n endmenu\n \n endif\n-\n-config DEV_SYNC_PROBE\n-\ttristate\ndiff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile\nindex 20d4a57afdaa6db0d01cd7e107a2e22004641ecb..199b9559a1892c4fce058cb95907de0be5d85780 100644\n--- a/drivers/gpio/Makefile\n+++ b/drivers/gpio/Makefile\n@@ -21,9 +21,6 @@ obj-$(CONFIG_GPIO_GENERIC)\t+= gpio-generic.o\n # directly supported by gpio-generic\n gpio-generic-$(CONFIG_GPIO_GENERIC)\t+= gpio-mmio.o\n \n-# Utilities for drivers that need synchronous fake device creation\n-obj-$(CONFIG_DEV_SYNC_PROBE)\t\t+= dev-sync-probe.o\n-\n obj-$(CONFIG_GPIO_104_DIO_48E)\t\t+= gpio-104-dio-48e.o\n obj-$(CONFIG_GPIO_104_IDI_48)\t\t+= gpio-104-idi-48.o\n obj-$(CONFIG_GPIO_104_IDIO_16)\t\t+= gpio-104-idio-16.o\ndiff --git a/drivers/gpio/dev-sync-probe.c b/drivers/gpio/dev-sync-probe.c\ndeleted file mode 100644\nindex 9ea733b863b2232a16ef9ccc411f180b43bad26e..0000000000000000000000000000000000000000\n--- a/drivers/gpio/dev-sync-probe.c\n+++ /dev/null\n@@ -1,97 +0,0 @@\n-// SPDX-License-Identifier: GPL-2.0-or-later\n-/*\n- * Common code for drivers creating fake platform devices.\n- *\n- * Provides synchronous device creation: waits for probe completion and\n- * returns the probe success or error status to the device creator.\n- *\n- * Copyright (C) 2021 Bartosz Golaszewski <brgl@bgdev.pl>\n- * Copyright (C) 2025 Koichiro Den <koichiro.den@canonical.com>\n- */\n-\n-#include <linux/device.h>\n-#include <linux/slab.h>\n-\n-#include \"dev-sync-probe.h\"\n-\n-static int dev_sync_probe_notifier_call(struct notifier_block *nb,\n-\t\t\t\t\tunsigned long action, void *data)\n-{\n-\tstruct dev_sync_probe_data *pdata;\n-\tstruct device *dev = data;\n-\n-\tpdata = container_of(nb, struct dev_sync_probe_data, bus_notifier);\n-\tif (!device_match_name(dev, pdata->name))\n-\t\treturn NOTIFY_DONE;\n-\n-\tswitch (action) {\n-\tcase BUS_NOTIFY_BOUND_DRIVER:\n-\t\tpdata->driver_bound = true;\n-\t\tbreak;\n-\tcase BUS_NOTIFY_DRIVER_NOT_BOUND:\n-\t\tpdata->driver_bound = false;\n-\t\tbreak;\n-\tdefault:\n-\t\treturn NOTIFY_DONE;\n-\t}\n-\n-\tcomplete(&pdata->probe_completion);\n-\treturn NOTIFY_OK;\n-}\n-\n-void dev_sync_probe_init(struct dev_sync_probe_data *data)\n-{\n-\tmemset(data, 0, sizeof(*data));\n-\tinit_completion(&data->probe_completion);\n-\tdata->bus_notifier.notifier_call = dev_sync_probe_notifier_call;\n-}\n-EXPORT_SYMBOL_GPL(dev_sync_probe_init);\n-\n-int dev_sync_probe_register(struct dev_sync_probe_data *data,\n-\t\t\t struct platform_device_info *pdevinfo)\n-{\n-\tstruct platform_device *pdev;\n-\tchar *name;\n-\n-\tname = kasprintf(GFP_KERNEL, \"%s.%d\", pdevinfo->name, pdevinfo->id);\n-\tif (!name)\n-\t\treturn -ENOMEM;\n-\n-\tdata->driver_bound = false;\n-\tdata->name = name;\n-\treinit_completion(&data->probe_completion);\n-\tbus_register_notifier(&platform_bus_type, &data->bus_notifier);\n-\n-\tpdev = platform_device_register_full(pdevinfo);\n-\tif (IS_ERR(pdev)) {\n-\t\tbus_unregister_notifier(&platform_bus_type, &data->bus_notifier);\n-\t\tkfree(data->name);\n-\t\treturn PTR_ERR(pdev);\n-\t}\n-\n-\twait_for_completion(&data->probe_completion);\n-\tbus_unregister_notifier(&platform_bus_type, &data->bus_notifier);\n-\n-\tif (!data->driver_bound) {\n-\t\tplatform_device_unregister(pdev);\n-\t\tkfree(data->name);\n-\t\treturn -ENXIO;\n-\t}\n-\n-\tdata->pdev = pdev;\n-\treturn 0;\n-}\n-EXPORT_SYMBOL_GPL(dev_sync_probe_register);\n-\n-void dev_sync_probe_unregister(struct dev_sync_probe_data *data)\n-{\n-\tplatform_device_unregister(data->pdev);\n-\tkfree(data->name);\n-\tdata->pdev = NULL;\n-}\n-EXPORT_SYMBOL_GPL(dev_sync_probe_unregister);\n-\n-MODULE_AUTHOR(\"Bartosz Golaszewski <brgl@bgdev.pl>\");\n-MODULE_AUTHOR(\"Koichiro Den <koichiro.den@canonical.com>\");\n-MODULE_DESCRIPTION(\"Utilities for synchronous fake device creation\");\n-MODULE_LICENSE(\"GPL\");\ndiff --git a/drivers/gpio/dev-sync-probe.h b/drivers/gpio/dev-sync-probe.h\ndeleted file mode 100644\nindex 4b3d52b705198dd153618b087ba9d813736a6f29..0000000000000000000000000000000000000000\n--- a/drivers/gpio/dev-sync-probe.h\n+++ /dev/null\n@@ -1,25 +0,0 @@\n-/* SPDX-License-Identifier: GPL-2.0 */\n-\n-#ifndef DEV_SYNC_PROBE_H\n-#define DEV_SYNC_PROBE_H\n-\n-#include <linux/completion.h>\n-#include <linux/notifier.h>\n-#include <linux/platform_device.h>\n-\n-struct dev_sync_probe_data {\n-\tstruct platform_device *pdev;\n-\tconst char *name;\n-\n-\t/* Synchronize with probe */\n-\tstruct notifier_block bus_notifier;\n-\tstruct completion probe_completion;\n-\tbool driver_bound;\n-};\n-\n-void dev_sync_probe_init(struct dev_sync_probe_data *data);\n-int dev_sync_probe_register(struct dev_sync_probe_data *data,\n-\t\t\t struct platform_device_info *pdevinfo);\n-void dev_sync_probe_unregister(struct dev_sync_probe_data *data);\n-\n-#endif /* DEV_SYNC_PROBE_H */\n", "prefixes": [ "4/4" ] }