Show a cover letter.

GET /api/covers/813229/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 813229,
    "url": "http://patchwork.ozlabs.org/api/covers/813229/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/cover/1505292990-22957-1-git-send-email-yamada.masahiro@socionext.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": "<1505292990-22957-1-git-send-email-yamada.masahiro@socionext.com>",
    "list_archive_url": null,
    "date": "2017-09-13T08:56:27",
    "name": "[v5,0/3] gpio: uniphier: UniPhier GPIO driver",
    "submitter": {
        "id": 65882,
        "url": "http://patchwork.ozlabs.org/api/people/65882/?format=api",
        "name": "Masahiro Yamada",
        "email": "yamada.masahiro@socionext.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/linux-gpio/cover/1505292990-22957-1-git-send-email-yamada.masahiro@socionext.com/mbox/",
    "series": [
        {
            "id": 2840,
            "url": "http://patchwork.ozlabs.org/api/series/2840/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/list/?series=2840",
            "date": "2017-09-13T08:56:28",
            "name": "gpio: uniphier: UniPhier GPIO driver",
            "version": 5,
            "mbox": "http://patchwork.ozlabs.org/series/2840/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/813229/comments/",
    "headers": {
        "Return-Path": "<linux-gpio-owner@vger.kernel.org>",
        "X-Original-To": "incoming@patchwork.ozlabs.org",
        "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org",
        "Authentication-Results": [
            "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=linux-gpio-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=nifty.com header.i=@nifty.com\n\theader.b=\"T/fOtuLN\"; dkim-atps=neutral"
        ],
        "Received": [
            "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xsbFt2CGzz9sPs\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 13 Sep 2017 18:59:46 +1000 (AEST)",
            "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1752098AbdIMI6f (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tWed, 13 Sep 2017 04:58:35 -0400",
            "from conuserg-09.nifty.com ([210.131.2.76]:64497 \"EHLO\n\tconuserg-09.nifty.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751925AbdIMI62 (ORCPT\n\t<rfc822; linux-gpio@vger.kernel.org>); Wed, 13 Sep 2017 04:58:28 -0400",
            "from pug.e01.socionext.com (p14092-ipngnfx01kyoto.kyoto.ocn.ne.jp\n\t[153.142.97.92]) (authenticated)\n\tby conuserg-09.nifty.com with ESMTP id v8D8ugqi027391;\n\tWed, 13 Sep 2017 17:56:43 +0900"
        ],
        "DKIM-Filter": "OpenDKIM Filter v2.10.3 conuserg-09.nifty.com v8D8ugqi027391",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com;\n\ts=dec2015msa; t=1505293003;\n\tbh=0gleN6X0k7nZi62fUybxfiSe2ZQxALSUiANuCJGR54E=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=T/fOtuLNPmLiso2bF2R6SEThDNDXusV1ykN9EdqZdG8W/nw1X2fIXkK7H4o/daC/3\n\tvnhbzAtaMzlDv6PJAiCEXoY8jOzuSUr4O5aQlMwpmInc1CdAmuT5J4VAMWNnTMk4oR\n\tVmW1/LPSsXs7FaQ4ZjfLCudHteKhldpkhWKv+ABKnjR9WAUm9IVUQu/EX1xdTjUN4d\n\tl0TITLs8ViKK8qhEIf6/yQGBbJP7Hpf2B+zpF6Copb6KI0q7X67z9Qf4vZC43hK5Ro\n\tKItdGgnG3XxrqXbYfMmbD9s0hbZzNt0U8rsiNKLg/vNA8MeMwFlb98N49+9MvtCxql\n\t09skOvIdkhtwg==",
        "X-Nifty-SrcIP": "[153.142.97.92]",
        "From": "Masahiro Yamada <yamada.masahiro@socionext.com>",
        "To": "Marc Zyngier <marc.zyngier@arm.com>, linux-gpio@vger.kernel.org",
        "Cc": "Thomas Gleixner <tglx@linutronix.de>,\n\tJason Cooper <jason@lakedaemon.net>, Rob Herring <robh@kernel.org>,\n\tLinus Walleij <linus.walleij@linaro.org>,\n\tDavid Daney <david.daney@cavium.com>,\n\tMasami Hiramatsu <mhiramat@kernel.org>,\n\tJassi Brar <jaswinder.singh@linaro.org>,\n\tMasahiro Yamada <yamada.masahiro@socionext.com>,\n\tdevicetree@vger.kernel.org, linux-kernel@vger.kernel.org,\n\tRob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>,\n\tlinux-arm-kernel@lists.infradead.org",
        "Subject": "[PATCH v5 0/3] gpio: uniphier: UniPhier GPIO driver",
        "Date": "Wed, 13 Sep 2017 17:56:27 +0900",
        "Message-Id": "<1505292990-22957-1-git-send-email-yamada.masahiro@socionext.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "Sender": "linux-gpio-owner@vger.kernel.org",
        "Precedence": "bulk",
        "List-ID": "<linux-gpio.vger.kernel.org>",
        "X-Mailing-List": "linux-gpio@vger.kernel.org"
    },
    "content": "This series adds UniPhier GPIO driver.\n\nThe interrupt controller part is implemented by using hierarchy irqdomain.\n\nMy problem is mapping of IRQ from this controller to the parent\nirqchip is not contiguous.\n\n  IRQ line of GPIO  --->  Parent interrupt\n        0           --->     48\n        1           --->     49\n                ...\n        15          --->     63\n        16          --->    154\n        17          --->    155\n                ...\n        20          --->    158\n        21          --->    217\n        22          --->    218\n                ...\n\nAt first, I tried to hard-code parent irq numbers because it easily avoids\nthe statically allocated IRQ resource problem.\n(https://lkml.org/lkml/2017/7/6/758)\nBut, hard-coding interrupts made Linus Walleij unhappy.\n\nIn v4, I tried to use the new API irq_domain_push_irq().\nI needed to change it to make it work for DT, but seems controversial\nin the irqdomain subsystem review.\n\nIn v5, I came up with another solution.  The idea is simple.\n.alloc() hook can call of_irq_parse_one() to retrieve the irq information\nfrom DT property.\nIf virq is already allocated, we can simply dispose it and re-alloc it\nin hierarchy domain manner.\n\n\nChanges in v5:\n  - Split into a separate patch for DT binding\n  - Add a new patch to export of_phandle_args_to_fwspec\n  - Split DT binding into a separate file\n  - v4 depends on some patches that change irq_domain_push_irq(), but\n    they got negative feedback in the irqdomain subsystem review.\n    Yet another approach here.  Parse \"interrupts\" property in\n    .alloc() hook.  If the parent IRQ is already mapped, dispose it\n    and re-alloc in irqdomain manner.\n\nChanges in v4:\n  - Add COMPILE_TEST and select IRQ_DOMAIN_HIERARCHY\n  - Reimplement irqchip part by using irq_domain_push_irq()\n\nChanges in v3:\n  - Add .irq_set_affinity() hook\n  - Use irq_domain_create_hierarchy() instead of legacy\n    irq_domain_add_hierarchy()\n\nChanges in v2:\n  - Remove +32 offset for parent interrupts to follow the GIC\n    binding convention\n  - Let uniphier_gpio_irq_alloc() fail if nr_irqs != 1\n  - Allocate gpio_chip statically because just one instance is\n    supported\n  - Fix suspend and resume hooks\n\nMasahiro Yamada (3):\n  irqdomain: export of_phandle_args_to_fwspec\n  dt-bindings: gpio: uniphier: add UniPhier GPIO binding\n  gpio: uniphier: add UniPhier GPIO controller driver\n\n .../devicetree/bindings/gpio/gpio-uniphier.txt     |  43 ++\n MAINTAINERS                                        |   1 +\n drivers/gpio/Kconfig                               |   8 +\n drivers/gpio/Makefile                              |   1 +\n drivers/gpio/gpio-uniphier.c                       | 504 +++++++++++++++++++++\n include/dt-bindings/gpio/uniphier-gpio.h           |  18 +\n include/linux/irqdomain.h                          |   2 +\n kernel/irq/irqdomain.c                             |   5 +-\n 8 files changed, 580 insertions(+), 2 deletions(-)\n create mode 100644 Documentation/devicetree/bindings/gpio/gpio-uniphier.txt\n create mode 100644 drivers/gpio/gpio-uniphier.c\n create mode 100644 include/dt-bindings/gpio/uniphier-gpio.h"
}