All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Ianovich <ynvich@gmail.com>
To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Cc: Sergei Ianovich <ynvich@gmail.com>, Arnd Bergmann <arnd@arndb.de>,
	Linus Walleij <linus.walleij@linaro.org>,
	Rob Herring <rob.herring@calxeda.com>,
	Pawel Moll <pawel.moll@arm.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>, Rob Landley <rob@landley.net>,
	Russell King <linux@arm.linux.org.uk>,
	Thomas Gleixner <tglx@linutronix.de>,
	Grant Likely <grant.likely@linaro.org>,
	devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND...),
	linux-doc@vger.kernel.org (open list:DOCUMENTATION)
Subject: [PATCH v3 11/21] ARM: pxa: support ICP DAS LP-8x4x FPGA irq
Date: Tue, 17 Dec 2013 23:37:41 +0400	[thread overview]
Message-ID: <1387309071-22382-12-git-send-email-ynvich@gmail.com> (raw)
In-Reply-To: <1387309071-22382-1-git-send-email-ynvich@gmail.com>

ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
source providing 16 additional interrupts among other things. The
interrupt lines are muxed to a GPIO pin. GPIO pins are in turn muxed
to a CPU interrupt line.

Until pxa is completely converted to device tree, it is impossible
to use IRQCHIP_DECLARE() and the irqdomain needs to added manually.

Signed-off-by: Sergei Ianovich <ynvich@gmail.com>
CC: Arnd Bergmann <arnd@arndb.de>
CC: Linus Walleij <linus.walleij@linaro.org>
---
   v2..v3
   * no changes (except number 09/16 -> 10/21)

   v0..v2
   * extract irqchip and move to drivers/irqchip/
   * use device tree
   * use devm helpers where possible

 .../bindings/interrupt-controller/irq-lp8x4x.txt   |  49 +++++
 arch/arm/boot/dts/pxa27x-lp8x4x.dts                |  10 +
 drivers/irqchip/Kconfig                            |   5 +
 drivers/irqchip/Makefile                           |   1 +
 drivers/irqchip/irq-lp8x4x.c                       | 205 +++++++++++++++++++++
 5 files changed, 270 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
 create mode 100644 drivers/irqchip/irq-lp8x4x.c

diff --git a/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
new file mode 100644
index 0000000..c8940d2
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
@@ -0,0 +1,49 @@
+ICP DAS LP-8x4x FPGA Interrupt Controller
+
+ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
+source providing 16 additional interrupts among other things.
+
+Required properties:
+- compatible : should be "icpdas,irq-lp8x4x"
+
+- reg: physical base address of the controller and length of memory mapped
+  region.
+
+- interrupt-controller : identifies the node as an interrupt controller
+
+- #interrupt-cells : should be 1
+
+- interrupts : should provide interrupt
+
+- interrupt-parent : should provide a link to interrupt controller either
+		     explicitly and implicitly from a parent node
+
+Example:
+
+	fpga: fpga@17000006 {
+		compatible = "icpdas,irq-lp8x4x";
+		reg = <0x17000006 0x16>;
+		interrupt-parent = <&gpio>;
+		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
+		#interrupt-cells = <1>;
+		interrupt-controller;
+		status = "okay";
+	};
+
+	uart@17009050 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009050 0x10
+		       0x17009030 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <13>;
+		status = "okay";
+	};
+
+	uart@17009060 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009060 0x10
+		       0x17009032 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <14>;
+		status = "okay";
+	};
diff --git a/arch/arm/boot/dts/pxa27x-lp8x4x.dts b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
index 07856e0..78dfd2e 100644
--- a/arch/arm/boot/dts/pxa27x-lp8x4x.dts
+++ b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
@@ -167,6 +167,16 @@
 				reg = <0xa000 0x1000
 				       0x901e 0x1>;
 			};
+
+			fpgairq: irq@9006 {
+				compatible = "icpdas,irq-lp8x4x";
+				reg = <0x9006 0x16>;
+				interrupt-parent = <&gpio>;
+				interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
+				#interrupt-cells = <1>;
+				interrupt-controller;
+				status = "okay";
+			};
 		};
 	};
 };
diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 3792a1a..7e22729 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -35,6 +35,11 @@ config IMGPDC_IRQ
 	select GENERIC_IRQ_CHIP
 	select IRQ_DOMAIN
 
+config LP8X4X_IRQ
+	bool
+	depends on OF
+	select IRQ_DOMAIN
+
 config ORION_IRQCHIP
 	bool
 	select IRQ_DOMAIN
diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile
index c60b901..8a28927 100644
--- a/drivers/irqchip/Makefile
+++ b/drivers/irqchip/Makefile
@@ -22,3 +22,4 @@ obj-$(CONFIG_RENESAS_IRQC)		+= irq-renesas-irqc.o
 obj-$(CONFIG_VERSATILE_FPGA_IRQ)	+= irq-versatile-fpga.o
 obj-$(CONFIG_ARCH_VT8500)		+= irq-vt8500.o
 obj-$(CONFIG_TB10X_IRQC)		+= irq-tb10x.o
