From patchwork Thu Jun 14 05:27:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 138518 Delivered-To: patch@linaro.org Received: by 2002:a2e:970d:0:0:0:0:0 with SMTP id r13-v6csp1650202lji; Wed, 13 Jun 2018 22:28:54 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKLsSOTBIkJGePahdzsUPmHLLCDXd5Li1pEMf7ls+PJEUpGH5kg7elg8XOrkZS65XyOVvmW X-Received: by 2002:a17:902:7293:: with SMTP id d19-v6mr1344000pll.142.1528954134643; Wed, 13 Jun 2018 22:28:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528954134; cv=none; d=google.com; s=arc-20160816; b=tuhLl/Q1eaL34h0BC4YJw8bpvEiQT7wTtjmq9rQ36Ah7DU+bjCE9jOneIBaDXmpgC4 3RMqIdIU9YukrZdnu+0CeEwgWffPON+Dx4Qn/+MkwhkrkE6xqLSQy5yWLq0TWaiJ7lSU UfNXLa0STfueuFfJaTBQ8lT7113Dg8oueA9Kf1L8lp47mF5LaS6+anDTr2FleCJWCppa 3runIdRbVCesMd31tHA0u2Gru52Y9cdlzLoNuuiRGWZRxSK4DzPvDHZyL37aMM/Sie6J wqkJBr+A3D/HwT+KnRZqdVMANHRKatn/9566+1SSl2hVDYWAiyl+4sLH9tGoHLDrgLPb LN2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:dkim-filter:arc-authentication-results; bh=eqYtAnV/+K9nYMuCa/VpRmWKdlqJ+MYvrJcN4pfytH0=; b=ZM8KKpzi+WtAIkU6QeRUT1n29MhQ9uav85+Ujh7fA4M3Edv5rzJaXPKiz9SBqTdfnl ORXYTVeZpE0KiEz91znYn2y1VSUJqjmRujNiCYc8zKYPx4rg4L0mgTH1qrOQGfob9bRX aTMcuv2cpn9l4mImYsRBApBlxXGaigit/i1Z64dQeSHFehtGi/GxPvt5s/fkGeADuQXw QxhnefavFo2BrwxpzW7CY6dt8zgUixqXuNWlzG5lm/eVrS1yKNfO/9JdurYWiKvZcToi kmxDbg+Cf0eGU9i2uQQ5VpmoAg7MXdF9lZG/eZQQLJYB/7/1Q5YiKsBeB4dsZ09sPszi YcAA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=SSlY01Q0; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n1-v6si4307745pfd.128.2018.06.13.22.28.54; Wed, 13 Jun 2018 22:28:54 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=SSlY01Q0; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752654AbeFNF2w (ORCPT + 30 others); Thu, 14 Jun 2018 01:28:52 -0400 Received: from conuserg-08.nifty.com ([210.131.2.75]:18255 "EHLO conuserg-08.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751455AbeFNF2v (ORCPT ); Thu, 14 Jun 2018 01:28:51 -0400 Received: from pug.e01.socionext.com (p14092-ipngnfx01kyoto.kyoto.ocn.ne.jp [153.142.97.92]) (authenticated) by conuserg-08.nifty.com with ESMTP id w5E5RuGd013676; Thu, 14 Jun 2018 14:27:57 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-08.nifty.com w5E5RuGd013676 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1528954077; bh=eqYtAnV/+K9nYMuCa/VpRmWKdlqJ+MYvrJcN4pfytH0=; h=From:To:Cc:Subject:Date:From; b=SSlY01Q0hFe8Q4dSsFuGlGrcMA4+EIFidmDrteSTfoPI4BvHfgYdUuhKvQoQCFRIt P8GOgVniuU14TRAiJWcxhLmqKFefPKSGLez+g6kP3OwNmWbJplJzANXyN35U08exsk XNmrHHiBqK6IgivAbzaNZR1u4e3mh/u9J8yWG3Z0r6xtnsYBtrL//t8M1WcLDPK6xh i3RBW0Zd5pIHmDJQ24UUXVDEQtAwOStnt7s39P1W1dzK7Gakk+or70WxlU7iwUAStZ mrkEO2Lfn62jmhuaWo8lWl8Jmer8L5hKFrCcgOJ0KuKNrH/Jecs2LEtZ6PwxGjiipP 9Q/hHEsmHc0IA== X-Nifty-SrcIP: [153.142.97.92] From: Masahiro Yamada To: linux-gpio@vger.kernel.org, Linus Walleij Cc: Masami Hiramatsu , Jassi Brar , Katsuhiro Suzuki , Masahiro Yamada , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] gpio: uniphier: set legitimate irq trigger type in .to_irq hook Date: Thu, 14 Jun 2018 14:27:45 +0900 Message-Id: <1528954065-25563-1-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If a GPIO chip is a part of a hierarchy IRQ domain, there is no way to specify the trigger type when gpio(d)_to_irq() allocates an interrupt on-the-fly. Currently, uniphier_gpio_to_irq() sets IRQ_TYPE_NONE, but it causes an error in the .alloc() hook of the parent domain. (drivers/irq/irq-uniphier-aidet.c) Even if we change irq-uniphier-aidet.c to accept the NONE type, GIC complains about it since commit 83a86fbb5b56 ("irqchip/gic: Loudly complain about the use of IRQ_TYPE_NONE"). Instead, use IRQ_TYPE_LEVEL_HIGH as a temporary value when an irq is allocated. irq_set_irq_type() will override it when the irq is really requested. Fixes: dbe776c2ca54 ("gpio: uniphier: add UniPhier GPIO controller driver") Reported-by: Katsuhiro Suzuki Signed-off-by: Masahiro Yamada Tested-by: Katsuhiro Suzuki --- drivers/gpio/gpio-uniphier.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) -- 2.7.4 diff --git a/drivers/gpio/gpio-uniphier.c b/drivers/gpio/gpio-uniphier.c index d3cf950..58faeb1 100644 --- a/drivers/gpio/gpio-uniphier.c +++ b/drivers/gpio/gpio-uniphier.c @@ -181,7 +181,11 @@ static int uniphier_gpio_to_irq(struct gpio_chip *chip, unsigned int offset) fwspec.fwnode = of_node_to_fwnode(chip->parent->of_node); fwspec.param_count = 2; fwspec.param[0] = offset - UNIPHIER_GPIO_IRQ_OFFSET; - fwspec.param[1] = IRQ_TYPE_NONE; + /* + * IRQ_TYPE_NONE is rejected by the parent irq domain. Set LEVEL_HIGH + * temporarily. Anyway, ->irq_set_type() will override it later. + */ + fwspec.param[1] = IRQ_TYPE_LEVEL_HIGH; return irq_create_fwspec_mapping(&fwspec); }