get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/2216838/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2216838,
    "url": "http://patchwork.ozlabs.org/api/patches/2216838/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260327-gpio-kill-dev-sync-probe-v1-1-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-1-efac254f1a1d@oss.qualcomm.com>",
    "list_archive_url": null,
    "date": "2026-03-27T10:31:11",
    "name": "[1/4] gpio: sim: stop using dev-sync-probe",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "9c6d78a43af467fda106d1ebf56223bf314330f4",
    "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-1-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/2216838/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2216838/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "\n <linux-gpio+bounces-34244-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=mJANN/J/;\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=ZERQpbSe;\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-34244-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=\"mJANN/J/\";\n\tdkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=\"ZERQpbSe\"",
            "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 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 4fhxtM5PYXz1xy1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 21:37:47 +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 388CB30D7613\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 10:31:46 +0000 (UTC)",
            "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 858573AB290;\n\tFri, 27 Mar 2026 10:31:35 +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 D68CC3382C5\n\tfor <linux-gpio@vger.kernel.org>; Fri, 27 Mar 2026 10:31:32 +0000 (UTC)",
            "from pps.filterd (m0279869.ppops.net [127.0.0.1])\n\tby mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 62R6vtPA3716302\n\tfor <linux-gpio@vger.kernel.org>; Fri, 27 Mar 2026 10:31:32 GMT",
            "from mail-vs1-f72.google.com (mail-vs1-f72.google.com\n [209.85.217.72])\n\tby mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4d5dd6jc0s-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:31 +0000 (GMT)",
            "by mail-vs1-f72.google.com with SMTP id\n ada2fe7eead31-60503c61e89so66050137.1\n        for <linux-gpio@vger.kernel.org>;\n Fri, 27 Mar 2026 03:31:31 -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.28\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Fri, 27 Mar 2026 03:31:29 -0700 (PDT)"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774607495; cv=none;\n b=RIRG/wkUgYJjMFhHcuVQLqXQCtfGY7X3I8kj8445g04akBDDvX1Y5iWMOKxrj2ceJtZ4WjW4YYVEkkAIjCwIF8mJWzxMSZ211rIFx6iC+jH6nEZNO26ncWk6/qVewnrK5GYm6nLKp89jdv9VaTxu1N6gBGxDuI473dnu39ERKq0=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774607495; c=relaxed/simple;\n\tbh=KrXRFKkz+jF/UwU2ye387/82NSUQuTQydckj94JpMVo=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=AOEIsbxGi+zVfvMHV/0TbsyWbhjoMuHIWpzDe+m7r56ZLPCc9jS2+criuDnQXQWlF/CXkg95Ri3AMt7d+LtZoVixhLiuo3MxnjwrQ04fdv2C5u02Hemp4EK/JNk8LQBr1JX0IR/B9NlOuvEs/TOV4SGMAyMip6cX+viaJP3m/Uw=",
        "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=mJANN/J/;\n dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=ZERQpbSe; 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\tQ5hfaYAFxKyc2m5Hj2P39tbeouZR45XwtpVCilRgDEs=; b=mJANN/J/ZmFtIfLP\n\tQooTy8MSKHdmYNWaD2BGikTssecPR/9nfC+mJRD997MacSw/BMOAF+ABIVRkmf50\n\t2RIDNLYHqOuG8KsAZmMq18xvhXtXRmM6kF/pwLIDV5CuU4bxI8tncs+a0jQVLjv7\n\tR1CycZtv3/k+X/t8QXRoUX34/+yfmniqgIrM296wu6K9Z82vJY9FqVolvaTXz6cx\n\tGUQYZoNKgEvZa3extJAqAK5BIbbP2ZC3iCRgqmPO+ZH5gJ6kn7EcB7M0niFqcMN4\n\t7EwFfwaRRb35ZEbEqtP7kOrn9ISm7i49/FGjV6SAmPIzSBYn6wMWC68J0N7gHvkz\n\tInCm1A==",
            "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=oss.qualcomm.com; s=google; t=1774607491; x=1775212291;\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=Q5hfaYAFxKyc2m5Hj2P39tbeouZR45XwtpVCilRgDEs=;\n        b=ZERQpbSefOC2NttblU5gJur9hOCwWb7Qys2gjkyLW11R0SKPy8r5wGN5054C/eDA8L\n         skuyuoS9e5fn2+4ED6dMeyBE9bz0ykO7LpxJ4eqPoUdw/uygH7jjxmMe9dsgG5A4RmOy\n         JsQ3vJJbAM6BteS3ZqD1PPkLlW/ooRubc5eTp9He0gJFQKeHVAlsfgpjEWLDOtzcw3j9\n         Faaw53sXiQNI5UzdbOH6aRR7XkP5vn/wTfF/FfjtOvxjALGNsFSKvTmIm4WGgrwoZb4J\n         l7R6yY6WPdxO8zhd3ln6VzBm7oq9JqZh7F2TopBAYpNDipBF9vy0dlLytzcExAg74lr0\n         0etg=="
        ],
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1774607491; x=1775212291;\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=Q5hfaYAFxKyc2m5Hj2P39tbeouZR45XwtpVCilRgDEs=;\n        b=Sqx5oIzL1lhSc1bOVw508pvt59owNjMz8qsm1YC/E5Kk2b8XSiTdqvSOSY+iqjndtq\n         UfpTjam5dSCxdBFBJCJSBVXk9bptaOrbFYoAeKmrBnmUl3sITmpjK8T6IXoHMN2PkpP1\n         nnET+KKhHmtsWOmGzup6OuJK6DZzBzi/GVdAxToscd0trJyvJYFhkk1uu9og19l0+Ftx\n         Ie8GTlbbDyyVhsIACV38WSmugQJ91LoW5RpIN4ZXuO6E/Yf8gp9yLDRLSBZh3dVrfXkv\n         ekISrmoR4ajaMJWrmDBXkA+Yf2GMc95SOAjeq18KgGmqmTMizhab+AtIIlugmRjMyJma\n         YH7w==",
        "X-Gm-Message-State": "AOJu0YwVVRH4gRALs8j8k4mAZ6aPu6gvZgp4ci92C8NcFATt02Aog1eN\n\tEbqelaPh8NO9gdJqbGJSZoMaKdB4s8C9/mxJTw7YNC+5TASeA35Cs9I9oCNQxXRGF9j/7wKficj\n\tUWDA4s2oYH6BSxJNOmAwD3R2A49vB83aMobWDsBMH0YbQYo6K42eFathMvMBX29ET",
        "X-Gm-Gg": "ATEYQzwfPdWxjVBmiJlDhC/UcElYtKPI7yMdls67Q92WUzuSxtFiqIBhf4b9acx+IcX\n\tQuZ6JOaqiK/8QH2mHK/QRoqzR+ZJ6b2fwgMt7LFz390ir99nEWr03GXuTHj4mdM4Kq/49+7E2BR\n\tn8JeSo9+n6jQOYGGQaYZsQAlVRch2tJeZOSVUC95H7ekrv1qcZUwaqfGp2GuTUXlQ4soBnKrgio\n\t442BE6QEMttjyzMLpUI0ZBatU2O65MX2Fwwb6bZOk669OU9DCHKckOXVQMR7TZOFuAaimnbcvbv\n\teOkacZsDCXX1iU5yM8AKwTGncZjtsqU575FGFOdcIEL8i5w6bBEx2eaf7IhHbv+L16901M/xCdN\n\t9uB0rzp9zLRJSzMWSH2kg+kPvt+w6UznIGT7VKlNH6SBemY0WjPU=",
        "X-Received": [
            "by 2002:a05:6102:524a:b0:602:ac40:96ad with SMTP id\n ada2fe7eead31-604f9302ee6mr724959137.30.1774607490950;\n        Fri, 27 Mar 2026 03:31:30 -0700 (PDT)",
            "by 2002:a05:6102:524a:b0:602:ac40:96ad with SMTP id\n ada2fe7eead31-604f9302ee6mr724948137.30.1774607490385;\n        Fri, 27 Mar 2026 03:31:30 -0700 (PDT)"
        ],
        "From": "Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>",
        "Date": "Fri, 27 Mar 2026 11:31:11 +0100",
        "Subject": "[PATCH 1/4] gpio: sim: stop using 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-1-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=4666;\n i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id;\n bh=KrXRFKkz+jF/UwU2ye387/82NSUQuTQydckj94JpMVo=;\n b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBpxlx6fbHoe0JGXF87CeGIM7R+wqh0Q5qewdDCi\n 6S8H6vIPDiJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCacZcegAKCRAFnS7L/zaE\n w0PJEACMaD6HcUHNPOrWJPsFePi5AGVodPeSUP8S0N3+oKBH/EuE72gUMAN47OSpNbQfmc33Rhl\n +6MV3HB/qmOOlScAzwynXtONfD+s1YnlDwrD6IDHhDjJ6br50UsqrwqO7xes1fgcrngLWYyIwqq\n 5VmOpavG2qOtvanq/GtkM2PFup/Aw2791gMHcgvo569US7PEVXDt1og76HhB6BYEdrrt9woblz6\n ZdD9bX7TXXiJmvCR759t+7yuSESbwBjcURspjrqRIcjwGJAlAe7b0lsOZZrx2OtwHMQXBOu7tw9\n V9myeaQ3QeAmM9Dx+ZWVks7+rS1WGWI9rei06qF5a5yjrn1H0oubEvOIQ5ZuncYhlvkibm1lzPh\n REObms3uoRqRVtON9XtiIcWVGzEvNeaK2HGkn0sVpnht4GioZbB8g57cc9cjai12HbVXqCIV6Su\n hoMPXQhL3wpFDrEhqt29waClwr99Ue5WAzcWhIlPezjtKxha/2dnxtpyI8HbtNJ+rFuf1vvAC/5\n ZwwlJy4bbB5aKs1KxA4vfSgBpesB/i+OZ6qvaXPi1hLMbcGgM+vCpIXj8B9SEelzGt0S3ognJUm\n 4joDwsNGW+1rg4C1N0iv7QmQNmNwAfOzaFz4HmQWJ98Ji6w66TGf7BP+Tmk2aXLFFEudtY1g0lx\n NjN73/iRj22Q2AQ==",
        "X-Developer-Key": "i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp;\n fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772",
        "X-Authority-Analysis": "v=2.4 cv=NenrFmD4 c=1 sm=1 tr=0 ts=69c65c83 cx=c_pps\n a=DUEm7b3gzWu7BqY5nP7+9g==: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=_glEPmIy2e8OvE2BGh3C:22 a=EUspDBNiAAAA:8\n a=PNVl03acetVcUdc3VX8A:9 a=QEXdDO2ut3YA:10 a=-aSRE8QhW-JAV6biHavz:22",
        "X-Proofpoint-GUID": "24dNacvRqwbC_N9YoE071TpmMv4mV8ez",
        "X-Proofpoint-Spam-Details-Enc": "AW1haW4tMjYwMzI3MDA3NiBTYWx0ZWRfX2zwQBGxmwHN+\n LK+vAZLNuVzZuarY0PMok2Uno9qtTtEF9qeH+dGLIWLL6sn7vdMKQJtXaqtrolLFzJnEyuKv4Yc\n miqhYFag+30qwtyBtUmDO++Jr+S/7mJCvADKwB9rms2JlpEw0b3r8fjFNUD3yvvh5KyiqPeU7CR\n INK+qtT7ID0DZcMS4BKMmIdpcfp/2lXpokn/5SRJP8V5t9F/xTGPQgnOdwGZxBZe2Vv/kYhQNOt\n LjNJkEgi6HMQZlvHdKt5yQ8nd9uc7Jglivcv59OedaLy04O6B5ns6SCgXFa42c4ANkFn+7f9Pbp\n JH54z/6E6uaEYYm3IvhHNKCqnwYsp165Fzi0LA4PmPBethSvvsWs3eopV+1jm1EHltQdh+sreI5\n +FAlYOpueOOZelhQXIruOnOf9qaSlGAzUqvjKO8k0IwH2C790cwiL3CWPTaC7kHRfkdUE8MYv8e\n vzqvK/K0KenX9uDJONg==",
        "X-Proofpoint-ORIG-GUID": "24dNacvRqwbC_N9YoE071TpmMv4mV8ez",
        "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 bulkscore=0 spamscore=0 priorityscore=1501 phishscore=0 lowpriorityscore=0\n clxscore=1015 suspectscore=0 adultscore=0 impostorscore=0 malwarescore=0\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": "dev-err-probe is an overengineered solution to a simple problem. Use a\ncombination of wait_for_probe() and device_is_bound() to synchronously\nwait for the platform device to probe.\n\nSigned-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>\n---\n drivers/gpio/Kconfig    |  1 -\n drivers/gpio/gpio-sim.c | 49 +++++++++++++++++++++++++++++--------------------\n 2 files changed, 29 insertions(+), 21 deletions(-)",
    "diff": "diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig\nindex 4c3f6ec336c16129301613aadc8b22587b217005..a603406cb2e53a89e1da6214a3c1c256d5246be7 100644\n--- a/drivers/gpio/Kconfig\n+++ b/drivers/gpio/Kconfig\n@@ -2036,7 +2036,6 @@ config GPIO_SIM\n \ttristate \"GPIO Simulator Module\"\n \tselect IRQ_SIM\n \tselect CONFIGFS_FS\n-\tselect DEV_SYNC_PROBE\n \thelp\n \t  This enables the GPIO simulator - a configfs-based GPIO testing\n \t  driver.\ndiff --git a/drivers/gpio/gpio-sim.c b/drivers/gpio/gpio-sim.c\nindex f32674230237eb08bbf8dd1337a79b5d0aa13259..e19701c2ed673f8ec5a2475e632388197a78339c 100644\n--- a/drivers/gpio/gpio-sim.c\n+++ b/drivers/gpio/gpio-sim.c\n@@ -36,8 +36,6 @@\n #include <linux/sysfs.h>\n #include <linux/types.h>\n \n-#include \"dev-sync-probe.h\"\n-\n #define GPIO_SIM_NGPIO_MAX\t1024\n #define GPIO_SIM_PROP_MAX\t5 /* Max 4 properties + sentinel. */\n #define GPIO_SIM_HOG_PROP_MAX\t5\n@@ -546,7 +544,7 @@ static struct platform_driver gpio_sim_driver = {\n };\n \n struct gpio_sim_device {\n-\tstruct dev_sync_probe_data probe_data;\n+\tstruct platform_device *pdev;\n \tstruct config_group group;\n \n \tint id;\n@@ -673,7 +671,7 @@ static bool gpio_sim_device_is_live(struct gpio_sim_device *dev)\n {\n \tlockdep_assert_held(&dev->lock);\n \n-\treturn !!dev->probe_data.pdev;\n+\treturn !!dev->pdev;\n }\n \n static char *gpio_sim_strdup_trimmed(const char *str, size_t count)\n@@ -695,7 +693,7 @@ static ssize_t gpio_sim_device_config_dev_name_show(struct config_item *item,\n \n \tguard(mutex)(&dev->lock);\n \n-\tpdev = dev->probe_data.pdev;\n+\tpdev = dev->pdev;\n \tif (pdev)\n \t\treturn sprintf(page, \"%s\\n\", dev_name(&pdev->dev));\n \n@@ -900,6 +898,7 @@ static bool gpio_sim_bank_labels_non_unique(struct gpio_sim_device *dev)\n static int gpio_sim_device_activate(struct gpio_sim_device *dev)\n {\n \tstruct platform_device_info pdevinfo;\n+\tstruct platform_device *pdev;\n \tstruct fwnode_handle *swnode;\n \tstruct gpio_sim_bank *bank;\n \tint ret;\n@@ -927,28 +926,39 @@ static int gpio_sim_device_activate(struct gpio_sim_device *dev)\n \t\tbank->swnode = gpio_sim_make_bank_swnode(bank, swnode);\n \t\tif (IS_ERR(bank->swnode)) {\n \t\t\tret = PTR_ERR(bank->swnode);\n-\t\t\tgpio_sim_remove_swnode_recursive(swnode);\n-\t\t\treturn ret;\n+\t\t\tgoto err_remove_swnode;\n \t\t}\n \n \t\tret = gpio_sim_bank_add_hogs(bank);\n-\t\tif (ret) {\n-\t\t\tgpio_sim_remove_swnode_recursive(swnode);\n-\t\t\treturn ret;\n-\t\t}\n+\t\tif (ret)\n+\t\t\tgoto err_remove_swnode;\n \t}\n \n \tpdevinfo.name = \"gpio-sim\";\n \tpdevinfo.fwnode = swnode;\n \tpdevinfo.id = dev->id;\n \n-\tret = dev_sync_probe_register(&dev->probe_data, &pdevinfo);\n-\tif (ret) {\n-\t\tgpio_sim_remove_swnode_recursive(swnode);\n-\t\treturn ret;\n+\tpdev = platform_device_register_full(&pdevinfo);\n+\tif (IS_ERR(pdev)) {\n+\t\tret = PTR_ERR(pdev);\n+\t\tgoto err_remove_swnode;\n+\t}\n+\n+\twait_for_device_probe();\n+\tif (!device_is_bound(&pdev->dev)) {\n+\t\tret = -ENXIO;\n+\t\tgoto err_unregister_pdev;\n \t}\n \n+\tdev->pdev = pdev;\n \treturn 0;\n+\n+err_unregister_pdev:\n+\tplatform_device_unregister(pdev);\n+err_remove_swnode:\n+\tgpio_sim_remove_swnode_recursive(swnode);\n+\n+\treturn ret;\n }\n \n static void gpio_sim_device_deactivate(struct gpio_sim_device *dev)\n@@ -957,8 +967,9 @@ static void gpio_sim_device_deactivate(struct gpio_sim_device *dev)\n \n \tlockdep_assert_held(&dev->lock);\n \n-\tswnode = dev_fwnode(&dev->probe_data.pdev->dev);\n-\tdev_sync_probe_unregister(&dev->probe_data);\n+\tswnode = dev_fwnode(&dev->pdev->dev);\n+\tplatform_device_unregister(dev->pdev);\n+\tdev->pdev = NULL;\n \tgpio_sim_remove_swnode_recursive(swnode);\n }\n \n@@ -1060,7 +1071,7 @@ static ssize_t gpio_sim_bank_config_chip_name_show(struct config_item *item,\n \tguard(mutex)(&dev->lock);\n \n \tif (gpio_sim_device_is_live(dev))\n-\t\treturn device_for_each_child(&dev->probe_data.pdev->dev, &ctx,\n+\t\treturn device_for_each_child(&dev->pdev->dev, &ctx,\n \t\t\t\t\t     gpio_sim_emit_chip_name);\n \n \treturn sprintf(page, \"none\\n\");\n@@ -1571,8 +1582,6 @@ gpio_sim_config_make_device_group(struct config_group *group, const char *name)\n \tmutex_init(&dev->lock);\n \tINIT_LIST_HEAD(&dev->bank_list);\n \n-\tdev_sync_probe_init(&dev->probe_data);\n-\n \treturn &no_free_ptr(dev)->group;\n }\n \n",
    "prefixes": [
        "1/4"
    ]
}