get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2224204,
    "url": "http://patchwork.ozlabs.org/api/patches/2224204/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260417033439.318930-1-ynorov@nvidia.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": "<20260417033439.318930-1-ynorov@nvidia.com>",
    "list_archive_url": null,
    "date": "2026-04-17T03:34:38",
    "name": "gpio: drop bitmap_complement() where feasible",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "351c9b2ac706ed6849102874521478cd9ec0db1c",
    "submitter": {
        "id": 92516,
        "url": "http://patchwork.ozlabs.org/api/people/92516/?format=api",
        "name": "Yury Norov",
        "email": "ynorov@nvidia.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260417033439.318930-1-ynorov@nvidia.com/mbox/",
    "series": [
        {
            "id": 500229,
            "url": "http://patchwork.ozlabs.org/api/series/500229/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/list/?series=500229",
            "date": "2026-04-17T03:34:38",
            "name": "gpio: drop bitmap_complement() where feasible",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/500229/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2224204/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2224204/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "\n <linux-gpio+bounces-35202-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=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=CgTE3UV7;\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-35202-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)",
            "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com\n header.b=\"CgTE3UV7\"",
            "smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=52.101.57.67",
            "smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com",
            "smtp.subspace.kernel.org;\n spf=fail smtp.mailfrom=nvidia.com",
            "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nvidia.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 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fxgVl1McFz1yD3\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 13:34:55 +1000 (AEST)",
            "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 103913009B2A\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 03:34:52 +0000 (UTC)",
            "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 08554481B1;\n\tFri, 17 Apr 2026 03:34:50 +0000 (UTC)",
            "from BN8PR05CU002.outbound.protection.outlook.com\n (mail-eastus2azon11011067.outbound.protection.outlook.com [52.101.57.67])\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 12F832E2DF2;\n\tFri, 17 Apr 2026 03:34:46 +0000 (UTC)",
            "from CY8PR12MB8300.namprd12.prod.outlook.com (2603:10b6:930:7d::16)\n by SJ0PR12MB6926.namprd12.prod.outlook.com (2603:10b6:a03:485::8) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9818.20; Fri, 17 Apr\n 2026 03:34:43 +0000",
            "from CY8PR12MB8300.namprd12.prod.outlook.com\n ([fe80::ce75:8187:3ac3:c5de]) by CY8PR12MB8300.namprd12.prod.outlook.com\n ([fe80::ce75:8187:3ac3:c5de%3]) with mapi id 15.20.9818.023; Fri, 17 Apr 2026\n 03:34:43 +0000"
        ],
        "ARC-Seal": [
            "i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1776396889; cv=fail;\n b=Qej75PCEg4BRnzBy0fCD8RA0QFbE7JddnClRnojYRyBXwwIZMFNaGpIBw6MZ3oKuxYynzgGhu1RKP+eYJrI9K8+/0pdqi9Rbo5WtmxE7UsmII9Jv1pqbMCLaTEprCDw+iPEOh0EX+X+SK6LqYtO3X7qutD+tUt07khjrQbifISk=",
            "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=egUrqwBKDJElVLX+J+0PKqKgv+UKNnnzFTkjIq+PuHtdggdQysUiylZqN6hW/Pvn4UQbhXPXAL3iQ7la7ugrKTO+wtqIRnfVj2DGJeBYM8JQW1hammc45sQQ7c0rL11SdNv2SONJprgwvmQ9d+M0qdk91zTcIvEFNohk4bPRpUvskZjhV3YtWrn2ZFFT4r5yeR7hIzLxk+zXwog4bm/Qo2tdWuEySLGwuIs/pEovfi3Nq0DS7Seeu94Y6zI4SrFz/xVcz2M8B7W8UL/blexnxQhVSAdvOp2UQ72dWE+PY2qaBdw7F5bIhiTRZ+ZDgpTHnoMbK4MlaW3xlSR6pKBd/g=="
        ],
        "ARC-Message-Signature": [
            "i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1776396889; c=relaxed/simple;\n\tbh=0OpOb1vOyAe2rm7wks3SXtGu59WZNRtjYbZFRaRxoqc=;\n\th=From:To:Cc:Subject:Date:Message-ID:Content-Type:MIME-Version;\n b=OoDBYrLuYlmVvfizAIBmu6CThm6tddqbWjByZYTkFA6V3L/AEd37nJ4sc0Ib/YBTcuDIDi9gAoCIslYXHnQ/p7hoe6H+nVruKGPa1zxicWCQrUItlgrm3a2t8ygC+oTcGQNeEKsQcCM0qeG/3ftIhxhEzb93zUxreb5EaFsIBXc=",
            "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=dCER12a8AX4KI+qktc+coveVq7UcxKaCuFiBXc8NcHM=;\n b=qQggyPqMZQXoLyzw+5MDhk7TRJD18Bvgv4v/ol/Wp8i0wk3eqAaODqmErEplQTTQFaNgQkKlyustAnITOOyUdGYlH6bVqpcBsIRuc2o8GUyxWpN167OqeYoa1tVl51vmck/RkNpHXNjpRUI+6aaNj4RqswCcNOyhxVtuCPHhW/B/mdCma4ccdYvJKLeY56T4oNRKteKeDVizg4A75eGVQq5Hrv2rc01TuDMA/Jxh5/ugDASq6/s0DJWNw79cyjt3AeqotGzKHtz3ipUptxRypa5iCkuSq+a5o3AF/nTZTn68vUA6A/F3Jlqfn6ZktsBcMZfJaooo89aciJYSU3ZhIQ=="
        ],
        "ARC-Authentication-Results": [
            "i=2; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com;\n spf=fail smtp.mailfrom=nvidia.com;\n dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com\n header.b=CgTE3UV7; arc=fail smtp.client-ip=52.101.57.67",
            "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;\n dkim=pass header.d=nvidia.com; arc=none"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=dCER12a8AX4KI+qktc+coveVq7UcxKaCuFiBXc8NcHM=;\n b=CgTE3UV7pPNNsImIRks+qkS7eCOo/pq6DvkdkUEXQbGYnu9MaPi768Bs7SKp2BYWT6+UoUQGBv9QinOYTbo+wVWpn4L4dyZ7+TFs0tWx5MFX66zHhgSApIKfndS5NO4AwHRLWkgHe5XgoNZvQ/NE5xDf9xkgrdtS4Ff20tPlNVqMptiTKDBCG+d8q7oX/xeEBjG7ZKAWfvUm1chT4a+kmKnRB7t3+rS83/nsD96p07eoywHl5qoq5DveRVdc+ghnOkGMeAnfc4ARAwNn/ARKfdssl+bTX0f6mBlsOYlXgPK/GqLxPbUSQLKhxfVfMR9HI98tNcS8/XwLVF+1RLNN5g==",
        "From": "Yury Norov <ynorov@nvidia.com>",
        "To": "Linus Walleij <linusw@kernel.org>,\n\tAndy Shevchenko <andriy.shevchenko@linux.intel.com>,\n\tBartosz Golaszewski <brgl@kernel.org>,\n\tShubhrajyoti Datta <shubhrajyoti.datta@amd.com>,\n\tSrinivas Neeli <srinivas.neeli@amd.com>,\n\tMichal Simek <michal.simek@amd.com>,\n\tlinux-gpio@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org,\n\tlinux-arm-kernel@lists.infradead.org",
        "Cc": "Yury Norov <ynorov@nvidia.com>",
        "Subject": "[PATCH] gpio: drop bitmap_complement() where feasible",
        "Date": "Thu, 16 Apr 2026 23:34:38 -0400",
        "Message-ID": "<20260417033439.318930-1-ynorov@nvidia.com>",
        "X-Mailer": "git-send-email 2.51.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "BN0PR03CA0043.namprd03.prod.outlook.com\n (2603:10b6:408:e7::18) To CY8PR12MB8300.namprd12.prod.outlook.com\n (2603:10b6:930:7d::16)",
        "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",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "CY8PR12MB8300:EE_|SJ0PR12MB6926:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "c8bec062-12de-4552-2677-08de9c324381",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|366016|1800799024|376014|10070799003|56012099003|18002099003;",
        "X-Microsoft-Antispam-Message-Info": "\n\t4b5010M8q6eGMVra4FNJh5mWqaeLqz++6Qyrk+gdpLl+cys8MAhzON6Q9Av2kxHQUaNKCwm/Oc8u/zZY98XdmmrECFpLOsCFK/0KeGY+XF1TiHlIfPethdzUSwYrq8qz6E1YxEhx9+2bLo8T5e9KyM60/WYaeux76XNSUT2DLBKBH6buee5JMgjoYM1ItteDN65laIORurqTvtYxNGnUnj8vxjwz4+jbAlf5nZAzG76hq6XCcisBXOXuhnrOfWlSbEC8rofjT4W/5y+EXDdUJu/PqE5ZyePl+tiHsO6wzq4sx4tSuaB8zZXIDbhU3YNWP4GYPbo0ir3ptzTpXzXKt7YErTJL6KPbRfwZ3A459SS+Pxj5HpHrVrp/v5axK4FmO28aYxwDY2pi02DbyRlCL7BiCFBxP2fZtLknW/32o8A5rbVy61lEUyGw22c8JR1wLjD8WD97losglnmaRnSF37iqiCmQI3bFhb328fwxjf1ZX+eEDmfg1xcSALmCVBACUcFxBkWP+HTtLcqD3/AnEr9rN7ZG3kht+2i8mYi5ekOuH64eO54w81+JYbK2PUddydzLTDK6uO2tzKkiO/BWjTaVI9JXmF9OQvo75oFtQKEeWb7GYa7+aI6UB6Y/MONhaDY8tGpT9/4dwb9pdvaEDqfgcp9cA7EEZ+L/BhSLn5aGXarGtxUTiBSf76W6r734DsaqEKGddvPyKzyftpDPB5rAuCT3XlDR+Jq7i5xDdNc=",
        "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY8PR12MB8300.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(10070799003)(56012099003)(18002099003);DIR:OUT;SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n cSmvakymKhZXjvcrQNatp9ZdEBgOruj+NqE9m0PxzNGzl8iHv36cqSkK3W/XAPtYcUYcBW2N4yYa3Rx8NGsRsbQupmURLh9xtATniQadpZsvnXhmUpxkkaT4GoIyH10N4/aTzmylkY7PTbXTLefhgG0hkhfTqN/IcJUqMZQsmS/HOi6FvvaWs+kEfND+yC2NwUsDWBIAhQbuX7fdorBRX88Jh6z0to5np4mD87z3/OBDsitWF7ZKtcikffGCJ8Odp4JP3cUFGUR83yk1A6UYguKB3poRZKwMsAA5hTfjzk+Iomb/aXfEw3QtaxnplvnJpT1nJGIzwrlKLUDM1TnZZbRkwwnsWGFwNjd5UfaCjCQKQWkivBKGe+WumF6N5drhUvjsKVK2HWMH7jaRcB/IAJL8jncdnkmmRjXXh2DRIamVr5fdF5Xa9euxGyQVHWjkMTZ1dnmay9zlBEkvz9PSYEm0gJu5dH0PJTu/IZCSZjKcBBHuTkQ0c1jgof7RSiLqJsC2Qf9KSHi01+lm+D5+O9ny+Lct7sfHbqlnIFIsWofdATRsINCx7eP8ctU7UdyJjFOyKIK9Zw4JGaldt6oW91Z3OJRnE4BJ1Vz7pLDYn2kg7z6jFdPj21oFD4dMpsdGXmgq5VOVYcEHTYgVsBr4XVRN1CZeS6EOcbCyn2AscD+PEyIjqvEKolF5fxVO4e13F7arENvJo9ArwMKuEIEv2qYLJ3F4jzjB4lFt9WiQOHXWGghtt77IqCOkx8jGMNZ4oqDWYJ2N+g8MJ4jKnApG8WE+GDLxFUHM6MNa9MJ4oE+HadAidm+dni843EUKN4nWgpwA5rbYfildTHtUmWEvCre8CnSSZGO9Vkiukc0ahscdLjYsadZL/U/l5RxBF4+9hIcmskbmmkktJeJyL6PS2sJ+fnEzZ2+8JauFAaOdVLmwfCfQDNIpd6QieYxJzxPe6u9TuenIF6LQKwp5Dkn2Idyv4cQGWt93uDPEmrSOBGGs7mIFcsiUuDTRjGoHcas8XX7R2fY/NZUW6nu2c8NHIAHqRcbPpn9ful9AcbPx1/Cx9MiKx+J190bQtcumjISFT1KBG4UhTqy3kgvubttwAiQdjC/Rf1lmgXYqKj3wy9NAznO5G2g673QkzBXcrdtS7+0y+mwUCf68pq8Js6oG/GxpQsMttcJQ+h368hOs32tuen5EALVQsXafIcBxSGzOrBev/JRTAtukpFPKLtRaTpQ31eYA+SaDjqyqahCVSCag2tor278z88CjFHgVHtkB4qm4wds74zFqp/cPs5gdzlUZKkE/I5JQYSgPZ+Cy/W1Z5EQ7UNUpyF3VPCly5UgGmUle0iCNnZZezs57H6JIb19QFcm9E3osHTlyF0Pazc8yB2UjyyZGN+STnSPh+aTfVch79tCLsK9qqrojOfyJ3P+t5p7C/b+M9oRwsJhS/N2XLp+tEAygnx7mck+4EXEpYEbZx2a7AlJUBBnFj0vlmlsWYJ7VrczitXaWHT3tp10S2m+1Azo2rSjhOGPONgL/so2bAON1VD8TH3kA1NnD3fgsjTmUoYLnivTR3Sr3tIrrQgKV+ySD02GP8JyloErqSkdZg4a/ckvDMufZIbWylp1w/pU4w5rVIEmyg7LhJWhBu3S2BPQ1HxG9tjWPLFkzhmc8DZjXBtJCA+nPcIuIV+bqJZPsdgvTWRmNm4Aj153mV+yk71rLlN6lyZCeY+7lWbpRWIj4CQel1S/u3vlheKvMM9FI64b5wQkauB2BwLTZ4LR7QISFlKJCcunzyqWR",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n c8bec062-12de-4552-2677-08de9c324381",
        "X-MS-Exchange-CrossTenant-AuthSource": "CY8PR12MB8300.namprd12.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "17 Apr 2026 03:34:42.9183\n (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n CDapGFg721j0sZX9IXd8ZQ/tNV/WfcBL9+5uREcx1z6SFGhy2WkXZygUElKzF41JGu0dxtgWA66ZZzyvXS9nWg==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "SJ0PR12MB6926"
    },
    "content": "The gpio drivers reproduce the following pattern:\n\n\tbitmap_complement(tmp, data1, nbits);\n\tbitmap_and(dst, data2, tmp, nbits);\n\nThis can be done in a single pass:\n\n\tbitmap_andnot(dst, data2, data1t, nbits);\n\nSigned-off-by: Yury Norov <ynorov@nvidia.com>\n---\n drivers/gpio/gpio-pca953x.c | 7 ++-----\n drivers/gpio/gpio-xilinx.c  | 6 ++----\n 2 files changed, 4 insertions(+), 9 deletions(-)",
    "diff": "diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c\nindex 52e96cc5f67b..1fef733fe1f0 100644\n--- a/drivers/gpio/gpio-pca953x.c\n+++ b/drivers/gpio/gpio-pca953x.c\n@@ -877,11 +877,9 @@ static void pca953x_irq_bus_sync_unlock(struct irq_data *d)\n \tbitmap_or(irq_mask, chip->irq_trig_fall, chip->irq_trig_raise, gc->ngpio);\n \tbitmap_or(irq_mask, irq_mask, chip->irq_trig_level_high, gc->ngpio);\n \tbitmap_or(irq_mask, irq_mask, chip->irq_trig_level_low, gc->ngpio);\n-\tbitmap_complement(reg_direction, reg_direction, gc->ngpio);\n-\tbitmap_and(irq_mask, irq_mask, reg_direction, gc->ngpio);\n \n \t/* Look for any newly setup interrupt */\n-\tfor_each_set_bit(level, irq_mask, gc->ngpio)\n+\tfor_each_andnot_bit(level, irq_mask, reg_direction, gc->ngpio)\n \t\tpca953x_gpio_direction_input(&chip->gpio_chip, level);\n \n \tmutex_unlock(&chip->irq_lock);\n@@ -1005,8 +1003,7 @@ static bool pca953x_irq_pending(struct pca953x_chip *chip, unsigned long *pendin\n \tbitmap_and(cur_stat, cur_stat, chip->irq_mask, gc->ngpio);\n \tbitmap_or(pending, pending, cur_stat, gc->ngpio);\n \n-\tbitmap_complement(cur_stat, new_stat, gc->ngpio);\n-\tbitmap_and(cur_stat, cur_stat, reg_direction, gc->ngpio);\n+\tbitmap_andnot(cur_stat, reg_direction, new_stat, gc->ngpio);\n \tbitmap_and(old_stat, cur_stat, chip->irq_trig_level_low, gc->ngpio);\n \tbitmap_and(old_stat, old_stat, chip->irq_mask, gc->ngpio);\n \tbitmap_or(pending, pending, old_stat, gc->ngpio);\ndiff --git a/drivers/gpio/gpio-xilinx.c b/drivers/gpio/gpio-xilinx.c\nindex be4b4d730547..532205175827 100644\n--- a/drivers/gpio/gpio-xilinx.c\n+++ b/drivers/gpio/gpio-xilinx.c\n@@ -495,13 +495,11 @@ static void xgpio_irqhandler(struct irq_desc *desc)\n \n \txgpio_read_ch_all(chip, XGPIO_DATA_OFFSET, hw);\n \n-\tbitmap_complement(rising, chip->last_irq_read, 64);\n-\tbitmap_and(rising, rising, hw, 64);\n+\tbitmap_andnot(rising, hw, chip->last_irq_read, 64);\n \tbitmap_and(rising, rising, chip->enable, 64);\n \tbitmap_and(rising, rising, chip->rising_edge, 64);\n \n-\tbitmap_complement(falling, hw, 64);\n-\tbitmap_and(falling, falling, chip->last_irq_read, 64);\n+\tbitmap_andnot(falling, chip->last_irq_read, hw, 64);\n \tbitmap_and(falling, falling, chip->enable, 64);\n \tbitmap_and(falling, falling, chip->falling_edge, 64);\n \n",
    "prefixes": []
}