[PATCH v5 21/37] irqchip: move Ingenic SoC intc driver to drivers/irqchip

From: Paul Burton
Date: Sun May 24 2015 - 11:23:51 EST


Move the driver for Ingenic SoC interrupt controllers into
drivers/irqchip where it belongs.

Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
Cc: Lars-Peter Clausen <lars@xxxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
Cc: linux-mips@xxxxxxxxxxxxxx
---

Changes in v5: None
Changes in v4: None
Changes in v3:
- New patch.

Changes in v2: None

arch/mips/jz4740/Makefile | 2 +-
arch/mips/jz4740/gpio.c | 3 +--
drivers/irqchip/Kconfig | 5 +++++
drivers/irqchip/Makefile | 1 +
arch/mips/jz4740/irq.c => drivers/irqchip/irq-ingenic.c | 5 ++---
arch/mips/jz4740/irq.h => include/linux/irqchip/ingenic.h | 4 ++--
6 files changed, 12 insertions(+), 8 deletions(-)
rename arch/mips/jz4740/irq.c => drivers/irqchip/irq-ingenic.c (98%)
rename arch/mips/jz4740/irq.h => include/linux/irqchip/ingenic.h (90%)

diff --git a/arch/mips/jz4740/Makefile b/arch/mips/jz4740/Makefile
index 28e5535..6cf5dd4 100644
--- a/arch/mips/jz4740/Makefile
+++ b/arch/mips/jz4740/Makefile
@@ -4,7 +4,7 @@

# Object file lists.

-obj-y += prom.o irq.o time.o reset.o setup.o \
+obj-y += prom.o time.o reset.o setup.o \
gpio.o clock.o platform.o timer.o serial.o

obj-$(CONFIG_DEBUG_FS) += clock-debugfs.o
diff --git a/arch/mips/jz4740/gpio.c b/arch/mips/jz4740/gpio.c
index 994a7df..54c80d4 100644
--- a/arch/mips/jz4740/gpio.c
+++ b/arch/mips/jz4740/gpio.c
@@ -21,6 +21,7 @@
#include <linux/gpio.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
+#include <linux/irqchip/ingenic.h>
#include <linux/bitops.h>

#include <linux/debugfs.h>
@@ -28,8 +29,6 @@

#include <asm/mach-jz4740/base.h>

-#include "irq.h"
-
#define JZ4740_GPIO_BASE_A (32*0)
#define JZ4740_GPIO_BASE_B (32*1)
#define JZ4740_GPIO_BASE_C (32*2)
diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 6de62a9..1378aca 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -158,3 +158,8 @@ config KEYSTONE_IRQ
config MIPS_GIC
bool
select MIPS_CM
+
+config INGENIC_IRQ
+ bool
+ depends on MACH_INGENIC
+ default y
diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile
index dda4927..982eb84 100644
--- a/drivers/irqchip/Makefile
+++ b/drivers/irqchip/Makefile
@@ -47,3 +47,4 @@ obj-$(CONFIG_KEYSTONE_IRQ) += irq-keystone.o
obj-$(CONFIG_MIPS_GIC) += irq-mips-gic.o
obj-$(CONFIG_ARCH_MEDIATEK) += irq-mtk-sysirq.o
obj-$(CONFIG_ARCH_DIGICOLOR) += irq-digicolor.o
+obj-$(CONFIG_INGENIC_IRQ) += irq-ingenic.o
diff --git a/arch/mips/jz4740/irq.c b/drivers/irqchip/irq-ingenic.c
similarity index 98%
rename from arch/mips/jz4740/irq.c
rename to drivers/irqchip/irq-ingenic.c
index 64b4c36..005de3f 100644
--- a/arch/mips/jz4740/irq.c
+++ b/drivers/irqchip/irq-ingenic.c
@@ -18,6 +18,7 @@
#include <linux/types.h>
#include <linux/interrupt.h>
#include <linux/ioport.h>
+#include <linux/irqchip/ingenic.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/timex.h>
@@ -27,9 +28,7 @@
#include <asm/io.h>
#include <asm/mach-jz4740/irq.h>

-#include "irq.h"
-
-#include "../../drivers/irqchip/irqchip.h"
+#include "irqchip.h"

struct ingenic_intc_data {
void __iomem *base;
diff --git a/arch/mips/jz4740/irq.h b/include/linux/irqchip/ingenic.h
similarity index 90%
rename from arch/mips/jz4740/irq.h
rename to include/linux/irqchip/ingenic.h
index 601d527..0ee319a 100644
--- a/arch/mips/jz4740/irq.h
+++ b/include/linux/irqchip/ingenic.h
@@ -12,8 +12,8 @@
*
*/

-#ifndef __MIPS_JZ4740_IRQ_H__
-#define __MIPS_JZ4740_IRQ_H__
+#ifndef __LINUX_IRQCHIP_INGENIC_H__
+#define __LINUX_IRQCHIP_INGENIC_H__

#include <linux/irq.h>

--
2.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/