get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 1267784,
    "url": "http://patchwork.ozlabs.org/api/patches/1267784/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/rtc-linux/patch/1586333531-21641-2-git-send-email-hsin-hsiung.wang@mediatek.com/",
    "project": {
        "id": 9,
        "url": "http://patchwork.ozlabs.org/api/projects/9/?format=api",
        "name": "Linux RTC development",
        "link_name": "rtc-linux",
        "list_id": "linux-rtc.vger.kernel.org",
        "list_email": "linux-rtc@vger.kernel.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<1586333531-21641-2-git-send-email-hsin-hsiung.wang@mediatek.com>",
    "list_archive_url": null,
    "date": "2020-04-08T08:12:06",
    "name": "[v12,1/6] mfd: mt6397: Modify suspend/resume behavior",
    "commit_ref": null,
    "pull_url": null,
    "state": "not-applicable",
    "archived": false,
    "hash": "2f885b60e574357a0ad2dd9ea1ed58d3d95d1fdd",
    "submitter": {
        "id": 74946,
        "url": "http://patchwork.ozlabs.org/api/people/74946/?format=api",
        "name": "Hsin-Hsiung Wang",
        "email": "hsin-hsiung.wang@mediatek.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/rtc-linux/patch/1586333531-21641-2-git-send-email-hsin-hsiung.wang@mediatek.com/mbox/",
    "series": [
        {
            "id": 169156,
            "url": "http://patchwork.ozlabs.org/api/series/169156/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/rtc-linux/list/?series=169156",
            "date": "2020-04-08T08:12:06",
            "name": "Add Support for MediaTek PMIC MT6358",
            "version": 12,
            "mbox": "http://patchwork.ozlabs.org/series/169156/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1267784/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1267784/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<linux-rtc-owner@vger.kernel.org>",
        "X-Original-To": "incoming@patchwork.ozlabs.org",
        "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org",
        "Authentication-Results": [
            "ozlabs.org; spf=none (no SPF record)\n\tsmtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67;\n\thelo=vger.kernel.org;\n\tenvelope-from=linux-rtc-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org; dmarc=pass (p=none dis=none)\n\theader.from=mediatek.com",
            "ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=mediatek.com header.i=@mediatek.com\n\theader.a=rsa-sha256 header.s=dk header.b=qP6e6Bx/; \n\tdkim-atps=neutral"
        ],
        "Received": [
            "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 48xxq46cbXz9sSh\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed,  8 Apr 2020 18:13:04 +1000 (AEST)",
            "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1727173AbgDHIND (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tWed, 8 Apr 2020 04:13:03 -0400",
            "from mailgw01.mediatek.com ([210.61.82.183]:9335 \"EHLO\n\tmailgw01.mediatek.com\" rhost-flags-OK-FAIL-OK-FAIL) by\n\tvger.kernel.org with ESMTP id S1726146AbgDHINC (ORCPT\n\t<rfc822;linux-rtc@vger.kernel.org>); Wed, 8 Apr 2020 04:13:02 -0400",
            "from mtkcas11.mediatek.inc [(172.21.101.40)] by\n\tmailgw01.mediatek.com\n\t(envelope-from <hsin-hsiung.wang@mediatek.com>)\n\t(Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS)\n\twith ESMTP id 1975154832; Wed, 08 Apr 2020 16:12:53 +0800",
            "from MTKCAS06.mediatek.inc (172.21.101.30) by\n\tmtkmbs01n1.mediatek.inc (172.21.101.68) with Microsoft SMTP Server\n\t(TLS) id 15.0.1497.2; Wed, 8 Apr 2020 16:12:49 +0800",
            "from mtksdaap41.mediatek.inc (172.21.77.4) by MTKCAS06.mediatek.inc\n\t(172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via\n\tFrontend Transport; Wed, 8 Apr 2020 16:12:49 +0800"
        ],
        "X-UUID": [
            "13fc219e180e47d6beac0a362bd9c807-20200408",
            "13fc219e180e47d6beac0a362bd9c807-20200408"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=mediatek.com; s=dk; \n\th=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From;\n\tbh=LCpxPAAAlbCRhNWaPlL/YFI3+ocxOtHpC4ZE4h02Q94=; \n\tb=qP6e6Bx/1fpCP//jsDK3xQRw0fSg+WeUNJZW7Ui1WcEZ6S9UQsncL7TKrSHd8VdprJrQyGxE5ZX6nlMN37zy5oEIqjSky1F03cGhKE+jBOo/e9OqzFr3UQ2yrae/T5ArZ1RbS2SWQKFVFnThmrSvYsI/oP+CqiXwsfnq7x9/MUk=;",
        "From": "Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>",
        "To": "Lee Jones <lee.jones@linaro.org>, Rob Herring <robh+dt@kernel.org>,\n\tMatthias Brugger <matthias.bgg@gmail.com>,\n\tAlexandre Belloni <alexandre.belloni@bootlin.com>",
        "CC": "Nicolas Boichat <drinkcat@chromium.org>,\n\tMark Rutland <mark.rutland@arm.com>, Sean Wang <sean.wang@mediatek.com>,\n\tSebastian Reichel <sre@kernel.org>,\n\tEddie Huang <eddie.huang@mediatek.com>,\n\tAlessandro Zummo <a.zummo@towertech.it>,\n\tKate Stewart <kstewart@linuxfoundation.org>,\n\tRichard Fontana <rfontana@redhat.com>,\n\tFrank Wunderlich <frank-w@public-files.de>,\n\tJosef Friedl <josef.friedl@speed.at>,\n\tThomas Gleixner <tglx@linutronix.de>,\n\tHsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>,\n\tRan Bi <ran.bi@mediatek.com>, <devicetree@vger.kernel.org>,\n\t<linux-arm-kernel@lists.infradead.org>,\n\t<linux-mediatek@lists.infradead.org>,\n\t<linux-kernel@vger.kernel.org>, <linux-pm@vger.kernel.org>,\n\t<linux-rtc@vger.kernel.org>, <srv_heupstream@mediatek.com>",
        "Subject": "[PATCH v12 1/6] mfd: mt6397: Modify suspend/resume behavior",
        "Date": "Wed, 8 Apr 2020 16:12:06 +0800",
        "Message-ID": "<1586333531-21641-2-git-send-email-hsin-hsiung.wang@mediatek.com>",
        "X-Mailer": "git-send-email 2.6.4",
        "In-Reply-To": "<1586333531-21641-1-git-send-email-hsin-hsiung.wang@mediatek.com>",
        "References": "<1586333531-21641-1-git-send-email-hsin-hsiung.wang@mediatek.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-MTK": "N",
        "Content-Transfer-Encoding": "base64",
        "Sender": "linux-rtc-owner@vger.kernel.org",
        "Precedence": "bulk",
        "List-ID": "<linux-rtc.vger.kernel.org>",
        "X-Mailing-List": "linux-rtc@vger.kernel.org"
    },
    "content": "Some pmics don't need backup interrupt settings, so we change to use\npm notifier for the pmics which are necessary to store settings.\n\nSigned-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>\n---\n drivers/mfd/mt6397-core.c       | 30 ------------------------------\n drivers/mfd/mt6397-irq.c        | 35 ++++++++++++++++++++++++++++++++++-\n include/linux/mfd/mt6397/core.h |  2 ++\n 3 files changed, 36 insertions(+), 31 deletions(-)",
    "diff": "diff --git a/drivers/mfd/mt6397-core.c b/drivers/mfd/mt6397-core.c\r\nindex 0437c85..d2e70d8 100644\r\n--- a/drivers/mfd/mt6397-core.c\r\n+++ b/drivers/mfd/mt6397-core.c\r\n@@ -100,35 +100,6 @@ static const struct mfd_cell mt6397_devs[] = {\r\n \t}\r\n };\r\n \r\n-#ifdef CONFIG_PM_SLEEP\r\n-static int mt6397_irq_suspend(struct device *dev)\r\n-{\r\n-\tstruct mt6397_chip *chip = dev_get_drvdata(dev);\r\n-\r\n-\tregmap_write(chip->regmap, chip->int_con[0], chip->wake_mask[0]);\r\n-\tregmap_write(chip->regmap, chip->int_con[1], chip->wake_mask[1]);\r\n-\r\n-\tenable_irq_wake(chip->irq);\r\n-\r\n-\treturn 0;\r\n-}\r\n-\r\n-static int mt6397_irq_resume(struct device *dev)\r\n-{\r\n-\tstruct mt6397_chip *chip = dev_get_drvdata(dev);\r\n-\r\n-\tregmap_write(chip->regmap, chip->int_con[0], chip->irq_masks_cur[0]);\r\n-\tregmap_write(chip->regmap, chip->int_con[1], chip->irq_masks_cur[1]);\r\n-\r\n-\tdisable_irq_wake(chip->irq);\r\n-\r\n-\treturn 0;\r\n-}\r\n-#endif\r\n-\r\n-static SIMPLE_DEV_PM_OPS(mt6397_pm_ops, mt6397_irq_suspend,\r\n-\t\t\tmt6397_irq_resume);\r\n-\r\n struct chip_data {\r\n \tu32 cid_addr;\r\n \tu32 cid_shift;\r\n@@ -238,7 +209,6 @@ static struct platform_driver mt6397_driver = {\r\n \t.driver = {\r\n \t\t.name = \"mt6397\",\r\n \t\t.of_match_table = of_match_ptr(mt6397_of_match),\r\n-\t\t.pm = &mt6397_pm_ops,\r\n \t},\r\n \t.id_table = mt6397_id,\r\n };\r\ndiff --git a/drivers/mfd/mt6397-irq.c b/drivers/mfd/mt6397-irq.c\r\nindex b2d3ce1..2924919 100644\r\n--- a/drivers/mfd/mt6397-irq.c\r\n+++ b/drivers/mfd/mt6397-irq.c\r\n@@ -9,6 +9,7 @@\r\n #include <linux/of_irq.h>\r\n #include <linux/platform_device.h>\r\n #include <linux/regmap.h>\r\n+#include <linux/suspend.h>\r\n #include <linux/mfd/mt6323/core.h>\r\n #include <linux/mfd/mt6323/registers.h>\r\n #include <linux/mfd/mt6397/core.h>\r\n@@ -81,7 +82,7 @@ static struct irq_chip mt6397_irq_chip = {\r\n static void mt6397_irq_handle_reg(struct mt6397_chip *mt6397, int reg,\r\n \t\t\t\t  int irqbase)\r\n {\r\n-\tunsigned int status;\r\n+\tunsigned int status = 0;\r\n \tint i, irq, ret;\r\n \r\n \tret = regmap_read(mt6397->regmap, reg, &status);\r\n@@ -128,6 +129,36 @@ static const struct irq_domain_ops mt6397_irq_domain_ops = {\r\n \t.map = mt6397_irq_domain_map,\r\n };\r\n \r\n+static int mt6397_irq_pm_notifier(struct notifier_block *notifier,\r\n+\t\t\t\t  unsigned long pm_event, void *unused)\r\n+{\r\n+\tstruct mt6397_chip *chip =\r\n+\t\tcontainer_of(notifier, struct mt6397_chip, pm_nb);\r\n+\r\n+\tswitch (pm_event) {\r\n+\tcase PM_SUSPEND_PREPARE:\r\n+\t\tregmap_write(chip->regmap,\r\n+\t\t\t     chip->int_con[0], chip->wake_mask[0]);\r\n+\t\tregmap_write(chip->regmap,\r\n+\t\t\t     chip->int_con[1], chip->wake_mask[1]);\r\n+\t\tenable_irq_wake(chip->irq);\r\n+\t\tbreak;\r\n+\r\n+\tcase PM_POST_SUSPEND:\r\n+\t\tregmap_write(chip->regmap,\r\n+\t\t\t     chip->int_con[0], chip->irq_masks_cur[0]);\r\n+\t\tregmap_write(chip->regmap,\r\n+\t\t\t     chip->int_con[1], chip->irq_masks_cur[1]);\r\n+\t\tdisable_irq_wake(chip->irq);\r\n+\t\tbreak;\r\n+\r\n+\tdefault:\r\n+\t\tbreak;\r\n+\t}\r\n+\r\n+\treturn NOTIFY_DONE;\r\n+}\r\n+\r\n int mt6397_irq_init(struct mt6397_chip *chip)\r\n {\r\n \tint ret;\r\n@@ -159,6 +190,7 @@ int mt6397_irq_init(struct mt6397_chip *chip)\r\n \tregmap_write(chip->regmap, chip->int_con[0], 0x0);\r\n \tregmap_write(chip->regmap, chip->int_con[1], 0x0);\r\n \r\n+\tchip->pm_nb.notifier_call = mt6397_irq_pm_notifier;\r\n \tchip->irq_domain = irq_domain_add_linear(chip->dev->of_node,\r\n \t\t\t\t\t\t MT6397_IRQ_NR,\r\n \t\t\t\t\t\t &mt6397_irq_domain_ops,\r\n@@ -177,5 +209,6 @@ int mt6397_irq_init(struct mt6397_chip *chip)\r\n \t\treturn ret;\r\n \t}\r\n \r\n+\tregister_pm_notifier(&chip->pm_nb);\r\n \treturn 0;\r\n }\r\ndiff --git a/include/linux/mfd/mt6397/core.h b/include/linux/mfd/mt6397/core.h\r\nindex fc88d31..b81d333 100644\r\n--- a/include/linux/mfd/mt6397/core.h\r\n+++ b/include/linux/mfd/mt6397/core.h\r\n@@ -8,6 +8,7 @@\r\n #define __MFD_MT6397_CORE_H__\r\n \r\n #include <linux/mutex.h>\r\n+#include <linux/notifier.h>\r\n \r\n enum chip_id {\r\n \tMT6323_CHIP_ID = 0x23,\r\n@@ -54,6 +55,7 @@ enum mt6397_irq_numbers {\r\n struct mt6397_chip {\r\n \tstruct device *dev;\r\n \tstruct regmap *regmap;\r\n+\tstruct notifier_block pm_nb;\r\n \tint irq;\r\n \tstruct irq_domain *irq_domain;\r\n \tstruct mutex irqlock;\r\n",
    "prefixes": [
        "v12",
        "1/6"
    ]
}