+obj-$(CONFIG_LP8X4X_IRQ)		+= irq-lp8x4x.o
diff --git a/drivers/irqchip/irq-lp8x4x.c b/drivers/irqchip/irq-lp8x4x.c
new file mode 100644
index 0000000..5d44880b
--- /dev/null
+++ b/drivers/irqchip/irq-lp8x4x.c
@@ -0,0 +1,205 @@
+/*
+ *  linux/drivers/irqchip/irq-lp8x4x.c
+ *
+ *  Support for ICP DAS LP-8x4x FPGA irq
+ *  Copyright (C) 2013 Sergei Ianovich <ynvich@gmail.com>
+ *
+ *  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 or any later version.
+ */
+#include <linux/interrupt.h>
+#include <linux/io.h>
+#include <linux/irq.h>
+#include <linux/irqdomain.h>
+#include <linux/irqchip/chained_irq.h>
+#include <linux/of.h>
+#include <linux/platform_device.h>
+
+#define EOI			0x00000000
+#define INSINT			0x00000002
+#define ENSYSINT		0x00000004
+#define PRIMINT			0x00000006
+#define SECOINT			0x00000008
+#define ENRISEINT		0x0000000A
+#define CLRRISEINT		0x0000000C
+#define ENHILVINT		0x0000000E
+#define CLRHILVINT		0x00000010
+#define ENFALLINT		0x00000012
+#define CLRFALLINT		0x00000014
+#define LP8X4X_IRQ_MEM_SIZE	0x00000016
+
+static unsigned char irq_sys_enabled;
+static unsigned char irq_high_enabled;
+static void *base;
+static int irq_base;
+static int num_irq = 16;
+
+static void lp8x4x_mask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("lp8x4x: wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENHILVINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENSYSINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static void lp8x4x_unmask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled |= 1 << irq;
+		mask = ioread8(base + CLRHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + CLRHILVINT);
+
+		mask = ioread8(base + ENHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled |= 1 << irq;
+
+		mask = ioread8(base + SECOINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + SECOINT);
+
+		mask = ioread8(base + ENSYSINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static struct irq_chip lp8x4x_irq_chip = {
+	.name			= "FPGA",
+	.irq_ack		= lp8x4x_mask_irq,
+	.irq_mask		= lp8x4x_mask_irq,
+	.irq_mask_ack		= lp8x4x_mask_irq,
+	.irq_unmask		= lp8x4x_unmask_irq,
+};
+
+static void lp8x4x_irq_handler(unsigned int irq, struct irq_desc *desc)
+{
+	int loop, n;
+	unsigned long mask;
+	struct irq_chip *chip = irq_desc_get_chip(desc);
+
+	chained_irq_enter(chip, desc);
+
+	do {
+		loop = 0;
+		mask = ioread8(base + CLRHILVINT) & 0xff;
+		mask |= (ioread8(base + SECOINT) & 0x1f) << 8;
+		mask |= (ioread8(base + PRIMINT) & 0xe0) << 8;
+		mask &= (irq_high_enabled | (irq_sys_enabled << 8));
+		for_each_set_bit(n, &mask, BITS_PER_LONG) {
+			loop = 1;
+
+			generic_handle_irq(irq_base + n);
+		}
+	} while (loop);
+
+	iowrite8(0, base + EOI);
+	chained_irq_exit(chip, desc);
+}
+
+static int lp8x4x_irq_domain_map(struct irq_domain *d, unsigned int irq,
+				 irq_hw_number_t hw)
+{
+	irq_set_chip_and_handler(irq, &lp8x4x_irq_chip,
+				 handle_level_irq);
+	set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
+	return 0;
+}
+
+const struct irq_domain_ops lp8x4x_irq_domain_ops = {
+	.map	= lp8x4x_irq_domain_map,
+	.xlate	= irq_domain_xlate_onecell,
+};
+
+static struct of_device_id lp8x4x_irq_dt_ids[] = {
+	{ .compatible = "icpdas,irq-lp8x4x", },
+	{}
+};
+
+static int lp8x4x_irq_probe(struct platform_device *pdev)
+{
+	struct resource *rm, *ri;
+	struct device_node *np = pdev->dev.of_node;
+	struct irq_domain *domain;
+
+	rm = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	ri = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
+	if (!rm || !ri || resource_size(rm) < LP8X4X_IRQ_MEM_SIZE)
+		return -ENODEV;
+
+	base = devm_ioremap_resource(&pdev->dev, rm);
+	if (!base) {
+		dev_err(&pdev->dev, "Failed to ioremap %p\n", base);
+		return -EFAULT;
+	}
+
+	irq_base = irq_alloc_descs(-1, 0, num_irq, 0);
+	if (irq_base < 0) {
+		dev_err(&pdev->dev, "Failed to allocate IRQ numbers\n");
+		return irq_base;
+	}
+
+	domain = irq_domain_add_legacy(np, num_irq, irq_base, 0,
+				       &lp8x4x_irq_domain_ops, NULL);
+	if (!domain) {
+		dev_err(&pdev->dev, "Failed to add IRQ domain\n");
+		return -ENOMEM;
+	}
+
+	iowrite8(0, base + CLRRISEINT);
+	iowrite8(0, base + ENRISEINT);
+	iowrite8(0, base + CLRFALLINT);
+	iowrite8(0, base + ENFALLINT);
+	iowrite8(0, base + CLRHILVINT);
+	iowrite8(0, base + ENHILVINT);
+	iowrite8(0, base + ENSYSINT);
+	iowrite8(0, base + SECOINT);
+
+	irq_set_chained_handler(ri->start, lp8x4x_irq_handler);
+
+	return 0;
+}
+
+static struct platform_driver lp8x4x_irq_driver = {
+	.probe		= lp8x4x_irq_probe,
+	.driver		= {
+		.name	= "irq-lp8x4x",
+		.of_match_table = lp8x4x_irq_dt_ids,
+	},
+};
+
+static int __init lp8x4x_irq_init(void)
+{
+	return platform_driver_register(&lp8x4x_irq_driver);
+}
+postcore_initcall(lp8x4x_irq_init);
-- 
1.8.4.2


WARNING: multiple messages have this Message-ID (diff)
From: Sergei Ianovich <ynvich@gmail.com>
To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Cc: Sergei Ianovich <ynvich@gmail.com>, Arnd Bergmann <arnd@arndb.de>,
	Linus Walleij <linus.walleij@linaro.org>,
	Rob Herring <rob.herring@calxeda.com>,
	Pawel Moll <pawel.moll@arm.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>, Rob Landley <rob@landley.net>,
	Russell King <linux@arm.linux.org.uk>,
	Thomas Gleixner <tglx@linutronix.de>,
	Grant Likely <grant.likely@linaro.org>,
	"open list:OPEN FIRMWARE AND..." <devicetree@vger.kernel.org>,
	"open list:DOCUMENTATION" <linux-doc@vger.kernel.org>
Subject: [PATCH v3 11/21] ARM: pxa: support ICP DAS LP-8x4x FPGA irq
Date: Tue, 17 Dec 2013 23:37:41 +0400	[thread overview]
Message-ID: <1387309071-22382-12-git-send-email-ynvich@gmail.com> (raw)
In-Reply-To: <1387309071-22382-1-git-send-email-ynvich@gmail.com>

ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
source providing 16 additional interrupts among other things. The
interrupt lines are muxed to a GPIO pin. GPIO pins are in turn muxed
to a CPU interrupt line.

Until pxa is completely converted to device tree, it is impossible
to use IRQCHIP_DECLARE() and the irqdomain needs to added manually.

Signed-off-by: Sergei Ianovich <ynvich@gmail.com>
CC: Arnd Bergmann <arnd@arndb.de>
CC: Linus Walleij <linus.walleij@linaro.org>
---
   v2..v3
   * no changes (except number 09/16 -> 10/21)

   v0..v2
   * extract irqchip and move to drivers/irqchip/
   * use device tree
   * use devm helpers where possible

 .../bindings/interrupt-controller/irq-lp8x4x.txt   |  49 +++++
 arch/arm/boot/dts/pxa27x-lp8x4x.dts                |  10 +
 drivers/irqchip/Kconfig                            |   5 +
 drivers/irqchip/Makefile                           |   1 +
 drivers/irqchip/irq-lp8x4x.c                       | 205 +++++++++++++++++++++
 5 files changed, 270 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
 create mode 100644 drivers/irqchip/irq-lp8x4x.c

diff --git a/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
new file mode 100644
index 0000000..c8940d2
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
@@ -0,0 +1,49 @@
+ICP DAS LP-8x4x FPGA Interrupt Controller
+
+ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
+source providing 16 additional interrupts among other things.
+
+Required properties:
+- compatible : should be "icpdas,irq-lp8x4x"
+
+- reg: physical base address of the controller and length of memory mapped
+  region.
+
+- interrupt-controller : identifies the node as an interrupt controller
+
+- #interrupt-cells : should be 1
+
+- interrupts : should provide interrupt
+
+- interrupt-parent : should provide a link to interrupt controller either
+		     explicitly and implicitly from a parent node
+
+Example:
+
+	fpga: fpga@17000006 {
+		compatible = "icpdas,irq-lp8x4x";
+		reg = <0x17000006 0x16>;
+		interrupt-parent = <&gpio>;
+		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
+		#interrupt-cells = <1>;
+		interrupt-controller;
+		status = "okay";
+	};
+
+	uart@17009050 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009050 0x10
+		       0x17009030 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <13>;
+		status = "okay";
+	};
+
+	uart@17009060 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009060 0x10
+		       0x17009032 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <14>;
+		status = "okay";
+	};
diff --git a/arch/arm/boot/dts/pxa27x-lp8x4x.dts b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
index 07856e0..78dfd2e 100644
--- a/arch/arm/boot/dts/pxa27x-lp8x4x.dts
+++ b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
@@ -167,6 +167,16 @@
 				reg = <0xa000 0x1000
 				       0x901e 0x1>;
 			};
+
+			fpgairq: irq@9006 {
+				compatible = "icpdas,irq-lp8x4x";
+				reg = <0x9006 0x16>;
+				interrupt-parent = <&gpio>;
+				interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
+				#interrupt-cells = <1>;
+				interrupt-controller;
+				status = "okay";
+			};
 		};
 	};
 };
diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 3792a1a..7e22729 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -35,6 +35,11 @@ config IMGPDC_IRQ
 	select GENERIC_IRQ_CHIP
 	select IRQ_DOMAIN
 
+config LP8X4X_IRQ
+	bool
+	depends on OF
+	select IRQ_DOMAIN
+
 config ORION_IRQCHIP
 	bool
 	select IRQ_DOMAIN
diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile
index c60b901..8a28927 100644
--- a/drivers/irqchip/Makefile
+++ b/drivers/irqchip/Makefile
@@ -22,3 +22,4 @@ obj-$(CONFIG_RENESAS_IRQC)		+= irq-renesas-irqc.o
 obj-$(CONFIG_VERSATILE_FPGA_IRQ)	+= irq-versatile-fpga.o
 obj-$(CONFIG_ARCH_VT8500)		+= irq-vt8500.o
 obj-$(CONFIG_TB10X_IRQC)		+= irq-tb10x.o
