Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3216925pxu; Sun, 29 Nov 2020 19:27:21 -0800 (PST) X-Google-Smtp-Source: ABdhPJzsYgRYMipYBsNtaJTzb+iblNLK3nXZk9jlf2349Tyw0zZl+lXpaMHFSpqc16eal++VBgDL X-Received: by 2002:aa7:dd52:: with SMTP id o18mr4088635edw.177.1606706840836; Sun, 29 Nov 2020 19:27:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606706840; cv=none; d=google.com; s=arc-20160816; b=aLRXBN1kqYEcR3HvoIsjMBQF/5y5OVnH5CjVEe3zuzN7APscz736EIgG35Lo4paLhL lDZsjBxa0JWAw4WdE069PO/Jf4ANEKCURvDkS0b0GJ84jZzlTK8XqenaQcHqTx4A3hCe uySq+UwFT6OFfe61VdqMwpg9D7r+THxNg6LiaeERB5rZjwec+dsI8+019mmqn3mi5je9 qD5h0JYMnc/wyo6tgW3zo8Aaryfc+tNw3irUHCtsJbSMrLVbijp+m35auMa5RFK+g/2T bZU9a+84LIirmEuIXADOuh9cHVqECLk4ch9QWjmSSLQe9Lnz2qLLoL0NWXGSiEcdRIXh Z32Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=TKrLFKVmrANVUypPpppWVA6xwc3xboJ77IoHz1C4P44=; b=devO6bK8eZFh82J9kUj7L+qeCoogQh1S3NeXTvseEcvE4tAxx86J2F8lGrR6DBeipC ePk84G1ET0jMqR7/ix9Vpy3CeoiZu4ISK4TvJZrhmPO/rdxDNZV35a/t7N48lEl0Yl7Y HLgtoiZ1Ih+1sm1ypF+jGbPNHvzwH9IuXHDFyP1BS7sQE0N810nAWYzbAyiezs2pvZQz 7BHemLTLrN3IDJwDrG77/vc+Q1pRfwAFpTjpxqpEf6+caF8Y2LHIMf8+0OCuKEsk/5f0 5yluznaN5lI3mdxtUiXLJxVn//R67YbxIzuq8bMyp1c2HBVhqVRE4PKT3qAWfVU/1Vrn EcDw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ch11si3340917edb.384.2020.11.29.19.26.58; Sun, 29 Nov 2020 19:27:20 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726969AbgK3DXm (ORCPT + 99 others); Sun, 29 Nov 2020 22:23:42 -0500 Received: from inva020.nxp.com ([92.121.34.13]:33518 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726811AbgK3DXm (ORCPT ); Sun, 29 Nov 2020 22:23:42 -0500 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id D34FE1A084B; Mon, 30 Nov 2020 04:22:54 +0100 (CET) Received: from invc005.ap-rdc01.nxp.com (invc005.ap-rdc01.nxp.com [165.114.16.14]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id ADC211A085A; Mon, 30 Nov 2020 04:22:48 +0100 (CET) Received: from localhost.localdomain (mega.ap.freescale.net [10.192.208.232]) by invc005.ap-rdc01.nxp.com (Postfix) with ESMTP id 234BD402B6; Mon, 30 Nov 2020 04:22:41 +0100 (CET) From: Biwen Li To: linux@rasmusvillemoes.dk, shawnguo@kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, leoyang.li@nxp.com, zhiqiang.hou@nxp.com, tglx@linutronix.de, jason@lakedaemon.net, maz@kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, jiafei.pan@nxp.com, xiaobo.xie@nxp.com, linux-arm-kernel@lists.infradead.org, Hou Zhiqiang , Biwen Li Subject: [v3 01/11] irqchip: ls-extirq: Add LS1043A, LS1088A external interrupt Date: Mon, 30 Nov 2020 11:30:45 +0800 Message-Id: <20201130033055.38462-1-biwen.li@oss.nxp.com> X-Mailer: git-send-email 2.17.1 X-Virus-Scanned: ClamAV using ClamSMTP Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Hou Zhiqiang Add an new IRQ chip declaration for LS1043A and LS1088A - compatible "fsl,ls1043a-extirq" for LS1043A, LS1046A. - compatible "fsl,ls1088a-extirq" for LS1088A, LS208xA, LX216xA Signed-off-by: Hou Zhiqiang Signed-off-by: Biwen Li --- Change in v3: - cleanup code - remove robust copyright Change in v2: - add despcription of bit reverse - update copyright drivers/irqchip/irq-ls-extirq.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/irqchip/irq-ls-extirq.c b/drivers/irqchip/irq-ls-extirq.c index 4d1179fed77c..47804ce78b21 100644 --- a/drivers/irqchip/irq-ls-extirq.c +++ b/drivers/irqchip/irq-ls-extirq.c @@ -18,7 +18,7 @@ struct ls_extirq_data { struct regmap *syscon; u32 intpcr; - bool bit_reverse; + bool is_ls1021a_or_ls1043a; u32 nirq; struct irq_fwspec map[MAXIRQ]; }; @@ -30,7 +30,7 @@ ls_extirq_set_type(struct irq_data *data, unsigned int type) irq_hw_number_t hwirq = data->hwirq; u32 value, mask; - if (priv->bit_reverse) + if (priv->is_ls1021a_or_ls1043a) mask = 1U << (31 - hwirq); else mask = 1U << hwirq; @@ -174,14 +174,9 @@ ls_extirq_of_init(struct device_node *node, struct device_node *parent) if (ret) goto out; - if (of_device_is_compatible(node, "fsl,ls1021a-extirq")) { - u32 revcr; - - ret = regmap_read(priv->syscon, LS1021A_SCFGREVCR, &revcr); - if (ret) - goto out; - priv->bit_reverse = (revcr != 0); - } + if (of_device_is_compatible(node, "fsl,ls1021a-extirq") || \ + of_device_is_compatible(node, "fsl,ls1043a-extirq")) + priv->is_ls1021a_or_ls1043a = true; domain = irq_domain_add_hierarchy(parent_domain, 0, priv->nirq, node, &extirq_domain_ops, priv); @@ -195,3 +190,5 @@ ls_extirq_of_init(struct device_node *node, struct device_node *parent) } IRQCHIP_DECLARE(ls1021a_extirq, "fsl,ls1021a-extirq", ls_extirq_of_init); +IRQCHIP_DECLARE(ls1043a_extirq, "fsl,ls1043a-extirq", ls_extirq_of_init); +IRQCHIP_DECLARE(ls1088a_extirq, "fsl,ls1088a-extirq", ls_extirq_of_init); -- 2.17.1