{"id":710362,"url":"http://patchwork.ozlabs.org/api/1.2/patches/710362/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/CADtm3G6VVthsOX7d_LHNtFdCvw+oiku=ATL8J-cBHBpLTVrpyg@mail.gmail.com/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/1.2/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/","list_archive_url":"https://lore.kernel.org/linuxppc-dev/","list_archive_url_format":"https://lore.kernel.org/linuxppc-dev/{}/","commit_url_format":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"},"msgid":"<CADtm3G6VVthsOX7d_LHNtFdCvw+oiku=ATL8J-cBHBpLTVrpyg@mail.gmail.com>","list_archive_url":"https://lore.kernel.org/linuxppc-dev/CADtm3G6VVthsOX7d_LHNtFdCvw+oiku=ATL8J-cBHBpLTVrpyg@mail.gmail.com/","date":"2017-01-03T01:43:36","name":"mpic IRQ_TYPE_BOTH handling","commit_ref":null,"pull_url":null,"state":"changes-requested","archived":false,"hash":"4c30ac79e0e39ea8f226dd1f400bffdb8f28ffa6","submitter":{"id":62738,"url":"http://patchwork.ozlabs.org/api/1.2/people/62738/?format=json","name":"Gregory Fong","email":"gregory.0xf0@gmail.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/CADtm3G6VVthsOX7d_LHNtFdCvw+oiku=ATL8J-cBHBpLTVrpyg@mail.gmail.com/mbox/","series":[],"comments":"http://patchwork.ozlabs.org/api/patches/710362/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/710362/checks/","tags":{},"related":[],"headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Received":["from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3tsxbd4GL1z9ssP\n\tfor <patchwork-incoming@ozlabs.org>;\n\tTue,  3 Jan 2017 12:45:33 +1100 (AEDT)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3tsxbd3DP2zDqDx\n\tfor <patchwork-incoming@ozlabs.org>;\n\tTue,  3 Jan 2017 12:45:33 +1100 (AEDT)","from mail-qt0-x242.google.com (mail-qt0-x242.google.com\n\t[IPv6:2607:f8b0:400d:c0d::242])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3tsxZ46L4bzDqCn\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tTue,  3 Jan 2017 12:44:12 +1100 (AEDT)","by mail-qt0-x242.google.com with SMTP id 41so32927758qtn.0\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tMon, 02 Jan 2017 17:44:12 -0800 (PST)","by 10.12.131.164 with HTTP; Mon, 2 Jan 2017 17:43:36 -0800 (PST)"],"Authentication-Results":["ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"itrrO74o\"; dkim-atps=neutral","lists.ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"itrrO74o\"; dkim-atps=neutral","lists.ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"itrrO74o\"; dkim-atps=neutral"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=mime-version:from:date:message-id:subject:to:cc;\n\tbh=WGf+T4D6Xd07cBe/8O0ArQlxqXwt+DeJzkN+AB9f0Wo=;\n\tb=itrrO74ofJkmtmMSEAM15XQfFr1qG/SXUEC7cb4WBYR/dlqQIjpMqyldevVZzdBPql\n\tkqyAV5opcse0Lq6AuzkfuexfIvaq4ph+7mIjkfLDzUwVhxuAIo4L444uPZIBmne1Tzhe\n\tNWTE4KbJZUuOfCHkiJTyP7T6UsJRAp/uWEnryN6bklsMbcx9589yhN85X1L+YmOjlJm3\n\tsTR0ka7OhY7ZvjNBCgsawraSJxgqEL4MP+CvVkQeRNZUuhaxdC5lNE5mcUMV0kVSANhJ\n\tGq5Z/BBdQrF9K/u6Kp+MWJ5xiqZPLknH0HgzeN22A2YcvXgXdhHGJFuRYUTEzHepi+5+\n\tMCJg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; \n\tbh=WGf+T4D6Xd07cBe/8O0ArQlxqXwt+DeJzkN+AB9f0Wo=;\n\tb=N/p+clx1p8JUjYoKc+ZTDIYGvEHrb+6T1z+YZH5lxbB7HElcYuDmHSoORHY/m1GTqs\n\t+yEVDK5WvRNsbpDIYo0maqdPebd/L9BEDofYLr4A7YaBmX+ECvCZV+xmtpbrC0Aj2aly\n\tLrW3CNtMnboa1h6nEglMIIiG1LOE8/lzP2iewpe3omRKUaBlNYFmPkWOX5aW3E6CScnE\n\tYzTPvhIvRHe8tDhjoaVPBtz2AVb9Bvj6hgMKYDpodN/RcFUdHLTHy9yl1uePBqYV0R/v\n\tI0/utlFBKsqZBC17pnIgLIp88APOPppqdwLm2QNaGXLxIwjWnagaqtIRWd+/Wz/BWjkD\n\t18Xg==","X-Gm-Message-State":"AIkVDXIhQSrg78ofwsedAGnWAg4jgV3cNIHrMowrTzYLQ55gZtbRSvXgAw/QBVYThygGNGFMI/KuHtZnc2+bMA==","X-Received":"by 10.237.35.60 with SMTP id h57mr62392154qtc.245.1483407849002; \n\tMon, 02 Jan 2017 17:44:09 -0800 (PST)","MIME-Version":"1.0","From":"Gregory Fong <gregory.0xf0@gmail.com>","Date":"Mon, 2 Jan 2017 17:43:36 -0800","Message-ID":"<CADtm3G6VVthsOX7d_LHNtFdCvw+oiku=ATL8J-cBHBpLTVrpyg@mail.gmail.com>","Subject":"mpic IRQ_TYPE_BOTH handling","To":"linuxppc-dev@lists.ozlabs.org","Content-Type":"text/plain; charset=UTF-8","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List\n\t<linuxppc-dev.lists.ozlabs.org>","List-Unsubscribe":"<https://lists.ozlabs.org/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=unsubscribe>","List-Archive":"<http://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=help>","List-Subscribe":"<https://lists.ozlabs.org/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=subscribe>","Cc":"\"linux-kernel@vger.kernel.org\" <linux-kernel@vger.kernel.org>","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org","Sender":"\"Linuxppc-dev\"\n\t<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>"},"content":"Hi all,\n\nIn arch/powerpc/sysdev/mpic.c , it looks like IRQ_TYPE_EDGE_BOTH is\nhandled the same way as IRQ_TYPE_EDGE_FALLING:\n\nstatic unsigned int mpic_type_to_vecpri(struct mpic *mpic, unsigned int type)\n{\n        /* Now convert sense value */\n        switch(type & IRQ_TYPE_SENSE_MASK) {\n        case IRQ_TYPE_EDGE_RISING:\n                return MPIC_INFO(VECPRI_SENSE_EDGE) |\n                       MPIC_INFO(VECPRI_POLARITY_POSITIVE);\n        case IRQ_TYPE_EDGE_FALLING:\n        case IRQ_TYPE_EDGE_BOTH:\n                return MPIC_INFO(VECPRI_SENSE_EDGE) |\n                       MPIC_INFO(VECPRI_POLARITY_NEGATIVE);\n        case IRQ_TYPE_LEVEL_HIGH:\n                return MPIC_INFO(VECPRI_SENSE_LEVEL) |\n                       MPIC_INFO(VECPRI_POLARITY_POSITIVE);\n        case IRQ_TYPE_LEVEL_LOW:\n        default:\n                return MPIC_INFO(VECPRI_SENSE_LEVEL) |\n                       MPIC_INFO(VECPRI_POLARITY_NEGATIVE);\n        }\n}\n\nIf IRQ_TYPE_EDGE_BOTH is unsupported, shouldn't we be returning an\nerror, instead of silently setting to use IRQ_TYPE_EDGE_FALLING?\nSomething like the following (sorry if the diff wraps weirdly, on\nwebmail at the moment):\n\n----8<----\n        /* We don't support \"none\" type */\n---->8----\n\nThanks,\nGregory","diff":"diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c\nindex b9aac95..5867ea2 100644\n--- a/arch/powerpc/sysdev/mpic.c\n+++ b/arch/powerpc/sysdev/mpic.c\n@@ -876,6 +876,9 @@ int mpic_set_irq_type(struct irq_data *d, unsigned\nint flow_type)\n        if (src >= mpic->num_sources)\n                return -EINVAL;\n\n+       if (flow_type & IRQ_TYPE_SENSE_MASK == IRQ_TYPE_EDGE_BOTH)\n+               return -EINVAL;\n+\n        vold = mpic_irq_read(src, MPIC_INFO(IRQ_VECTOR_PRI));\n\n","prefixes":[]}