+obj-$(CONFIG_LP8X4X_IRQ)		+= irq-lp8x4x.o
diff --git a/drivers/irqchip/irq-lp8x4x.c b/drivers/irqchip/irq-lp8x4x.c
new file mode 100644
index 0000000..5d44880b
--- /dev/null
+++ b/drivers/irqchip/irq-lp8x4x.c
@@ -0,0 +1,205 @@
+/*
+ *  linux/drivers/irqchip/irq-lp8x4x.c
+ *
+ *  Support for ICP DAS LP-8x4x FPGA irq
+ *  Copyright (C) 2013 Sergei Ianovich <ynvich@gmail.com>
+ *
+ *  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 or any later version.
+ */
+#include <linux/interrupt.h>
+#include <linux/io.h>
+#include <linux/irq.h>
+#include <linux/irqdomain.h>
+#include <linux/irqchip/chained_irq.h>
+#include <linux/of.h>
+#include <linux/platform_device.h>
+
+#define EOI			0x00000000
+#define INSINT			0x00000002
+#define ENSYSINT		0x00000004
+#define PRIMINT			0x00000006
+#define SECOINT			0x00000008
+#define ENRISEINT		0x0000000A
+#define CLRRISEINT		0x0000000C
+#define ENHILVINT		0x0000000E
+#define CLRHILVINT		0x00000010
+#define ENFALLINT		0x00000012
+#define CLRFALLINT		0x00000014
+#define LP8X4X_IRQ_MEM_SIZE	0x00000016
+
+static unsigned char irq_sys_enabled;
+static unsigned char irq_high_enabled;
+static void *base;
+static int irq_base;
+static int num_irq = 16;
+
+static void lp8x4x_mask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("lp8x4x: wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENHILVINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENSYSINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static void lp8x4x_unmask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled |= 1 << irq;
+		mask = ioread8(base + CLRHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + CLRHILVINT);
+
+		mask = ioread8(base + ENHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled |= 1 << irq;
+
+		mask = ioread8(base + SECOINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + SECOINT);
+
+		mask = ioread8(base + ENSYSINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static struct irq_chip lp8x4x_irq_chip = {
+	.name			= "FPGA",
+	.irq_ack		= lp8x4x_mask_irq,
+	.irq_mask		= lp8x4x_mask_irq,
+	.irq_mask_ack		= lp8x4x_mask_irq,
+	.irq_unmask		= lp8x4x_unmask_irq,
+};
+
+static void lp8x4x_irq_handler(unsigned int irq, struct irq_desc *desc)
+{
+	int loop, n;
+	unsigned long mask;
+	struct irq_chip *chip = irq_desc_get_chip(desc);
+
+	chained_irq_enter(chip, desc);
+
+	do {
+		loop = 0;
+		mask = ioread8(base + CLRHILVINT) & 0xff;
+		mask |= (ioread8(base + SECOINT) & 0x1f) << 8;
+		mask |= (ioread8(base + PRIMINT) & 0xe0) << 8;
+		mask &= (irq_high_enabled | (irq_sys_enabled << 8));
+		for_each_set_bit(n, &mask, BITS_PER_LONG) {
+			loop = 1;
+
+			generic_handle_irq(irq_base + n);
+		}
+	} while (loop);
+
+	iowrite8(0, base + EOI);
+	chained_irq_exit(chip, desc);
+}
+
+static int lp8x4x_irq_domain_map(struct irq_domain *d, unsigned int irq,
+				 irq_hw_number_t hw)
+{
+	irq_set_chip_and_handler(irq, &lp8x4x_irq_chip,
+				 handle_level_irq);
+	set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
+	return 0;
+}
+
+const struct irq_domain_ops lp8x4x_irq_domain_ops = {
+	.map	= lp8x4x_irq_domain_map,
+	.xlate	= irq_domain_xlate_onecell,
+};
+
+static struct of_device_id lp8x4x_irq_dt_ids[] = {
+	{ .compatible = "icpdas,irq-lp8x4x", },
+	{}
+};
+
+static int lp8x4x_irq_probe(struct platform_device *pdev)
+{
+	struct resource *rm, *ri;
+	struct device_node *np = pdev->dev.of_node;
+	struct irq_domain *domain;
+
+	rm = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	ri = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
+	if (!rm || !ri || resource_size(rm) < LP8X4X_IRQ_MEM_SIZE)
+		return -ENODEV;
+
+	base = devm_ioremap_resource(&pdev->dev, rm);
+	if (!base) {
+		dev_err(&pdev->dev, "Failed to ioremap %p\n", base);
+		return -EFAULT;
+	}
+
+	irq_base = irq_alloc_descs(-1, 0, num_irq, 0);
+	if (irq_base < 0) {
+		dev_err(&pdev->dev, "Failed to allocate IRQ numbers\n");
+		return irq_base;
+	}
+
+	domain = irq_domain_add_legacy(np, num_irq, irq_base, 0,
+				       &lp8x4x_irq_domain_ops, NULL);
+	if (!domain) {
+		dev_err(&pdev->dev, "Failed to add IRQ domain\n");
+		return -ENOMEM;
+	}
+
+	iowrite8(0, base + CLRRISEINT);
+	iowrite8(0, base + ENRISEINT);
+	iowrite8(0, base + CLRFALLINT);
+	iowrite8(0, base + ENFALLINT);
+	iowrite8(0, base + CLRHILVINT);
+	iowrite8(0, base + ENHILVINT);
+	iowrite8(0, base + ENSYSINT);
+	iowrite8(0, base + SECOINT);
+
+	irq_set_chained_handler(ri->start, lp8x4x_irq_handler);
+
+	return 0;
+}
+
+static struct platform_driver lp8x4x_irq_driver = {
+	.probe		= lp8x4x_irq_probe,
+	.driver		= {
+		.name	= "irq-lp8x4x",
+		.of_match_table = lp8x4x_irq_dt_ids,
+	},
+};
+
+static int __init lp8x4x_irq_init(void)
+{
+	return platform_driver_register(&lp8x4x_irq_driver);
+}
+postcore_initcall(lp8x4x_irq_init);
-- 
1.8.4.2

WARNING: multiple messages have this Message-ID (diff)
From: ynvich@gmail.com (Sergei Ianovich)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 11/21] ARM: pxa: support ICP DAS LP-8x4x FPGA irq
Date: Tue, 17 Dec 2013 23:37:41 +0400	[thread overview]
Message-ID: <1387309071-22382-12-git-send-email-ynvich@gmail.com> (raw)
In-Reply-To: <1387309071-22382-1-git-send-email-ynvich@gmail.com>

ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
source providing 16 additional interrupts among other things. The
interrupt lines are muxed to a GPIO pin. GPIO pins are in turn muxed
to a CPU interrupt line.

Until pxa is completely converted to device tree, it is impossible
to use IRQCHIP_DECLARE() and the irqdomain needs to added manually.

Signed-off-by: Sergei Ianovich <ynvich@gmail.com>
CC: Arnd Bergmann <arnd@arndb.de>
CC: Linus Walleij <linus.walleij@linaro.org>
---
   v2..v3
   * no changes (except number 09/16 -> 10/21)

   v0..v2
   * extract irqchip and move to drivers/irqchip/
   * use device tree
   * use devm helpers where possible

 .../bindings/interrupt-controller/irq-lp8x4x.txt   |  49 +++++
 arch/arm/boot/dts/pxa27x-lp8x4x.dts                |  10 +
 drivers/irqchip/Kconfig                            |   5 +
 drivers/irqchip/Makefile                           |   1 +
 drivers/irqchip/irq-lp8x4x.c                       | 205 +++++++++++++++++++++
 5 files changed, 270 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
 create mode 100644 drivers/irqchip/irq-lp8x4x.c

diff --git a/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
new file mode 100644
index 0000000..c8940d2
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/irq-lp8x4x.txt
@@ -0,0 +1,49 @@
+ICP DAS LP-8x4x FPGA Interrupt Controller
+
+ICP DAS LP-8x4x contains FPGA chip. The chip functions as a interrupt
+source providing 16 additional interrupts among other things.
+
+Required properties:
+- compatible : should be "icpdas,irq-lp8x4x"
+
+- reg: physical base address of the controller and length of memory mapped
+  region.
+
+- interrupt-controller : identifies the node as an interrupt controller
+
+- #interrupt-cells : should be 1
+
+- interrupts : should provide interrupt
+
+- interrupt-parent : should provide a link to interrupt controller either
+		     explicitly and implicitly from a parent node
+
+Example:
+
+	fpga: fpga at 17000006 {
+		compatible = "icpdas,irq-lp8x4x";
+		reg = <0x17000006 0x16>;
+		interrupt-parent = <&gpio>;
+		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
+		#interrupt-cells = <1>;
+		interrupt-controller;
+		status = "okay";
+	};
+
+	uart at 17009050 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009050 0x10
+		       0x17009030 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <13>;
+		status = "okay";
+	};
+
+	uart at 17009060 {
+		compatible = "icpdas,uart-lp8x4x";
+		reg = <0x17009060 0x10
+		       0x17009032 0x02>;
+		interrupt-parent = <&fpga>;
+		interrupts = <14>;
+		status = "okay";
+	};
diff --git a/arch/arm/boot/dts/pxa27x-lp8x4x.dts b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
index 07856e0..78dfd2e 100644
--- a/arch/arm/boot/dts/pxa27x-lp8x4x.dts
+++ b/arch/arm/boot/dts/pxa27x-lp8x4x.dts
@@ -167,6 +167,16 @@
 				reg = <0xa000 0x1000
 				       0x901e 0x1>;
 			};
+
+			fpgairq: irq at 9006 {
+				compatible = "icpdas,irq-lp8x4x";
+				reg = <0x9006 0x16>;
+				interrupt-parent = <&gpio>;
+				interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
+				#interrupt-cells = <1>;
+				interrupt-controller;
+				status = "okay";
+			};
 		};
 	};
 };
diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 3792a1a..7e22729 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -35,6 +35,11 @@ config IMGPDC_IRQ
 	select GENERIC_IRQ_CHIP
 	select IRQ_DOMAIN
 
