Thomas Gleixner
d2912cb15b
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
...
Based on 2 normalized pattern(s):
this program is free software you can redistribute it and or modify
it under the terms of the gnu general public license version 2 as
published by the free software foundation
this program is free software you can redistribute it and or modify
it under the terms of the gnu general public license version 2 as
published by the free software foundation #
extracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference in 4122 file(s).
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Reviewed-by: Enrico Weigelt <info@metux.net >
Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org >
Reviewed-by: Allison Randal <allison@lohutok.net >
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2019-06-19 17:09:55 +02:00
Lucas Stach
8ca66b7ccf
irqchip/irq-imx-gpcv2: Add IRQCHIP_DECLARE for i.MX8MQ compatible
...
The GPC node on i.MX8MQ can not claim to be compatible with the i.MX7D
GPC, as the power gating part has some significant differences. Thus we
can not rely on the irqchip being probed with the old compatible.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-18 12:59:18 +00:00
Marc Zyngier
893b0aff9a
irqchip/irq-imx-gpcv2: Silence "fall through" warning
...
The -Wimplicit-fallthrough option requires that the /* fall through */
comment is placed in the 'case' statement that falls through, rather
than in the following one. Case seems to matter as well.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-15 09:10:46 +00:00
Andrey Smirnov
ed01edc0ab
irqchip/irq-imx-gpcv2: Add support for i.MX8MQ
...
Add code needed to support i.MX8MQ.
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: cphealy@gmail.com
Cc: l.stach@pengutronix.de
Cc: Leonard Crestez <leonard.crestez@nxp.com >
Cc: "A.s. Dong" <aisheng.dong@nxp.com >
Cc: Richard Zhu <hongxing.zhu@nxp.com >
Cc: linux-imx@nxp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-13 09:35:55 +00:00
Andrey Smirnov
fb7348abb1
irqchip/irq-imx-gpcv2: Make error messages more consistent
...
Make error messages more consistent by making sure each starts with
"%pOF:".
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: cphealy@gmail.com
Cc: l.stach@pengutronix.de
Cc: Leonard Crestez <leonard.crestez@nxp.com >
Cc: "A.s. Dong" <aisheng.dong@nxp.com >
Cc: Richard Zhu <hongxing.zhu@nxp.com >
Cc: linux-imx@nxp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-13 09:35:55 +00:00
Andrey Smirnov
f2dace5f97
irqchip/irq-imx-gpcv2: Make use of BIT() macro
...
Convert all instances of 1 << x to BIT(x) for consistency with other
kernel code.
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: cphealy@gmail.com
Cc: l.stach@pengutronix.de
Cc: Leonard Crestez <leonard.crestez@nxp.com >
Cc: "A.s. Dong" <aisheng.dong@nxp.com >
Cc: Richard Zhu <hongxing.zhu@nxp.com >
Cc: linux-imx@nxp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-13 09:35:55 +00:00
Andrey Smirnov
bd654fb67a
irqchip/irq-imx-gpcv2: Share reg offset calculation code
...
Move identical offset calculation code into a small helper function
and make use of it in the rest of the code.
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: cphealy@gmail.com
Cc: l.stach@pengutronix.de
Cc: Leonard Crestez <leonard.crestez@nxp.com >
Cc: "A.s. Dong" <aisheng.dong@nxp.com >
Cc: Richard Zhu <hongxing.zhu@nxp.com >
Cc: linux-imx@nxp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-13 09:35:54 +00:00
Andrey Smirnov
b87442b074
irqchip/irq-imx-gpcv2: Remove unused code
...
Varaible 'reg' in imx_gpcv2_irq_set_wake() has no users. Remove it.
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: cphealy@gmail.com
Cc: l.stach@pengutronix.de
Cc: Leonard Crestez <leonard.crestez@nxp.com >
Cc: "A.s. Dong" <aisheng.dong@nxp.com >
Cc: Richard Zhu <hongxing.zhu@nxp.com >
Cc: linux-imx@nxp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-12-13 09:35:54 +00:00
Fabio Estevam
61b8b22858
irqchip/irq-imx-gpcv2: Remove unused function
...
imx_gpcv2_get_wakeup_source() is not used anywhere, so remove it.
This fixes the following sparse warning:
drivers/irqchip/irq-imx-gpcv2.c:34:5: warning: symbol 'imx_gpcv2_get_wakeup_source' was not declared. Should it be static?
Fixes: e324c4dc4a
("irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources")
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2018-03-11 13:27:12 +00:00
Rob Herring
e81f54c668
irqchip: Convert to using %pOF instead of full_name
...
Now that we have a custom printf format specifier, convert users of
full_name to use %pOF instead. This is preparation to remove storing
of the full path string for each node.
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Lee Jones <lee@kernel.org >
Cc: Stefan Wahren <stefan.wahren@i2se.com >
Cc: Florian Fainelli <f.fainelli@gmail.com >
Cc: Ray Jui <rjui@broadcom.com >
Cc: Scott Branden <sbranden@broadcom.com >
Cc: bcm-kernel-feedback-list@broadcom.com
Cc: Sylvain Lemieux <slemieux.tyco@gmail.com >
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com >
Cc: Chen-Yu Tsai <wens@csie.org >
Cc: Thierry Reding <thierry.reding@gmail.com >
Cc: Jonathan Hunter <jonathanh@nvidia.com >
Cc: Michal Simek <michal.simek@xilinx.com >
Cc: "Sören Brinkmann" <soren.brinkmann@xilinx.com >
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
Acked-by: Eric Anholt <eric@anholt.net >
Acked-by: Baruch Siach <baruch@tkos.co.il >
Acked-by: Vladimir Zapolskiy <vz@mleia.com >
Acked-by: Matthias Brugger <matthias.bgg@gmail.com >
Acked-by: Alexandre Torgue <alexandre.torgue@st.com >
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com >
Signed-off-by: Rob Herring <robh@kernel.org >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2017-08-23 10:09:28 +01:00
Tobias Klauser
dcbbefceb2
irqchip/irq-imx-gpcv2: Constify irq_domain_ops
...
struct irq_domain_ops is not modified, so it can be made const.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2017-06-22 14:12:55 +01:00
Thomas Gleixner
7a258ff04f
Merge branch 'linus' into irq/core
...
Pick up upstream fixes to avoid conflicts with pending patches.
2017-04-20 16:05:13 +02:00
Tyler Baker
75eb5e1e7b
irqchip/irq-imx-gpcv2: Fix spinlock initialization
...
The raw_spinlock in the IMX GPCV2 interupt chip is not initialized before
usage. That results in a lockdep splat:
INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
Add the missing raw_spin_lock_init() to the setup code.
Fixes: e324c4dc4a
("irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources")
Signed-off-by: Tyler Baker <tyler.baker@linaro.org >
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com >
Cc: jason@lakedaemon.net
Cc: marc.zyngier@arm.com
Cc: shawnguo@kernel.org
Cc: andrew.smirnov@gmail.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: stable@vger.kernel.org
Link: http://lkml.kernel.org/r/20170413222731.5917-1-tyler.baker@linaro.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2017-04-14 10:55:05 +02:00
Andrey Smirnov
9d4b5bdc5b
irqchip/irq-imx-gpcv2: Clear OF_POPULATED flag
...
Clear OF_POPULATED flag, so that GPC power domain driver[1] can be
bound to "gpc" node as well.
[1] https://lkml.org/lkml/2017/3/28/835
Cc: yurovsky@gmail.com
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Jason Cooper <jason@lakedaemon.net >
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
2017-04-12 09:20:15 +01:00
Marc Zyngier
f833f57ff2
irqchip: Convert all alloc/xlate users from of_node to fwnode
...
Since we now have a generic data structure to express an
interrupt specifier, convert all hierarchical irqchips that
are OF based to use a fwnode_handle as part of their alloc
and xlate (which becomes translate) callbacks.
As most of these drivers have dependencies (they exchange IRQ
specifiers), change them all in a single, massive patch...
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
Reviewed-and-tested-by: Hanjun Guo <hanjun.guo@linaro.org >
Tested-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com >
Cc: <linux-arm-kernel@lists.infradead.org >
Cc: Tomasz Nowicki <tomasz.nowicki@linaro.org >
Cc: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com >
Cc: Graeme Gregory <graeme@xora.org.uk >
Cc: Jake Oshins <jakeo@microsoft.com >
Cc: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Link: http://lkml.kernel.org/r/1444737105-31573-6-git-send-email-marc.zyngier@arm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-10-13 19:01:23 +02:00
Marc Zyngier
5d4c9bc776
irqdomain: Use irq_domain_get_of_node() instead of direct field access
...
The struct irq_domain contains a "struct device_node *" field
(of_node) that is almost the only link between the irqdomain
and the device tree infrastructure.
In order to prepare for the removal of that field, convert all
users to use irq_domain_get_of_node() instead.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com >
Reviewed-and-tested-by: Hanjun Guo <hanjun.guo@linaro.org >
Tested-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com >
Cc: <linux-arm-kernel@lists.infradead.org >
Cc: Tomasz Nowicki <tomasz.nowicki@linaro.org >
Cc: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com >
Cc: Graeme Gregory <graeme@xora.org.uk >
Cc: Jake Oshins <jakeo@microsoft.com >
Cc: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Jason Cooper <jason@lakedaemon.net >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Link: http://lkml.kernel.org/r/1444737105-31573-2-git-send-email-marc.zyngier@arm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-10-13 19:01:23 +02:00
Shenwei Wang
e324c4dc4a
irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources
...
IMX7D contains a new version of GPC IP block (GPCv2). It has two major
functions: power management and wakeup source management.
When the system is in WFI (wait for interrupt) mode, the GPC block
will be the first block on the platform to be activated and signaled.
In normal wait mode during cpu idle, the system can be woken up by any
enabled interrupts. In standby or suspend mode, the system can only be
wokem up by the pre-defined wakeup sources.
Based-on-patch-by: Anson Huang <b20788@freescale.com >
Signed-off-by: Shenwei Wang <shenwei.wang@freescale.com >
Cc: <linux-arm-kernel@lists.infradead.org >
Cc: <shawn.guo@linaro.org >
Cc: <jason@lakedaemon.net >
Link: http://lkml.kernel.org/r/1440443055-7291-1-git-send-email-shenwei.wang@freescale.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-08-24 21:49:34 +02:00