+config LP8X4X_IRQ
+	bool
+	depends on OF
+	select IRQ_DOMAIN
+
 config ORION_IRQCHIP
 	bool
 	select IRQ_DOMAIN
diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile
index c60b901..8a28927 100644
--- a/drivers/irqchip/Makefile
+++ b/drivers/irqchip/Makefile
@@ -22,3 +22,4 @@ obj-$(CONFIG_RENESAS_IRQC)		+= irq-renesas-irqc.o
 obj-$(CONFIG_VERSATILE_FPGA_IRQ)	+= irq-versatile-fpga.o
 obj-$(CONFIG_ARCH_VT8500)		+= irq-vt8500.o
 obj-$(CONFIG_TB10X_IRQC)		+= irq-tb10x.o
+obj-$(CONFIG_LP8X4X_IRQ)		+= irq-lp8x4x.o
diff --git a/drivers/irqchip/irq-lp8x4x.c b/drivers/irqchip/irq-lp8x4x.c
new file mode 100644
index 0000000..5d44880b
--- /dev/null
+++ b/drivers/irqchip/irq-lp8x4x.c
@@ -0,0 +1,205 @@
+/*
+ *  linux/drivers/irqchip/irq-lp8x4x.c
+ *
+ *  Support for ICP DAS LP-8x4x FPGA irq
+ *  Copyright (C) 2013 Sergei Ianovich <ynvich@gmail.com>
+ *
+ *  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 or any later version.
+ */
+#include <linux/interrupt.h>
+#include <linux/io.h>
+#include <linux/irq.h>
+#include <linux/irqdomain.h>
+#include <linux/irqchip/chained_irq.h>
+#include <linux/of.h>
+#include <linux/platform_device.h>
+
+#define EOI			0x00000000
+#define INSINT			0x00000002
+#define ENSYSINT		0x00000004
+#define PRIMINT			0x00000006
+#define SECOINT			0x00000008
+#define ENRISEINT		0x0000000A
+#define CLRRISEINT		0x0000000C
+#define ENHILVINT		0x0000000E
+#define CLRHILVINT		0x00000010
+#define ENFALLINT		0x00000012
+#define CLRFALLINT		0x00000014
+#define LP8X4X_IRQ_MEM_SIZE	0x00000016
+
+static unsigned char irq_sys_enabled;
+static unsigned char irq_high_enabled;
+static void *base;
+static int irq_base;
+static int num_irq = 16;
+
+static void lp8x4x_mask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("lp8x4x: wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENHILVINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled &= ~(1 << irq);
+
+		mask = ioread8(base + ENSYSINT);
+		mask &= ~(1 << irq);
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static void lp8x4x_unmask_irq(struct irq_data *d)
+{
+	unsigned mask;
+	int irq = d->irq - irq_base;
+
+	if (irq < 0 || irq > 15) {
+		pr_err("wrong irq handler for irq %i\n", d->irq);
+		return;
+	}
+
+	if (irq < 8) {
+		irq_high_enabled |= 1 << irq;
+		mask = ioread8(base + CLRHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + CLRHILVINT);
+
+		mask = ioread8(base + ENHILVINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENHILVINT);
+	} else {
+		irq -= 8;
+		irq_sys_enabled |= 1 << irq;
+
+		mask = ioread8(base + SECOINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + SECOINT);
+
+		mask = ioread8(base + ENSYSINT);
+		mask |= 1 << irq;
+		iowrite8(mask, base + ENSYSINT);
+	}
+}
+
+static struct irq_chip lp8x4x_irq_chip = {
+	.name			= "FPGA",
+	.irq_ack		= lp8x4x_mask_irq,
+	.irq_mask		= lp8x4x_mask_irq,
+	.irq_mask_ack		= lp8x4x_mask_irq,
+	.irq_unmask		= lp8x4x_unmask_irq,
+};
+
+static void lp8x4x_irq_handler(unsigned int irq, struct irq_desc *desc)
+{
+	int loop, n;
+	unsigned long mask;
+	struct irq_chip *chip = irq_desc_get_chip(desc);
+
+	chained_irq_enter(chip, desc);
+
+	do {
+		loop = 0;
+		mask = ioread8(base + CLRHILVINT) & 0xff;
+		mask |= (ioread8(base + SECOINT) & 0x1f) << 8;
+		mask |= (ioread8(base + PRIMINT) & 0xe0) << 8;
+		mask &= (irq_high_enabled | (irq_sys_enabled << 8));
+		for_each_set_bit(n, &mask, BITS_PER_LONG) {
+			loop = 1;
+
+			generic_handle_irq(irq_base + n);
+		}
+	} while (loop);
+
+	iowrite8(0, base + EOI);
+	chained_irq_exit(chip, desc);
+}
+
+static int lp8x4x_irq_domain_map(struct irq_domain *d, unsigned int irq,
+				 irq_hw_number_t hw)
+{
+	irq_set_chip_and_handler(irq, &lp8x4x_irq_chip,
+				 handle_level_irq);
+	set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
+	return 0;
+}
+
+const struct irq_domain_ops lp8x4x_irq_domain_ops = {
+	.map	= lp8x4x_irq_domain_map,
+	.xlate	= irq_domain_xlate_onecell,
+};
+
+static struct of_device_id lp8x4x_irq_dt_ids[] = {
+	{ .compatible = "icpdas,irq-lp8x4x", },
+	{}
+};
+
+static int lp8x4x_irq_probe(struct platform_device *pdev)
+{
+	struct resource *rm, *ri;
+	struct device_node *np = pdev->dev.of_node;
+	struct irq_domain *domain;
+
+	rm = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	ri = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
+	if (!rm || !ri || resource_size(rm) < LP8X4X_IRQ_MEM_SIZE)
+		return -ENODEV;
+
+	base = devm_ioremap_resource(&pdev->dev, rm);
+	if (!base) {
+		dev_err(&pdev->dev, "Failed to ioremap %p\n", base);
+		return -EFAULT;
+	}
+
+	irq_base = irq_alloc_descs(-1, 0, num_irq, 0);
+	if (irq_base < 0) {
+		dev_err(&pdev->dev, "Failed to allocate IRQ numbers\n");
+		return irq_base;
+	}
+
+	domain = irq_domain_add_legacy(np, num_irq, irq_base, 0,
+				       &lp8x4x_irq_domain_ops, NULL);
+	if (!domain) {
+		dev_err(&pdev->dev, "Failed to add IRQ domain\n");
+		return -ENOMEM;
+	}
+
+	iowrite8(0, base + CLRRISEINT);
+	iowrite8(0, base + ENRISEINT);
+	iowrite8(0, base + CLRFALLINT);
+	iowrite8(0, base + ENFALLINT);
+	iowrite8(0, base + CLRHILVINT);
+	iowrite8(0, base + ENHILVINT);
+	iowrite8(0, base + ENSYSINT);
+	iowrite8(0, base + SECOINT);
+
+	irq_set_chained_handler(ri->start, lp8x4x_irq_handler);
+
+	return 0;
+}
+
+static struct platform_driver lp8x4x_irq_driver = {
+	.probe		= lp8x4x_irq_probe,
+	.driver		= {
+		.name	= "irq-lp8x4x",
+		.of_match_table = lp8x4x_irq_dt_ids,
+	},
+};
+
+static int __init lp8x4x_irq_init(void)
+{
+	return platform_driver_register(&lp8x4x_irq_driver);
+}
+postcore_initcall(lp8x4x_irq_init);
-- 
1.8.4.2

  parent reply	other threads:[~2013-12-17 19:39 UTC|newest]

Thread overview: 700+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-01  6:26 [PATCH 00/11] ARM: support for ICP DAS LP-8x4x Sergei Ianovich
2013-12-01  6:26 ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 01/11] resolve PXA<->8250 serial device address conflict Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-02  9:02   ` Heikki Krogerus
2013-12-02  9:02     ` Heikki Krogerus
2013-12-02  9:23     ` Sergei Ianovich
2013-12-02  9:23       ` Sergei Ianovich
2013-12-02  9:49       ` Heikki Krogerus
2013-12-02  9:49         ` Heikki Krogerus
2013-12-02 10:26         ` Sergei Ianovich
2013-12-02 10:26           ` Sergei Ianovich
2013-12-02 14:10           ` Heikki Krogerus
2013-12-02 14:10             ` Heikki Krogerus
2013-12-05  4:12             ` Greg Kroah-Hartman
2013-12-05  4:12               ` Greg Kroah-Hartman
2013-12-05  4:31               ` Sergei Ianovich
2013-12-05  4:31                 ` Sergei Ianovich
2013-12-05  4:35                 ` Greg Kroah-Hartman
2013-12-05  4:35                   ` Greg Kroah-Hartman
2013-12-05  4:36                   ` Sergei Ianovich
2013-12-05  4:36                     ` Sergei Ianovich
2013-12-05 23:28                   ` [PATCH] serial: rewrite pxa2xx-uart to use 8250_core Sergei Ianovich
2013-12-05 23:28                     ` Sergei Ianovich
2013-12-05 23:28                     ` Sergei Ianovich
2013-12-06  0:02                     ` Greg Kroah-Hartman
2013-12-06  0:02                       ` Greg Kroah-Hartman
2013-12-06  0:02                       ` Greg Kroah-Hartman
2013-12-06  0:17                       ` Russell King - ARM Linux
2013-12-06  0:17                         ` Russell King - ARM Linux
2013-12-06  0:17                         ` Russell King - ARM Linux
2013-12-06  9:28                         ` Sergei Ianovich
2013-12-06  9:28                           ` Sergei Ianovich
2013-12-06  9:53                           ` James Cameron
2013-12-06  9:53                             ` James Cameron
2013-12-06 10:34                             ` Sergei Ianovich
2013-12-06 10:34                               ` Sergei Ianovich
2013-12-06 11:05                               ` James Cameron
2013-12-06 11:05                                 ` James Cameron
2013-12-06  0:38                     ` James Cameron
2013-12-06  0:38                       ` James Cameron
2013-12-06  0:38                       ` James Cameron
2013-12-06  2:55                       ` James Cameron
2013-12-06  2:55                         ` James Cameron
2013-12-06  2:42                     ` James Cameron
2013-12-06  2:42                       ` James Cameron
2013-12-06  9:16                       ` Sergei Ianovich
2013-12-06  9:16                         ` Sergei Ianovich
2013-12-06  9:09                     ` [PATCH v2] " Sergei Ianovich
2013-12-06  9:09                       ` Sergei Ianovich
2013-12-06  9:09                       ` Sergei Ianovich
2013-12-06  9:28                       ` James Cameron
2013-12-06  9:28                         ` James Cameron
2013-12-09  8:38                       ` Heikki Krogerus
2013-12-09  8:38                         ` Heikki Krogerus
2013-12-09  8:44                         ` Sascha Hauer
2013-12-09  8:44                           ` Sascha Hauer
2013-12-09 11:38                       ` [PATCH v3] " Sergei Ianovich
2013-12-09 11:38                         ` Sergei Ianovich
2013-12-09 11:38                         ` Sergei Ianovich
2014-01-28 14:14   ` [PATCH 01/11] resolve PXA<->8250 serial device address conflict Pavel Machek
2014-01-28 14:14     ` Pavel Machek
2014-01-28 14:20     ` Sergei Ianovich
2014-01-28 14:20       ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 02/11] arm: pxa27x: support ICP DAS LP-8x4x Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-06  0:40   ` Arnd Bergmann
2013-12-06  0:40     ` Arnd Bergmann
2013-12-06 16:38     ` Sergei Ianovich
2013-12-06 16:38       ` Sergei Ianovich
2013-12-06 17:14       ` Arnd Bergmann
2013-12-06 17:14         ` Arnd Bergmann
2013-12-10 12:33         ` Linus Walleij
2013-12-10 12:33           ` Linus Walleij
2013-12-10 20:20           ` Sergei Ianovich
2013-12-10 20:20             ` Sergei Ianovich
2013-12-10 21:57             ` Arnd Bergmann
2013-12-10 21:57               ` Arnd Bergmann
2013-12-11  4:30               ` Sergei Ianovich
2013-12-11  4:30                 ` Sergei Ianovich
2013-12-11  5:11                 ` Arnd Bergmann
2013-12-11  5:11                   ` Arnd Bergmann
2013-12-11  5:41                   ` Sergei Ianovich
2013-12-11  5:41                     ` Sergei Ianovich
2013-12-11 14:53                     ` Arnd Bergmann
2013-12-11 14:53                       ` Arnd Bergmann
2013-12-06 16:48   ` [PATCH v2 " Sergei Ianovich
2013-12-06 16:48     ` Sergei Ianovich
2013-12-08  2:21     ` Arnd Bergmann
2013-12-08  2:21       ` Arnd Bergmann
2013-12-08  7:05       ` Sergei Ianovich
2013-12-08  7:05         ` Sergei Ianovich
2013-12-09  0:54         ` Arnd Bergmann
2013-12-09  0:54           ` Arnd Bergmann
2013-12-08 22:53     ` [PATCH 0/9] ARM: support for ICP DAS LP-8x4x (with dts) Sergei Ianovich
2013-12-08 22:53       ` Sergei Ianovich
2013-12-08 22:53       ` [PATCH 1/9] ARM: dts: pxa2xx fix compatible strings Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53       ` [PATCH 2/9] ARM: dts: fix pxa27x-gpio interrupts Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53       ` [PATCH 3/9] ARM: fix ohci-pxa27x build error with OF enabled Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09 14:26         ` Steve Cotton
2013-12-09 14:26           ` Steve Cotton
2013-12-09 14:42           ` Sergei Ianovich
2013-12-09 14:42             ` Sergei Ianovich
2013-12-08 22:53       ` [PATCH 4/9] ARM: pxa: remove unused variable Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09  8:56         ` Daniel Mack
2013-12-09  8:56           ` Daniel Mack
2013-12-09  9:42           ` Sergei Ianovich
2013-12-09  9:42             ` Sergei Ianovich
2013-12-09  9:49             ` Daniel Mack
2013-12-09  9:49               ` Daniel Mack
2013-12-08 22:53       ` [PATCH 5/9] ARM: dts: provide DMA config to pxamci Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09  1:33         ` Arnd Bergmann
2013-12-09  1:33           ` Arnd Bergmann
2013-12-09  9:04           ` Daniel Mack
2013-12-09  9:04             ` Daniel Mack
2013-12-09  9:34             ` Sergei Ianovich
2013-12-09  9:34               ` Sergei Ianovich
2013-12-09  9:53               ` Sergei Ianovich
2013-12-09  9:53                 ` Sergei Ianovich
2013-12-09 10:21               ` Daniel Mack
2013-12-09 10:21                 ` Daniel Mack
2013-12-09 12:09                 ` Sergei Ianovich
2013-12-09 12:09                   ` Sergei Ianovich
2013-12-09 12:09                   ` Sergei Ianovich
2013-12-10  0:25                   ` Arnd Bergmann
2013-12-10  0:25                     ` Arnd Bergmann
2013-12-10  4:25                     ` Sergei Ianovich
2013-12-10  4:25                       ` Sergei Ianovich
2013-12-09 13:16                 ` Sergei Ianovich
2013-12-09 13:16                   ` Sergei Ianovich
2013-12-11  8:19             ` Robert Jarzmik
2013-12-11  8:19               ` Robert Jarzmik
2013-12-11  8:19               ` Robert Jarzmik
2013-12-08 22:53       ` [PATCH 6/9] ARM: dts: pxa3xx: move declaration to header Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09  1:13         ` Arnd Bergmann
2013-12-09  1:13           ` Arnd Bergmann
2013-12-08 22:53       ` [PATCH 7/9] ARM: dts: pxa27x: skip static platform devices Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09 15:26         ` Dmitry Eremin-Solenikov
2013-12-08 22:53       ` [PATCH 8/9] ARM: dts: pxa27x: device tree irq init Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53       ` [PATCH 9/9] ARM: pxa27x: device tree support ICP DAS LP-8x4x Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-08 22:53         ` Sergei Ianovich
2013-12-09  1:47         ` Arnd Bergmann
2013-12-09  1:47           ` Arnd Bergmann
2013-12-09 15:16           ` Sergei Ianovich
2013-12-09 15:16             ` Sergei Ianovich
2013-12-09 15:55             ` Sergei Ianovich
2013-12-09 15:55               ` Sergei Ianovich
2013-12-09 16:39               ` Arnd Bergmann
2013-12-09 16:39                 ` Arnd Bergmann
2013-12-09 16:39                 ` Arnd Bergmann
2013-12-09 16:25             ` Arnd Bergmann
2013-12-09 16:25               ` Arnd Bergmann
2013-12-09  1:51       ` [PATCH 0/9] ARM: support for ICP DAS LP-8x4x (with dts) Arnd Bergmann
2013-12-09  1:51         ` Arnd Bergmann
2013-12-09 18:44         ` Sergei Ianovich
2013-12-09 18:44           ` Sergei Ianovich
2013-12-13  2:27       ` [PATCH v2 00/16] " Sergei Ianovich
2013-12-13  2:27         ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 01/16] ARM: dts: pxa2xx fix compatible strings Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 02/16] ARM: dts: fix pxa27x-gpio interrupts Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 03/16] ARM: dts: provide DMA config to pxamci Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-14 19:06           ` Arnd Bergmann
2013-12-14 19:06             ` Arnd Bergmann
2013-12-14 19:06             ` Arnd Bergmann
2013-12-14 19:34             ` Sergei Ianovich
2013-12-14 19:34               ` Sergei Ianovich
2013-12-14 23:39               ` Arnd Bergmann
2013-12-14 23:39                 ` Arnd Bergmann
2013-12-16  9:58               ` Daniel Mack
2013-12-16  9:58                 ` Daniel Mack
2013-12-16 11:47                 ` Sergei Ianovich
2013-12-16 11:47                   ` Sergei Ianovich
2013-12-16 11:58                   ` Lars-Peter Clausen
2013-12-16 11:58                     ` Lars-Peter Clausen
2013-12-16 11:58                     ` Lars-Peter Clausen
2013-12-16 12:03                     ` Sergei Ianovich
2013-12-16 12:03                       ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 04/16] ARM: dts: pxa3xx: move declaration to header Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 05/16] ARM: dts: pxa27x: irq init using device tree Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 06/16] ARM: pxa27x: device tree support ICP DAS LP-8x4x Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 07/16] rtc: support DS1302 RTC on " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 08/16] mtd: support BB SRAM " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 09/16] ARM: pxa: support ICP DAS LP-8x4x FPGA irq Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 10/16] serial: support for 16550A serial ports on LP-8x4x Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 11/16] misc: support for LP-8x4x custom parallel bus Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 12/16] misc: support for serial slots in LP-8x4x Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 13/16] misc: support for parallel " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 14/16] misc: support for I-8041 " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 15/16] misc: support for I-8042 " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-13  2:27         ` [PATCH v2 16/16] misc: support for I-8024 " Sergei Ianovich
2013-12-13  2:27           ` Sergei Ianovich
2013-12-14 20:59           ` Arnd Bergmann
2013-12-14 20:59             ` Arnd Bergmann
2013-12-14 23:03             ` Sergei Ianovich
2013-12-14 23:03               ` Sergei Ianovich
2013-12-13  2:33         ` [PATCH v2 00/16] ARM: support for ICP DAS LP-8x4x (with dts) Sergei Ianovich
2013-12-13  2:33           ` Sergei Ianovich
2013-12-14 21:03         ` Arnd Bergmann
2013-12-14 21:03           ` Arnd Bergmann
2013-12-14 21:55           ` Sergei Ianovich
2013-12-14 21:55             ` Sergei Ianovich
2013-12-15  0:53             ` Arnd Bergmann
2013-12-15  0:53               ` Arnd Bergmann
2013-12-15  2:12               ` Sergei Ianovich
2013-12-15  2:12                 ` Sergei Ianovich
2013-12-15  2:55                 ` Arnd Bergmann
2013-12-15  2:55                   ` Arnd Bergmann
2013-12-16 13:01                   ` Sergei Ianovich
2013-12-16 13:01                     ` Sergei Ianovich
2013-12-16 17:56                     ` Arnd Bergmann
2013-12-16 17:56                       ` Arnd Bergmann
2013-12-16 20:38                       ` Sergei Ianovich
2013-12-16 20:38                         ` Sergei Ianovich
2013-12-18 20:50                         ` Arnd Bergmann
2013-12-18 20:50                           ` Arnd Bergmann
2013-12-18 20:56                           ` Sergei Ianovich
2013-12-18 20:56                             ` Sergei Ianovich
2013-12-18 21:10                             ` Arnd Bergmann
2013-12-18 21:10                               ` Arnd Bergmann
2013-12-18 21:20                               ` Sergei Ianovich
2013-12-18 21:20                                 ` Sergei Ianovich
2013-12-19  5:30                                 ` Arnd Bergmann
2013-12-19  5:30                                   ` Arnd Bergmann
2014-01-09 23:12                                   ` Sergei Ianovich
2014-01-09 23:12                                     ` Sergei Ianovich
2014-01-20 16:08                                     ` Sergei Ianovich
2014-01-20 16:08                                       ` Sergei Ianovich
2014-01-20 16:20                                       ` Daniel Mack
2014-01-20 16:20                                         ` Daniel Mack
2014-01-20 16:52                                         ` Sergei Ianovich
2014-01-20 16:52                                           ` Sergei Ianovich
2014-01-20 16:58                                           ` Daniel Mack
2014-01-20 16:58                                             ` Daniel Mack
2013-12-17 19:37         ` [PATCH v3 00/21] " Sergei Ianovich
2013-12-17 19:37           ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 01/21 resend] serial: rewrite pxa2xx-uart to use 8250_core Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-18 23:55             ` Greg Kroah-Hartman
2013-12-18 23:55               ` Greg Kroah-Hartman
2013-12-19  8:51             ` Heikki Krogerus
2013-12-19  8:51               ` Heikki Krogerus
2013-12-19  9:35               ` Sergei Ianovich
2013-12-19  9:35                 ` Sergei Ianovich
2013-12-19 10:01                 ` Sergei Ianovich
2013-12-19 10:01                   ` Sergei Ianovich
2013-12-19 11:05                   ` Heikki Krogerus
2013-12-19 11:05                     ` Heikki Krogerus
2013-12-17 19:37           ` [PATCH v3 02/21] ARM: dts: pxa2xx fix compatible strings Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 03/21] ARM: dts: fix pxa27x-gpio interrupts Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 04/21] ARM: dts: pxa3xx: move declaration to header Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 05/21] ARM: dts: pxa27x: irq init using device tree Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 06/21] ARM: dts: provide DMA config to pxamci on PXA27x Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 07/21] ARM: dts: parse DMA config in pxamci Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-19  0:50             ` Sergei Ianovich
2013-12-19  0:50               ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 08/21] ARM: pxa27x: device tree support ICP DAS LP-8x4x Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 09/21] rtc: support DS1302 RTC on " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 10/21] mtd: support BB SRAM " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2014-04-16  5:04             ` Brian Norris
2014-04-16  5:04               ` Brian Norris
2014-04-16  5:04               ` Brian Norris
2014-04-16  5:21               ` Sergei Ianovich
2014-04-16  5:21                 ` Sergei Ianovich
2014-04-16  5:21                 ` Sergei Ianovich
2013-12-17 19:37           ` Sergei Ianovich [this message]
2013-12-17 19:37             ` [PATCH v3 11/21] ARM: pxa: support ICP DAS LP-8x4x FPGA irq Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2014-01-02 12:32             ` Linus Walleij
2014-01-02 12:32               ` Linus Walleij
2014-01-02 12:32               ` Linus Walleij
2014-01-08 19:01               ` Sergei Ianovich
2014-01-08 19:01                 ` Sergei Ianovich
2014-01-08 19:01                 ` Sergei Ianovich
2014-01-15  7:39                 ` Linus Walleij
2014-01-15  7:39                   ` Linus Walleij
2014-01-15  7:39                   ` Linus Walleij
2014-01-15 13:17                   ` Sergei Ianovich
2014-01-15 13:17                     ` Sergei Ianovich
2014-01-15 13:17                     ` Sergei Ianovich
2014-01-09 23:07             ` [PATCH v3.1 " Sergei Ianovich
2014-01-09 23:07               ` Sergei Ianovich
2014-01-09 23:07               ` Sergei Ianovich
2014-01-15  7:46               ` Linus Walleij
2014-01-15  7:46                 ` Linus Walleij
2014-01-15  7:46                 ` Linus Walleij
2014-01-15 13:12               ` [PATCH v3.2 " Sergei Ianovich
2014-01-15 13:12                 ` Sergei Ianovich
2014-01-15 13:12                 ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 12/21] serial: support for 16550A serial ports on LP-8x4x Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-19 11:18             ` Heikki Krogerus
2013-12-19 11:18               ` Heikki Krogerus
2013-12-17 19:37           ` [PATCH v3 13/21] misc: support for LP-8x4x custom parallel bus Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 14/21] misc: support for LP-8x4x rotary switch Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 15/21] misc: support for LP-8x4x DIP switch Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 16/21] misc: support for writing to LP-8x4x EEPROM Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 17/21] misc: support for serial slots in LP-8x4x Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 18/21] misc: support for parallel " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 19/21] misc: support for I-8041 " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 20/21] misc: support for I-8042 " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2013-12-17 19:37           ` [PATCH v3 21/21] misc: support for I-8024 " Sergei Ianovich
2013-12-17 19:37             ` Sergei Ianovich
2014-04-16 17:13           ` [PATCH v4 00/21] ARM: support for ICP DAS LP-8x4x (with dts) Sergei Ianovich
2014-04-16 17:13             ` Sergei Ianovich
2014-04-16 17:13             ` [PATCH v4 01/21] serial: rewrite pxa2xx-uart to use 8250_core Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2015-01-19 18:08               ` Rob Herring
2015-01-19 18:08                 ` Rob Herring
2015-01-19 18:08                 ` Rob Herring
2014-04-16 17:13             ` [PATCH v4 02/21] ARM: dts: pxa2xx fix compatible strings Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13             ` [PATCH v4 03/21] ARM: dts: fix pxa27x-gpio interrupts Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13             ` [PATCH v4 04/21] ARM: dts: pxa3xx: move declaration to header Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13             ` [PATCH v4 05/21] ARM: dts: pxa27x: irq init using device tree Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13             ` [PATCH v4 06/21] ARM: dts: provide DMA config to pxamci on PXA27x Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:13               ` Sergei Ianovich
2014-04-16 17:17               ` [PATCH v4 07/21] ARM: dts: parse DMA config in pxamci Sergei Ianovich
2014-04-16 17:17                 ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 08/21] ARM: pxa27x: device tree support ICP DAS LP-8x4x Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-17 10:54                   ` Daniel Mack
2014-04-16 17:17                 ` [PATCH v4 09/21] rtc: support DS1302 RTC on " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` [v4,09/21] " Sergey Yanovich
2015-06-08 12:07                   ` Alexandre Belloni
2015-06-08 12:07                     ` Alexandre Belloni
2015-06-08 12:12                     ` Sergei Ianovich
2015-06-08 12:12                       ` Sergei Ianovich
2015-06-08 12:12                       ` [rtc-linux] " Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 10/21] mtd: support BB SRAM " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-30 17:21                   ` Brian Norris
2014-04-30 17:21                     ` Brian Norris
2014-04-30 17:21                     ` Brian Norris
2014-04-30 17:35                     ` ООО "ЭлектроПлюс"
2014-04-30 17:35                       ` ООО "ЭлектроПлюс"
2014-04-30 17:35                       ` ООО "ЭлектроПлюс"
2015-12-15 18:58                   ` [PATCH v5] " Sergei Ianovich
2015-12-15 18:58                     ` Sergei Ianovich
2015-12-20  3:38                     ` Rob Herring
2015-12-20  3:38                       ` Rob Herring
2015-12-20 10:43                       ` Sergei Ianovich
2015-12-20 10:43                         ` Sergei Ianovich
2015-12-20 10:43                         ` Sergei Ianovich
2016-01-06 23:25                         ` Brian Norris
2016-01-06 23:25                           ` Brian Norris
2016-01-06 23:25                           ` Brian Norris
2016-02-23 18:58                     ` [PATCH v6] " Sergei Ianovich
2016-02-23 18:58                       ` Sergei Ianovich
2016-02-23 19:48                       ` Rob Herring
2016-02-23 19:48                         ` Rob Herring
2016-02-23 19:48                         ` Rob Herring
2016-03-08  0:19                       ` Brian Norris
2016-03-08  0:19                         ` Brian Norris
2016-03-08  0:19                         ` Brian Norris
2014-04-16 17:17                 ` [PATCH v4 11/21] ARM: pxa: support ICP DAS LP-8x4x FPGA irq Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2015-12-15 19:26                   ` [PATCH v5] arm: " Sergei Ianovich
2015-12-15 19:26                     ` Sergei Ianovich
2015-12-16 11:54                     ` Marc Zyngier
2015-12-19  4:20                     ` Rob Herring
2015-12-19  4:20                       ` Rob Herring
     [not found]                     ` <20151219035802.GA28424@rob-hp-laptop>
2015-12-19  7:03                       ` Sergei Ianovich
2015-12-19  7:03                         ` Sergei Ianovich
2016-02-27 15:56                     ` [PATCH v6] " Sergei Ianovich
2016-02-27 15:56                       ` Sergei Ianovich
2016-02-27 17:41                       ` Jason Cooper
2016-02-27 17:41                         ` Jason Cooper
2016-02-29  8:29                         ` Marc Zyngier
2016-02-29  8:29                           ` Marc Zyngier
2016-03-03 22:12                       ` Rob Herring
2016-03-03 22:12                         ` Rob Herring
2014-04-16 17:17                 ` [PATCH v4 12/21] serial: support for 16550A serial ports on LP-8x4x Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 18:35                   ` One Thousand Gnomes
2014-04-16 18:35                     ` One Thousand Gnomes
2014-04-16 18:35                     ` One Thousand Gnomes
2014-04-16 19:01                     ` Sergei Ianovich
2014-04-16 19:01                       ` Sergei Ianovich
2014-04-16 20:00                       ` One Thousand Gnomes
2014-04-16 20:00                         ` One Thousand Gnomes
2014-04-16 20:32                         ` Sergei Ianovich
2014-04-16 20:32                           ` Sergei Ianovich
2014-04-16 20:32                           ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 13/21] misc: support for LP-8x4x custom parallel bus Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 18:41                   ` One Thousand Gnomes
2014-04-16 18:41                     ` One Thousand Gnomes
2014-04-16 18:41                     ` One Thousand Gnomes
2014-04-16 18:42                     ` Arnd Bergmann
2014-04-16 18:42                       ` Arnd Bergmann
2014-04-16 20:29                       ` One Thousand Gnomes
2014-04-16 20:29                         ` One Thousand Gnomes
2014-04-16 19:53                     ` Sergei Ianovich
2014-04-16 19:53                       ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 14/21] misc: support for LP-8x4x rotary switch Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 15/21] misc: support for LP-8x4x DIP switch Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 16/21] misc: support for writing to LP-8x4x EEPROM Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 17/21] misc: support for serial slots in LP-8x4x Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 18/21] misc: support for parallel " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 19/21] misc: support for I-8041 " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 20/21] misc: support for I-8042 " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 17:17                 ` [PATCH v4 21/21] misc: support for I-8024 " Sergei Ianovich
2014-04-16 17:17                   ` Sergei Ianovich
2014-04-16 18:39                   ` One Thousand Gnomes
2014-04-16 18:39                     ` One Thousand Gnomes
2014-04-16 19:28                     ` Sergei Ianovich
2014-04-16 19:28                       ` Sergei Ianovich
2014-04-16 19:56                       ` One Thousand Gnomes
2014-04-16 19:56                         ` One Thousand Gnomes
2014-04-16 20:06                         ` Sergei Ianovich
2014-04-16 20:06                           ` Sergei Ianovich
2015-12-15 21:04                 ` [PATCH v5] serial: support for 16550A serial ports on LP-8x4x Sergei Ianovich
2015-12-15 21:04                   ` Sergei Ianovich
2015-12-15 21:51                   ` Arnd Bergmann
2015-12-15 21:51                     ` Arnd Bergmann
2015-12-16  8:04                     ` Sergei Ianovich
2015-12-16  8:04                       ` Sergei Ianovich
2015-12-16 10:26                       ` Arnd Bergmann
2015-12-16 10:26                         ` Arnd Bergmann
2015-12-19  8:11                         ` Sergei Ianovich
2015-12-19  8:11                           ` Sergei Ianovich
2015-12-19 21:42                     ` Sergei Ianovich
2015-12-19 21:42                       ` Sergei Ianovich
2015-12-17 14:50                   ` Andy Shevchenko
2015-12-17 14:50                     ` Andy Shevchenko
2016-02-27 16:14                   ` [PATCH v6] " Sergei Ianovich
2016-02-27 16:14                     ` Sergei Ianovich
2016-02-29 10:29                     ` Andy Shevchenko
2016-02-29 10:29                       ` Andy Shevchenko
2016-02-29 13:03                       ` Sergei Ianovich
2016-02-29 13:03                         ` Sergei Ianovich
2016-02-29 14:45                         ` One Thousand Gnomes
2016-02-29 14:45                           ` One Thousand Gnomes
2016-02-29 21:26                     ` [PATCH v7] " Sergei Ianovich
2016-02-29 21:26                       ` Sergei Ianovich
2016-03-01 11:06                       ` Andy Shevchenko
2016-03-01 11:06                         ` Andy Shevchenko
2016-03-01 16:25                         ` Sergei Ianovich
2016-03-01 16:25                           ` Sergei Ianovich
2016-03-01 16:46                           ` Andy Shevchenko
2016-03-01 16:46                             ` Andy Shevchenko
2016-03-01 17:14                             ` Sergei Ianovich
2016-03-01 17:14                               ` Sergei Ianovich
2016-03-01 17:48                               ` Andy Shevchenko
2016-03-01 17:48                                 ` Andy Shevchenko
2016-03-01 18:43                                 ` One Thousand Gnomes
2016-03-01 18:43                                   ` One Thousand Gnomes
2016-03-01 19:28                                 ` Sergei Ianovich
2016-03-01 19:28                                   ` Sergei Ianovich
2016-03-01 19:53                                   ` One Thousand Gnomes
2016-03-01 19:53                                     ` One Thousand Gnomes
2016-03-01 19:54                       ` [PATCH v8] " Sergei Ianovich
2016-03-01 19:54                         ` Sergei Ianovich
2016-03-01 20:08                         ` [PATCH v9] " Sergei Ianovich
2016-03-01 20:08                           ` Sergei Ianovich
2016-03-01 20:23                           ` Andy Shevchenko
2016-03-01 20:23                             ` Andy Shevchenko
2016-03-01 21:25                           ` [PATCH v10] " Sergei Ianovich
2016-03-01 21:25                             ` Sergei Ianovich
2016-03-05  4:26                             ` Rob Herring
2016-03-05  4:26                               ` Rob Herring
2014-04-16 17:39             ` [PATCH v4 00/21] ARM: support for ICP DAS LP-8x4x (with dts) Daniel Mack
2014-04-16 17:39               ` Daniel Mack
2014-04-16 20:59               ` Sergei Ianovich
2014-04-16 20:59                 ` Sergei Ianovich
2014-04-17 10:38                 ` Daniel Mack
2014-04-17 10:38                   ` Daniel Mack
2014-04-17 12:12                   ` Sergei Ianovich
2014-04-17 12:12                     ` Sergei Ianovich
2014-04-17 12:34                     ` Daniel Mack
2014-04-17 12:34                       ` Daniel Mack
2014-04-19 11:59                       ` Arnd Bergmann
2014-04-19 11:59                         ` Arnd Bergmann
2015-12-09 22:28           ` [PATCH v4 0/2] series to support for ICP DAS LP-8x4x (ARM PXA270) Sergei Ianovich
2015-12-09 22:28             ` [PATCH v4 1/2] serial: rewrite pxa2xx-uart to use 8250_core Sergei Ianovich
2015-12-09 22:28               ` Sergei Ianovich
2015-12-09 22:28               ` Sergei Ianovich
2015-12-19 12:45               ` Robert Jarzmik
2015-12-19 12:45                 ` Robert Jarzmik
2015-12-19 12:45                 ` Robert Jarzmik
2015-12-19 13:26                 ` Robert Jarzmik
2015-12-19 13:26                   ` Robert Jarzmik
2015-12-19 13:26                   ` Robert Jarzmik
2015-12-19 18:46                   ` Sergei Ianovich
2015-12-19 18:46                     ` Sergei Ianovich
2015-12-19 19:31                     ` Robert Jarzmik
2015-12-19 19:31                       ` Robert Jarzmik
2015-12-19 19:31                       ` Robert Jarzmik
2015-12-19 20:12                       ` Sergei Ianovich
2015-12-19 20:12                         ` Sergei Ianovich
2015-12-19 23:12                         ` Robert Jarzmik
2015-12-19 23:12                           ` Robert Jarzmik
2015-12-19 23:12                           ` Robert Jarzmik
2015-12-20 11:24                           ` Sergei Ianovich
2015-12-20 11:24                             ` Sergei Ianovich
2015-12-22 19:27                             ` Robert Jarzmik
2015-12-22 19:27                               ` Robert Jarzmik
2015-12-22 19:27                               ` Robert Jarzmik
2015-12-23 18:59               ` [PATCH v5] " Sergei Ianovich
2015-12-23 18:59                 ` Sergei Ianovich
2015-12-23 22:50                 ` kbuild test robot
2015-12-23 22:50                   ` kbuild test robot
2015-12-24 15:15                 ` [PATCH v6] " Sergei Ianovich
2015-12-24 15:15                   ` Sergei Ianovich
2015-12-29 11:06                   ` Heikki Krogerus
2015-12-29 16:50                     ` Robert Jarzmik
2015-12-29 16:50                       ` Robert Jarzmik
2016-02-07  6:22                   ` Greg Kroah-Hartman
2016-02-22  1:56                     ` Sergei Ianovich
2016-02-22  7:17                       ` Robert Jarzmik
2016-02-22  7:17                         ` Robert Jarzmik
2016-09-27 15:47                         ` Robert Jarzmik
2016-09-27 15:47                           ` Robert Jarzmik
2016-09-27 16:12                           ` Greg Kroah-Hartman
2016-09-27 16:24                             ` Robert Jarzmik
2016-09-27 16:24                               ` Robert Jarzmik
2015-12-09 22:28             ` [PATCH v4 2/2] arm: pxa27x: support for ICP DAS LP-8x4x w/ DT Sergei Ianovich
2015-12-09 22:28               ` Sergei Ianovich
2015-12-09 22:28               ` Sergei Ianovich
2015-12-11  2:53               ` Rob Herring
2015-12-11  2:53                 ` Rob Herring
2015-12-11  2:53                 ` Rob Herring
2015-12-15 16:27               ` [PATCH v5 " Sergei Ianovich
2015-12-15 16:27                 ` Sergei Ianovich
2015-12-15 16:27                 ` Sergei Ianovich
2015-12-15 16:32                 ` Arnd Bergmann
2015-12-15 16:32                   ` Arnd Bergmann
2015-12-15 16:32                   ` Arnd Bergmann
2015-12-15 16:42                   ` Sergei Ianovich
2015-12-15 16:42                     ` Sergei Ianovich
2015-12-15 16:42                     ` Sergei Ianovich
2015-12-15 17:02                     ` Arnd Bergmann
2015-12-15 17:02                       ` Arnd Bergmann
2015-12-15 17:02                       ` Arnd Bergmann
2015-12-15 17:24                       ` Sergei Ianovich
2015-12-15 17:24                         ` Sergei Ianovich
2015-12-15 17:24                         ` Sergei Ianovich
2015-12-15 18:06                         ` Robert Jarzmik
2015-12-15 18:06                           ` Robert Jarzmik
2015-12-15 18:06                           ` Robert Jarzmik
2015-12-15 18:50                           ` Sergei Ianovich
2015-12-15 18:50                             ` Sergei Ianovich
2015-12-15 18:50                             ` Sergei Ianovich
2015-12-15 19:21                             ` Arnd Bergmann
2015-12-15 19:21                               ` Arnd Bergmann
2015-12-15 19:21                               ` Arnd Bergmann
2015-12-15 20:01                               ` Robert Jarzmik
2015-12-15 20:01                                 ` Robert Jarzmik
2015-12-15 20:01                                 ` Robert Jarzmik
2015-12-15 20:40                                 ` Arnd Bergmann
2015-12-15 20:40                                   ` Arnd Bergmann
2015-12-15 20:40                                   ` Arnd Bergmann
2015-12-19 12:27                       ` Robert Jarzmik
2015-12-19 12:27                         ` Robert Jarzmik
2015-12-19 12:27                         ` Robert Jarzmik
2015-12-19  7:53                 ` [PATCH] arm: pxa: create a unified defconfig for PXA27X-DT Sergei Ianovich
2015-12-19  7:53                   ` Sergei Ianovich
2013-12-10 12:43     ` [PATCH v2 02/11] arm: pxa27x: support ICP DAS LP-8x4x Linus Walleij
2013-12-10 12:43       ` Linus Walleij
2013-12-10 12:47       ` Sergei Ianovich
2013-12-10 12:47         ` Sergei Ianovich
2013-12-12 19:58         ` Linus Walleij
2013-12-12 19:58           ` Linus Walleij
2013-12-10 12:54       ` Vasily Khoruzhick
2013-12-10 12:54         ` Vasily Khoruzhick
2013-12-12 20:07         ` Linus Walleij
2013-12-12 20:07           ` Linus Walleij
2013-12-10 22:24       ` Dmitry Eremin-Solenikov
2013-12-01  6:26 ` [PATCH 03/11] rtc: support DS1302 RTC on " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 04/11] mtd: support BB SRAM " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 05/11] serial: support for 16550 serial ports on LP-8x4x Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-02  8:48   ` Heikki Krogerus
2013-12-02  8:48     ` Heikki Krogerus
2013-12-02 11:46     ` Sergei Ianovich
2013-12-02 11:46       ` Sergei Ianovich
2013-12-02 13:53       ` Heikki Krogerus
2013-12-02 13:53         ` Heikki Krogerus
2013-12-02 11:30   ` Russell King - ARM Linux
2013-12-02 11:30     ` Russell King - ARM Linux
2013-12-02 11:39     ` Sergei Ianovich
2013-12-02 11:39       ` Sergei Ianovich
2013-12-02 11:52       ` Russell King - ARM Linux
2013-12-02 11:52         ` Russell King - ARM Linux
2013-12-02 12:01         ` Sergei Ianovich
2013-12-02 12:01           ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 06/11] misc: support for LP-8x4x custom parallel bus Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 07/11] misc: support for serial slots in LP-8x4x Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 08/11] misc: support for parallel " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 09/11] misc: support for I-8041 " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 10/11] misc: support for I-8042 " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich
2013-12-01  6:26 ` [PATCH 11/11] misc: support for I-8024 " Sergei Ianovich
2013-12-01  6:26   ` Sergei Ianovich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1387309071-22382-12-git-send-email-ynvich@gmail.com \
    --to=ynvich@gmail.com \
    --cc=arnd@arndb.de \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=grant.likely@linaro.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=pawel.moll@arm.com \
    --cc=rob.herring@calxeda.com \
    --cc=rob@landley.net \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.