Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1277512 > unrolled thread
| Started by | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| First post | 2015-11-25 17:00 +0100 |
| Last post | 2015-12-11 22:40 +0100 |
| Articles | 20 on this page of 47 — 6 participants |
Back to article view | Back to linux.kernel
[PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
[PATCH 2/5] ARM: orion: always use MULTI_IRQ_HANDLER Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
[PATCH 1/5] ARM: orion: move watchdog setup to mach-orion5x Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
[PATCH 3/5] ARM: orion: use SPARSE_IRQ everywhere Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
[PATCH 5/5] ARM: orion: multiplatform support Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
[PATCH 4/5] ARM: orion: clean up mach/*.h headers Arnd Bergmann <arnd@arndb.de> - 2015-11-25 17:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-11-25 17:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Gregory CLEMENT <gregory.clement@free-electrons.com> - 2015-11-25 18:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-11-25 18:50 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-11-25 21:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Jason Cooper <jason@lakedaemon.net> - 2015-11-26 16:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-25 19:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-11-25 20:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-25 20:30 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-26 00:30 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-11-25 21:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-25 23:50 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-11-25 21:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Gregory CLEMENT <gregory.clement@free-electrons.com> - 2015-11-30 14:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-02 00:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-12-02 00:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Gregory CLEMENT <gregory.clement@free-electrons.com> - 2015-12-02 12:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-02 13:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-02 17:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-02 20:30 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-02 20:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-02 21:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-02 21:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-02 21:30 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-12-02 21:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-02 22:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-02 22:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-12-03 01:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Andrew Lunn <andrew@lunn.ch> - 2015-12-02 16:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-10 14:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-10 14:50 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-10 22:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-10 22:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-11 00:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Jason Cooper <jason@lakedaemon.net> - 2015-12-11 14:40 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-11 15:50 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Jason Cooper <jason@lakedaemon.net> - 2015-12-11 16:00 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Josh Triplett <josh@joshtriplett.org> - 2015-12-11 19:30 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Jason Cooper <jason@lakedaemon.net> - 2015-12-11 19:50 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Josh Triplett <josh@joshtriplett.org> - 2015-12-11 20:10 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Jason Cooper <jason@lakedaemon.net> - 2015-12-11 20:20 +0100
Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Arnd Bergmann <arnd@arndb.de> - 2015-12-11 22:40 +0100
Page 1 of 3 [1] 2 3 Next page →
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform |
| Message-ID | <qyKEa-8h2-1@gated-at.bofh.it> |
I've posted these before and now gotten around to a rebase and
want to include them in the arm-soc next/multiplatform branch for
4.5.
Originally the plan for these platforms was to convert all of
them to DT and use only mach-mvebu. That has not happened,
so I would do it this way instead so we can at least have
them in a single kernel.
Let me know if there are any concerns or objections.
Arnd Bergmann (5):
ARM: orion: move watchdog setup to mach-orion5x
ARM: orion: always use MULTI_IRQ_HANDLER
ARM: orion: use SPARSE_IRQ everywhere
ARM: orion: clean up mach/*.h headers
ARM: orion: multiplatform support
arch/arm/Kconfig | 40 ------------------
arch/arm/configs/dove_defconfig | 2 +
arch/arm/configs/mv78xx0_defconfig | 3 ++
arch/arm/configs/orion5x_defconfig | 3 ++
arch/arm/mach-dove/Kconfig | 15 +++++--
arch/arm/mach-dove/Makefile | 2 +
.../arm/mach-dove/{include/mach => }/bridge-regs.h | 4 +-
arch/arm/mach-dove/cm-a510.c | 4 +-
arch/arm/mach-dove/common.c | 4 +-
arch/arm/mach-dove/dove-db-setup.c | 3 +-
arch/arm/mach-dove/{include/mach => }/dove.h | 4 +-
arch/arm/mach-dove/include/mach/entry-macro.S | 33 ---------------
arch/arm/mach-dove/include/mach/hardware.h | 19 ---------
arch/arm/mach-dove/include/mach/uncompress.h | 36 ----------------
arch/arm/mach-dove/irq.c | 22 ++++------
arch/arm/mach-dove/{include/mach => }/irqs.h | 4 +-
arch/arm/mach-dove/mpp.c | 2 +-
arch/arm/mach-dove/pcie.c | 4 +-
arch/arm/mach-dove/{include/mach => }/pm.h | 6 +--
arch/arm/mach-mv78xx0/Kconfig | 15 +++++--
arch/arm/mach-mv78xx0/Makefile | 2 +
.../mach-mv78xx0/{include/mach => }/bridge-regs.h | 4 +-
arch/arm/mach-mv78xx0/buffalo-wxl-setup.c | 3 +-
arch/arm/mach-mv78xx0/common.c | 4 +-
arch/arm/mach-mv78xx0/db78x00-bp-setup.c | 3 +-
arch/arm/mach-mv78xx0/include/mach/entry-macro.S | 41 ------------------
arch/arm/mach-mv78xx0/include/mach/hardware.h | 14 -------
arch/arm/mach-mv78xx0/include/mach/uncompress.h | 46 ---------------------
arch/arm/mach-mv78xx0/irq.c | 35 +++++++++++++++-
arch/arm/mach-mv78xx0/{include/mach => }/irqs.h | 4 +-
arch/arm/mach-mv78xx0/mpp.c | 2 +-
arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h | 4 +-
arch/arm/mach-mv78xx0/pcie.c | 2 +-
arch/arm/mach-mv78xx0/rd78x00-masa-setup.c | 3 +-
arch/arm/mach-orion5x/Kconfig | 18 ++++++--
arch/arm/mach-orion5x/Makefile | 2 +
arch/arm/mach-orion5x/board-d2net.c | 2 +-
arch/arm/mach-orion5x/board-dt.c | 4 +-
arch/arm/mach-orion5x/board-mss2.c | 4 +-
arch/arm/mach-orion5x/board-rd88f5182.c | 2 +-
.../mach-orion5x/{include/mach => }/bridge-regs.h | 4 +-
arch/arm/mach-orion5x/common.c | 20 +++++++--
arch/arm/mach-orion5x/db88f5281-setup.c | 3 +-
arch/arm/mach-orion5x/dns323-setup.c | 3 +-
arch/arm/mach-orion5x/include/mach/entry-macro.S | 25 -----------
arch/arm/mach-orion5x/include/mach/hardware.h | 14 -------
arch/arm/mach-orion5x/include/mach/uncompress.h | 48 ----------------------
arch/arm/mach-orion5x/irq.c | 13 +-----
arch/arm/mach-orion5x/{include/mach => }/irqs.h | 4 +-
arch/arm/mach-orion5x/kurobox_pro-setup.c | 4 +-
arch/arm/mach-orion5x/ls-chl-setup.c | 3 +-
arch/arm/mach-orion5x/ls_hgl-setup.c | 3 +-
arch/arm/mach-orion5x/mpp.c | 2 +-
arch/arm/mach-orion5x/mv2120-setup.c | 3 +-
arch/arm/mach-orion5x/net2big-setup.c | 3 +-
arch/arm/mach-orion5x/{include/mach => }/orion5x.h | 4 +-
arch/arm/mach-orion5x/pci.c | 2 +-
arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c | 3 +-
arch/arm/mach-orion5x/rd88f5181l-ge-setup.c | 3 +-
arch/arm/mach-orion5x/rd88f5182-setup.c | 3 +-
arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c | 3 +-
arch/arm/mach-orion5x/terastation_pro2-setup.c | 3 +-
arch/arm/mach-orion5x/ts209-setup.c | 3 +-
arch/arm/mach-orion5x/ts409-setup.c | 3 +-
arch/arm/mach-orion5x/ts78xx-setup.c | 3 +-
arch/arm/mach-orion5x/tsx09-common.c | 2 +-
arch/arm/mach-orion5x/wnr854t-setup.c | 3 +-
arch/arm/mach-orion5x/wrt350n-v2-setup.c | 3 +-
arch/arm/plat-orion/common.c | 21 ----------
arch/arm/plat-orion/include/plat/common.h | 2 -
arch/arm/plat-orion/irq.c | 1 -
arch/arm/plat-orion/mpp.c | 1 -
72 files changed, 185 insertions(+), 454 deletions(-)
rename arch/arm/mach-dove/{include/mach => }/bridge-regs.h (96%)
rename arch/arm/mach-dove/{include/mach => }/dove.h (99%)
delete mode 100644 arch/arm/mach-dove/include/mach/entry-macro.S
delete mode 100644 arch/arm/mach-dove/include/mach/hardware.h
delete mode 100644 arch/arm/mach-dove/include/mach/uncompress.h
rename arch/arm/mach-dove/{include/mach => }/irqs.h (96%)
rename arch/arm/mach-dove/{include/mach => }/pm.h (95%)
rename arch/arm/mach-mv78xx0/{include/mach => }/bridge-regs.h (92%)
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/entry-macro.S
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/hardware.h
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/uncompress.h
rename arch/arm/mach-mv78xx0/{include/mach => }/irqs.h (95%)
rename arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h (98%)
rename arch/arm/mach-orion5x/{include/mach => }/bridge-regs.h (92%)
delete mode 100644 arch/arm/mach-orion5x/include/mach/entry-macro.S
delete mode 100644 arch/arm/mach-orion5x/include/mach/hardware.h
delete mode 100644 arch/arm/mach-orion5x/include/mach/uncompress.h
rename arch/arm/mach-orion5x/{include/mach => }/irqs.h (94%)
rename arch/arm/mach-orion5x/{include/mach => }/orion5x.h (99%)
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 2/5] ARM: orion: always use MULTI_IRQ_HANDLER |
| Message-ID | <qyKEb-8h2-7@gated-at.bofh.it> |
| In reply to | #1277512 |
As a preparation for multiplatform support, this enables
the MULTI_IRQ_HANDLER code unconditionally on dove and
orion5x, and introduces the respective code on mv78xx0,
which did not have it so far. The classic entry-macro.S
files are removed as they are now obsolete.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/Kconfig | 3 ++
arch/arm/mach-dove/include/mach/entry-macro.S | 33 -------------------
arch/arm/mach-dove/irq.c | 12 +------
arch/arm/mach-mv78xx0/include/mach/entry-macro.S | 41 ------------------------
arch/arm/mach-mv78xx0/irq.c | 33 +++++++++++++++++++
arch/arm/mach-orion5x/include/mach/entry-macro.S | 25 ---------------
arch/arm/mach-orion5x/irq.c | 11 -------
7 files changed, 37 insertions(+), 121 deletions(-)
delete mode 100644 arch/arm/mach-dove/include/mach/entry-macro.S
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/entry-macro.S
delete mode 100644 arch/arm/mach-orion5x/include/mach/entry-macro.S
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index dd5bedca3840..4a975d83e52f 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -468,6 +468,7 @@ config ARCH_DOVE
select CPU_PJ4
select GENERIC_CLOCKEVENTS
select MIGHT_HAVE_PCI
+ select MULTI_IRQ_HANDLER
select MVEBU_MBUS
select PINCTRL
select PINCTRL_DOVE
@@ -481,6 +482,7 @@ config ARCH_MV78XX0
select CPU_FEROCEON
select GENERIC_CLOCKEVENTS
select MVEBU_MBUS
+ select MULTI_IRQ_HANDLER
select PCI
select PLAT_ORION_LEGACY
help
@@ -494,6 +496,7 @@ config ARCH_ORION5X
select CPU_FEROCEON
select GENERIC_CLOCKEVENTS
select MVEBU_MBUS
+ select MULTI_IRQ_HANDLER
select PCI
select PLAT_ORION_LEGACY
select MULTI_IRQ_HANDLER
diff --git a/arch/arm/mach-dove/include/mach/entry-macro.S b/arch/arm/mach-dove/include/mach/entry-macro.S
deleted file mode 100644
index 72d622baaad3..000000000000
--- a/arch/arm/mach-dove/include/mach/entry-macro.S
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * arch/arm/mach-dove/include/mach/entry-macro.S
- *
- * Low-level IRQ helper macros for Marvell Dove platforms
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#include <mach/bridge-regs.h>
-
- .macro get_irqnr_preamble, base, tmp
- ldr \base, =IRQ_VIRT_BASE
- .endm
-
- .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
- @ check low interrupts
- ldr \irqstat, [\base, #IRQ_CAUSE_LOW_OFF]
- ldr \tmp, [\base, #IRQ_MASK_LOW_OFF]
- mov \irqnr, #31
- ands \irqstat, \irqstat, \tmp
-
- @ if no low interrupts set, check high interrupts
- ldreq \irqstat, [\base, #IRQ_CAUSE_HIGH_OFF]
- ldreq \tmp, [\base, #IRQ_MASK_HIGH_OFF]
- moveq \irqnr, #63
- andeqs \irqstat, \irqstat, \tmp
-
- @ find first active interrupt source
- clzne \irqstat, \irqstat
- subne \irqnr, \irqnr, \irqstat
- .endm
diff --git a/arch/arm/mach-dove/irq.c b/arch/arm/mach-dove/irq.c
index bfb3703357c5..b1c7cae1486b 100644
--- a/arch/arm/mach-dove/irq.c
+++ b/arch/arm/mach-dove/irq.c
@@ -13,6 +13,7 @@
#include <linux/irq.h>
#include <linux/gpio.h>
#include <linux/io.h>
+#include <asm/exception.h>
#include <asm/mach/arch.h>
#include <plat/irq.h>
#include <asm/mach/irq.h>
@@ -109,14 +110,6 @@ static int __initdata gpio2_irqs[4] = {
0,
};
-#ifdef CONFIG_MULTI_IRQ_HANDLER
-/*
- * Compiling with both non-DT and DT support enabled, will
- * break asm irq handler used by non-DT boards. Therefore,
- * we provide a C-style irq handler even for non-DT boards,
- * if MULTI_IRQ_HANDLER is set.
- */
-
static void __iomem *dove_irq_base = IRQ_VIRT_BASE;
static asmlinkage void
@@ -139,7 +132,6 @@ __exception_irq_entry dove_legacy_handle_irq(struct pt_regs *regs)
return;
}
}
-#endif
void __init dove_init_irq(void)
{
@@ -148,9 +140,7 @@ void __init dove_init_irq(void)
orion_irq_init(1, IRQ_VIRT_BASE + IRQ_MASK_LOW_OFF);
orion_irq_init(33, IRQ_VIRT_BASE + IRQ_MASK_HIGH_OFF);
-#ifdef CONFIG_MULTI_IRQ_HANDLER
set_handle_irq(dove_legacy_handle_irq);
-#endif
/*
* Initialize gpiolib for GPIOs 0-71.
diff --git a/arch/arm/mach-mv78xx0/include/mach/entry-macro.S b/arch/arm/mach-mv78xx0/include/mach/entry-macro.S
deleted file mode 100644
index 6b1f088e0597..000000000000
--- a/arch/arm/mach-mv78xx0/include/mach/entry-macro.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * arch/arm/mach-mv78xx0/include/mach/entry-macro.S
- *
- * Low-level IRQ helper macros for Marvell MV78xx0 platforms
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#include <mach/bridge-regs.h>
-
- .macro get_irqnr_preamble, base, tmp
- ldr \base, =IRQ_VIRT_BASE
- .endm
-
- .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
- @ check low interrupts
- ldr \irqstat, [\base, #IRQ_CAUSE_LOW_OFF]
- ldr \tmp, [\base, #IRQ_MASK_LOW_OFF]
- mov \irqnr, #31
- ands \irqstat, \irqstat, \tmp
- bne 1001f
-
- @ if no low interrupts set, check high interrupts
- ldr \irqstat, [\base, #IRQ_CAUSE_HIGH_OFF]
- ldr \tmp, [\base, #IRQ_MASK_HIGH_OFF]
- mov \irqnr, #63
- ands \irqstat, \irqstat, \tmp
- bne 1001f
-
- @ if no high interrupts set, check error interrupts
- ldr \irqstat, [\base, #IRQ_CAUSE_ERR_OFF]
- ldr \tmp, [\base, #IRQ_MASK_ERR_OFF]
- mov \irqnr, #95
- ands \irqstat, \irqstat, \tmp
-
- @ find first active interrupt source
-1001: clzne \irqstat, \irqstat
- subne \irqnr, \irqnr, \irqstat
- .endm
diff --git a/arch/arm/mach-mv78xx0/irq.c b/arch/arm/mach-mv78xx0/irq.c
index 32073444024b..2453c33faccf 100644
--- a/arch/arm/mach-mv78xx0/irq.c
+++ b/arch/arm/mach-mv78xx0/irq.c
@@ -11,6 +11,7 @@
#include <linux/kernel.h>
#include <linux/irq.h>
#include <linux/io.h>
+#include <asm/exception.h>
#include <mach/bridge-regs.h>
#include <plat/orion-gpio.h>
#include <plat/irq.h>
@@ -23,12 +24,44 @@ static int __initdata gpio0_irqs[4] = {
IRQ_MV78XX0_GPIO_24_31,
};
+static void __iomem *mv78xx0_irq_base = IRQ_VIRT_BASE;
+
+static asmlinkage void
+__exception_irq_entry mv78xx0_legacy_handle_irq(struct pt_regs *regs)
+{
+ u32 stat;
+
+ stat = readl_relaxed(mv78xx0_irq_base + IRQ_CAUSE_LOW_OFF);
+ stat &= readl_relaxed(mv78xx0_irq_base + IRQ_MASK_LOW_OFF);
+ if (stat) {
+ unsigned int hwirq = __fls(stat);
+ handle_IRQ(hwirq, regs);
+ return;
+ }
+ stat = readl_relaxed(mv78xx0_irq_base + IRQ_CAUSE_HIGH_OFF);
+ stat &= readl_relaxed(mv78xx0_irq_base + IRQ_MASK_HIGH_OFF);
+ if (stat) {
+ unsigned int hwirq = 32 + __fls(stat);
+ handle_IRQ(hwirq, regs);
+ return;
+ }
+ stat = readl_relaxed(mv78xx0_irq_base + IRQ_CAUSE_ERR_OFF);
+ stat &= readl_relaxed(mv78xx0_irq_base + IRQ_MASK_ERR_OFF);
+ if (stat) {
+ unsigned int hwirq = 64 + __fls(stat);
+ handle_IRQ(hwirq, regs);
+ return;
+ }
+}
+
void __init mv78xx0_init_irq(void)
{
orion_irq_init(0, IRQ_VIRT_BASE + IRQ_MASK_LOW_OFF);
orion_irq_init(32, IRQ_VIRT_BASE + IRQ_MASK_HIGH_OFF);
orion_irq_init(64, IRQ_VIRT_BASE + IRQ_MASK_ERR_OFF);
+ set_handle_irq(mv78xx0_legacy_handle_irq);
+
/*
* Initialize gpiolib for GPIOs 0-31. (The GPIO interrupt mask
* registers for core #1 are at an offset of 0x18 from those of
diff --git a/arch/arm/mach-orion5x/include/mach/entry-macro.S b/arch/arm/mach-orion5x/include/mach/entry-macro.S
deleted file mode 100644
index 79eb502a1e64..000000000000
--- a/arch/arm/mach-orion5x/include/mach/entry-macro.S
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * arch/arm/mach-orion5x/include/mach/entry-macro.S
- *
- * Low-level IRQ helper macros for Orion platforms
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#include <mach/bridge-regs.h>
-
- .macro get_irqnr_preamble, base, tmp
- ldr \base, =MAIN_IRQ_CAUSE
- .endm
-
- .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
- ldr \irqstat, [\base, #0] @ main cause
- ldr \tmp, [\base, #(MAIN_IRQ_MASK - MAIN_IRQ_CAUSE)] @ main mask
- mov \irqnr, #0 @ default irqnr
- @ find cause bits that are unmasked
- ands \irqstat, \irqstat, \tmp @ clear Z flag if any
- clzne \irqnr, \irqstat @ calc irqnr
- rsbne \irqnr, \irqnr, #31
- .endm
diff --git a/arch/arm/mach-orion5x/irq.c b/arch/arm/mach-orion5x/irq.c
index 086ecb87d885..8678db1eb1bd 100644
--- a/arch/arm/mach-orion5x/irq.c
+++ b/arch/arm/mach-orion5x/irq.c
@@ -26,14 +26,6 @@ static int __initdata gpio0_irqs[4] = {
IRQ_ORION5X_GPIO_24_31,
};
-#ifdef CONFIG_MULTI_IRQ_HANDLER
-/*
- * Compiling with both non-DT and DT support enabled, will
- * break asm irq handler used by non-DT boards. Therefore,
- * we provide a C-style irq handler even for non-DT boards,
- * if MULTI_IRQ_HANDLER is set.
- */
-
asmlinkage void
__exception_irq_entry orion5x_legacy_handle_irq(struct pt_regs *regs)
{
@@ -47,15 +39,12 @@ __exception_irq_entry orion5x_legacy_handle_irq(struct pt_regs *regs)
return;
}
}
-#endif
void __init orion5x_init_irq(void)
{
orion_irq_init(1, MAIN_IRQ_MASK);
-#ifdef CONFIG_MULTI_IRQ_HANDLER
set_handle_irq(orion5x_legacy_handle_irq);
-#endif
/*
* Initialize gpiolib for GPIOs 0-31.
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 1/5] ARM: orion: move watchdog setup to mach-orion5x |
| Message-ID | <qyKEb-8h2-15@gated-at.bofh.it> |
| In reply to | #1277512 |
The watchdog device node is created in plat-orion/common.c
but depends on the bridge address that is platform specific,
so as a preparation for orion multiplatform support, we should
move it out of the common code into orion5x.
The other two users of plat-orion currently do not support
the watchdog device, so this is not a problem.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/mach-orion5x/common.c | 14 +++++++++++++-
arch/arm/plat-orion/common.c | 21 ---------------------
arch/arm/plat-orion/include/plat/common.h | 2 --
3 files changed, 13 insertions(+), 24 deletions(-)
diff --git a/arch/arm/mach-orion5x/common.c b/arch/arm/mach-orion5x/common.c
index 6bbb7b55c6d1..2b7889e3b7bc 100644
--- a/arch/arm/mach-orion5x/common.c
+++ b/arch/arm/mach-orion5x/common.c
@@ -184,9 +184,21 @@ static void __init orion5x_crypto_init(void)
/*****************************************************************************
* Watchdog
****************************************************************************/
+static struct resource orion_wdt_resource[] = {
+ DEFINE_RES_MEM(TIMER_PHYS_BASE, 0x04),
+ DEFINE_RES_MEM(RSTOUTn_MASK_PHYS, 0x04),
+};
+
+static struct platform_device orion_wdt_device = {
+ .name = "orion_wdt",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(orion_wdt_resource),
+ .resource = orion_wdt_resource,
+};
+
static void __init orion5x_wdt_init(void)
{
- orion_wdt_init();
+ platform_device_register(&orion_wdt_device);
}
diff --git a/arch/arm/plat-orion/common.c b/arch/arm/plat-orion/common.c
index 8861c367d061..78c8bf4043c0 100644
--- a/arch/arm/plat-orion/common.c
+++ b/arch/arm/plat-orion/common.c
@@ -21,7 +21,6 @@
#include <net/dsa.h>
#include <linux/platform_data/dma-mv_xor.h>
#include <linux/platform_data/usb-ehci-orion.h>
-#include <mach/bridge-regs.h>
#include <plat/common.h>
/* Create a clkdev entry for a given device/clk */
@@ -589,26 +588,6 @@ void __init orion_spi_1_init(unsigned long mapbase)
}
/*****************************************************************************
- * Watchdog
- ****************************************************************************/
-static struct resource orion_wdt_resource[] = {
- DEFINE_RES_MEM(TIMER_PHYS_BASE, 0x04),
- DEFINE_RES_MEM(RSTOUTn_MASK_PHYS, 0x04),
-};
-
-static struct platform_device orion_wdt_device = {
- .name = "orion_wdt",
- .id = -1,
- .num_resources = ARRAY_SIZE(orion_wdt_resource),
- .resource = orion_wdt_resource,
-};
-
-void __init orion_wdt_init(void)
-{
- platform_device_register(&orion_wdt_device);
-}
-
-/*****************************************************************************
* XOR
****************************************************************************/
static u64 orion_xor_dmamask = DMA_BIT_MASK(32);
diff --git a/arch/arm/plat-orion/include/plat/common.h b/arch/arm/plat-orion/include/plat/common.h
index d9a24f605a2b..9e6d76ad48a9 100644
--- a/arch/arm/plat-orion/include/plat/common.h
+++ b/arch/arm/plat-orion/include/plat/common.h
@@ -75,8 +75,6 @@ void __init orion_spi_init(unsigned long mapbase);
void __init orion_spi_1_init(unsigned long mapbase);
-void __init orion_wdt_init(void);
-
void __init orion_xor0_init(unsigned long mapbase_low,
unsigned long mapbase_high,
unsigned long irq_0,
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 3/5] ARM: orion: use SPARSE_IRQ everywhere |
| Message-ID | <qyKEb-8h2-19@gated-at.bofh.it> |
| In reply to | #1277512 |
As a preparation for multiplatform support, this moves all the
code using plat-orion over to use sparse irq support, which is
enabled implicitly for multiplatform.
In particular, the hardcoded NR_IRQS macro gets replaced with
a machine specific one that is set in the machine descriptor
in order to set up a static mapping for all legacy interrupts.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/Kconfig | 3 +++
arch/arm/mach-dove/cm-a510.c | 1 +
arch/arm/mach-dove/dove-db-setup.c | 1 +
arch/arm/mach-dove/include/mach/dove.h | 2 ++
arch/arm/mach-dove/include/mach/irqs.h | 2 +-
arch/arm/mach-dove/include/mach/pm.h | 2 +-
arch/arm/mach-dove/irq.c | 2 +-
arch/arm/mach-mv78xx0/buffalo-wxl-setup.c | 1 +
arch/arm/mach-mv78xx0/db78x00-bp-setup.c | 1 +
arch/arm/mach-mv78xx0/include/mach/irqs.h | 2 +-
arch/arm/mach-mv78xx0/include/mach/mv78xx0.h | 2 ++
arch/arm/mach-mv78xx0/rd78x00-masa-setup.c | 1 +
arch/arm/mach-orion5x/db88f5281-setup.c | 1 +
arch/arm/mach-orion5x/dns323-setup.c | 1 +
arch/arm/mach-orion5x/include/mach/irqs.h | 2 +-
arch/arm/mach-orion5x/include/mach/orion5x.h | 2 ++
arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 ++
arch/arm/mach-orion5x/ls-chl-setup.c | 1 +
arch/arm/mach-orion5x/ls_hgl-setup.c | 1 +
arch/arm/mach-orion5x/mv2120-setup.c | 1 +
arch/arm/mach-orion5x/net2big-setup.c | 1 +
arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c | 1 +
arch/arm/mach-orion5x/rd88f5181l-ge-setup.c | 1 +
arch/arm/mach-orion5x/rd88f5182-setup.c | 1 +
arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c | 1 +
arch/arm/mach-orion5x/terastation_pro2-setup.c | 1 +
arch/arm/mach-orion5x/ts209-setup.c | 1 +
arch/arm/mach-orion5x/ts409-setup.c | 1 +
arch/arm/mach-orion5x/ts78xx-setup.c | 1 +
arch/arm/mach-orion5x/wnr854t-setup.c | 1 +
arch/arm/mach-orion5x/wrt350n-v2-setup.c | 1 +
31 files changed, 37 insertions(+), 5 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4a975d83e52f..efb94d4b71c1 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -473,6 +473,7 @@ config ARCH_DOVE
select PINCTRL
select PINCTRL_DOVE
select PLAT_ORION_LEGACY
+ select SPARSE_IRQ
help
Support for the Marvell Dove SoC 88AP510
@@ -485,6 +486,7 @@ config ARCH_MV78XX0
select MULTI_IRQ_HANDLER
select PCI
select PLAT_ORION_LEGACY
+ select SPARSE_IRQ
help
Support for the following Marvell MV78xx0 series SoCs:
MV781x0, MV782x0.
@@ -500,6 +502,7 @@ config ARCH_ORION5X
select PCI
select PLAT_ORION_LEGACY
select MULTI_IRQ_HANDLER
+ select SPARSE_IRQ
help
Support for the following Marvell Orion 5x series SoCs:
Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
diff --git a/arch/arm/mach-dove/cm-a510.c b/arch/arm/mach-dove/cm-a510.c
index 0dc39cf30fdd..b9a7c33db29a 100644
--- a/arch/arm/mach-dove/cm-a510.c
+++ b/arch/arm/mach-dove/cm-a510.c
@@ -88,6 +88,7 @@ static void __init cm_a510_init(void)
MACHINE_START(CM_A510, "Compulab CM-A510 Board")
.atag_offset = 0x100,
+ .nr_irqs = DOVE_NR_IRQS,
.init_machine = cm_a510_init,
.map_io = dove_map_io,
.init_early = dove_init_early,
diff --git a/arch/arm/mach-dove/dove-db-setup.c b/arch/arm/mach-dove/dove-db-setup.c
index 76e26f949c27..bcb678fd2415 100644
--- a/arch/arm/mach-dove/dove-db-setup.c
+++ b/arch/arm/mach-dove/dove-db-setup.c
@@ -94,6 +94,7 @@ static void __init dove_db_init(void)
MACHINE_START(DOVE_DB, "Marvell DB-MV88AP510-BP Development Board")
.atag_offset = 0x100,
+ .nr_irqs = DOVE_NR_IRQS,
.init_machine = dove_db_init,
.map_io = dove_map_io,
.init_early = dove_init_early,
diff --git a/arch/arm/mach-dove/include/mach/dove.h b/arch/arm/mach-dove/include/mach/dove.h
index 0c4b35f4ee5b..00f45458b3ec 100644
--- a/arch/arm/mach-dove/include/mach/dove.h
+++ b/arch/arm/mach-dove/include/mach/dove.h
@@ -11,6 +11,8 @@
#ifndef __ASM_ARCH_DOVE_H
#define __ASM_ARCH_DOVE_H
+#include <mach/irqs.h>
+
/*
* Marvell Dove address maps.
*
diff --git a/arch/arm/mach-dove/include/mach/irqs.h b/arch/arm/mach-dove/include/mach/irqs.h
index 3f29e6bca058..8ff0fa8b4fcd 100644
--- a/arch/arm/mach-dove/include/mach/irqs.h
+++ b/arch/arm/mach-dove/include/mach/irqs.h
@@ -90,7 +90,7 @@
#define NR_PMU_IRQS 7
#define IRQ_DOVE_RTC (IRQ_DOVE_PMU_START + 5)
-#define NR_IRQS (IRQ_DOVE_PMU_START + NR_PMU_IRQS)
+#define DOVE_NR_IRQS (IRQ_DOVE_PMU_START + NR_PMU_IRQS)
#endif
diff --git a/arch/arm/mach-dove/include/mach/pm.h b/arch/arm/mach-dove/include/mach/pm.h
index b47f75038686..9834ba10cd13 100644
--- a/arch/arm/mach-dove/include/mach/pm.h
+++ b/arch/arm/mach-dove/include/mach/pm.h
@@ -63,7 +63,7 @@ static inline int pmu_to_irq(int pin)
static inline int irq_to_pmu(int irq)
{
- if (IRQ_DOVE_PMU_START <= irq && irq < NR_IRQS)
+ if (IRQ_DOVE_PMU_START <= irq && irq < DOVE_NR_IRQS)
return irq - IRQ_DOVE_PMU_START;
return -EINVAL;
diff --git a/arch/arm/mach-dove/irq.c b/arch/arm/mach-dove/irq.c
index b1c7cae1486b..ad785d34c1e7 100644
--- a/arch/arm/mach-dove/irq.c
+++ b/arch/arm/mach-dove/irq.c
@@ -160,7 +160,7 @@ void __init dove_init_irq(void)
writel(0, PMU_INTERRUPT_MASK);
writel(0, PMU_INTERRUPT_CAUSE);
- for (i = IRQ_DOVE_PMU_START; i < NR_IRQS; i++) {
+ for (i = IRQ_DOVE_PMU_START; i < DOVE_NR_IRQS; i++) {
irq_set_chip_and_handler(i, &pmu_irq_chip, handle_level_irq);
irq_set_status_flags(i, IRQ_LEVEL);
irq_clear_status_flags(i, IRQ_NOREQUEST);
diff --git a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
index 1f2ef98b37c6..1607fd5e206e 100644
--- a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
+++ b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
@@ -146,6 +146,7 @@ subsys_initcall(wxl_pci_init);
MACHINE_START(TERASTATION_WXL, "Buffalo Nas WXL")
/* Maintainer: Sebastien Requiem <sebastien@requiem.fr> */
.atag_offset = 0x100,
+ .nr_irqs = MV78XX0_NR_IRQS,
.init_machine = wxl_init,
.map_io = mv78xx0_map_io,
.init_early = mv78xx0_init_early,
diff --git a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
index 4e0f22b30bc8..0c5dd6fceb6b 100644
--- a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
+++ b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
@@ -94,6 +94,7 @@ subsys_initcall(db78x00_pci_init);
MACHINE_START(DB78X00_BP, "Marvell DB-78x00-BP Development Board")
/* Maintainer: Lennert Buytenhek <buytenh@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = MV78XX0_NR_IRQS,
.init_machine = db78x00_init,
.map_io = mv78xx0_map_io,
.init_early = mv78xx0_init_early,
diff --git a/arch/arm/mach-mv78xx0/include/mach/irqs.h b/arch/arm/mach-mv78xx0/include/mach/irqs.h
index fa1d422196c2..ac96bcf3d268 100644
--- a/arch/arm/mach-mv78xx0/include/mach/irqs.h
+++ b/arch/arm/mach-mv78xx0/include/mach/irqs.h
@@ -88,7 +88,7 @@
#define IRQ_MV78XX0_GPIO_START 96
#define NR_GPIO_IRQS 32
-#define NR_IRQS (IRQ_MV78XX0_GPIO_START + NR_GPIO_IRQS)
+#define MV78XX0_NR_IRQS (IRQ_MV78XX0_GPIO_START + NR_GPIO_IRQS)
#endif
diff --git a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
index 723748d8ba7d..0972d5f9b46d 100644
--- a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
+++ b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
@@ -12,6 +12,8 @@
#ifndef __ASM_ARCH_MV78XX0_H
#define __ASM_ARCH_MV78XX0_H
+#include "irqs.h"
+
/*
* Marvell MV78xx0 address maps.
*
diff --git a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
index d2d06f3957f3..a0a3debf8c21 100644
--- a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
+++ b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
@@ -79,6 +79,7 @@ subsys_initcall(rd78x00_pci_init);
MACHINE_START(RD78X00_MASA, "Marvell RD-78x00-MASA Development Board")
/* Maintainer: Lennert Buytenhek <buytenh@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = MV78XX0_NR_IRQS,
.init_machine = rd78x00_masa_init,
.map_io = mv78xx0_map_io,
.init_early = mv78xx0_init_early,
diff --git a/arch/arm/mach-orion5x/db88f5281-setup.c b/arch/arm/mach-orion5x/db88f5281-setup.c
index dc01c4ffc9a8..698528fee39d 100644
--- a/arch/arm/mach-orion5x/db88f5281-setup.c
+++ b/arch/arm/mach-orion5x/db88f5281-setup.c
@@ -369,6 +369,7 @@ static void __init db88f5281_init(void)
MACHINE_START(DB88F5281, "Marvell Orion-2 Development Board")
/* Maintainer: Tzachi Perelstein <tzachi@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = db88f5281_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c
index bc279a853075..96a8c50e7223 100644
--- a/arch/arm/mach-orion5x/dns323-setup.c
+++ b/arch/arm/mach-orion5x/dns323-setup.c
@@ -666,6 +666,7 @@ static void __init dns323_init(void)
MACHINE_START(DNS323, "D-Link DNS-323")
/* Maintainer: Herbert Valerio Riedel <hvr@gnu.org> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = dns323_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/include/mach/irqs.h b/arch/arm/mach-orion5x/include/mach/irqs.h
index 2431d9923427..4b8703cd1ccb 100644
--- a/arch/arm/mach-orion5x/include/mach/irqs.h
+++ b/arch/arm/mach-orion5x/include/mach/irqs.h
@@ -54,7 +54,7 @@
#define IRQ_ORION5X_GPIO_START 33
#define NR_GPIO_IRQS 32
-#define NR_IRQS (IRQ_ORION5X_GPIO_START + NR_GPIO_IRQS)
+#define ORION5X_NR_IRQS (IRQ_ORION5X_GPIO_START + NR_GPIO_IRQS)
#endif
diff --git a/arch/arm/mach-orion5x/include/mach/orion5x.h b/arch/arm/mach-orion5x/include/mach/orion5x.h
index b78ff3248868..7be7c2e05465 100644
--- a/arch/arm/mach-orion5x/include/mach/orion5x.h
+++ b/arch/arm/mach-orion5x/include/mach/orion5x.h
@@ -14,6 +14,8 @@
#ifndef __ASM_ARCH_ORION5X_H
#define __ASM_ARCH_ORION5X_H
+#include <mach/irqs.h>
+
/*****************************************************************************
* Orion Address Maps
*
diff --git a/arch/arm/mach-orion5x/kurobox_pro-setup.c b/arch/arm/mach-orion5x/kurobox_pro-setup.c
index fe6a48a325e8..b1ebb3721638 100644
--- a/arch/arm/mach-orion5x/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion5x/kurobox_pro-setup.c
@@ -383,6 +383,7 @@ static void __init kurobox_pro_init(void)
MACHINE_START(KUROBOX_PRO, "Buffalo/Revogear Kurobox Pro")
/* Maintainer: Ronen Shitrit <rshitrit@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = kurobox_pro_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
@@ -397,6 +398,7 @@ MACHINE_END
MACHINE_START(LINKSTATION_PRO, "Buffalo Linkstation Pro/Live")
/* Maintainer: Byron Bradley <byron.bbradley@gmail.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = kurobox_pro_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/ls-chl-setup.c b/arch/arm/mach-orion5x/ls-chl-setup.c
index 028ea038d404..cb8720e6d02b 100644
--- a/arch/arm/mach-orion5x/ls-chl-setup.c
+++ b/arch/arm/mach-orion5x/ls-chl-setup.c
@@ -320,6 +320,7 @@ static void __init lschl_init(void)
MACHINE_START(LINKSTATION_LSCHL, "Buffalo Linkstation LiveV3 (LS-CHL)")
/* Maintainer: Ash Hughes <ashley.hughes@blueyonder.co.uk> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = lschl_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/ls_hgl-setup.c b/arch/arm/mach-orion5x/ls_hgl-setup.c
index 32b7129b767d..0ddfa23821ec 100644
--- a/arch/arm/mach-orion5x/ls_hgl-setup.c
+++ b/arch/arm/mach-orion5x/ls_hgl-setup.c
@@ -267,6 +267,7 @@ static void __init ls_hgl_init(void)
MACHINE_START(LINKSTATION_LS_HGL, "Buffalo Linkstation LS-HGL")
/* Maintainer: Zhu Qingsen <zhuqs@cn.fujistu.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = ls_hgl_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/mv2120-setup.c b/arch/arm/mach-orion5x/mv2120-setup.c
index e032f01da49e..11985dc45c47 100644
--- a/arch/arm/mach-orion5x/mv2120-setup.c
+++ b/arch/arm/mach-orion5x/mv2120-setup.c
@@ -232,6 +232,7 @@ static void __init mv2120_init(void)
MACHINE_START(MV2120, "HP Media Vault mv2120")
/* Maintainer: Martin Michlmayr <tbm@cyrius.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = mv2120_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/net2big-setup.c b/arch/arm/mach-orion5x/net2big-setup.c
index ba73dc7ffb9e..e91abcc2213d 100644
--- a/arch/arm/mach-orion5x/net2big-setup.c
+++ b/arch/arm/mach-orion5x/net2big-setup.c
@@ -423,6 +423,7 @@ static void __init net2big_init(void)
/* Warning: LaCie use a wrong mach-type (0x20e=526) in their bootloader. */
MACHINE_START(NET2BIG, "LaCie 2Big Network")
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = net2big_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
index 213b3e143c57..69a6e5b20b0b 100644
--- a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
@@ -169,6 +169,7 @@ subsys_initcall(rd88f5181l_fxo_pci_init);
MACHINE_START(RD88F5181L_FXO, "Marvell Orion-VoIP FXO Reference Design")
/* Maintainer: Nicolas Pitre <nico@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = rd88f5181l_fxo_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
index 594800e1d691..e19f8b7f87b3 100644
--- a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
@@ -181,6 +181,7 @@ subsys_initcall(rd88f5181l_ge_pci_init);
MACHINE_START(RD88F5181L_GE, "Marvell Orion-VoIP GE Reference Design")
/* Maintainer: Lennert Buytenhek <buytenh@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = rd88f5181l_ge_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/rd88f5182-setup.c b/arch/arm/mach-orion5x/rd88f5182-setup.c
index b576ef5f18a1..180a4f972d3d 100644
--- a/arch/arm/mach-orion5x/rd88f5182-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5182-setup.c
@@ -281,6 +281,7 @@ static void __init rd88f5182_init(void)
MACHINE_START(RD88F5182, "Marvell Orion-NAS Reference Design")
/* Maintainer: Ronen Shitrit <rshitrit@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = rd88f5182_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
index 78a1e6ab1b9d..cc5bdbe70fa9 100644
--- a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
+++ b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
@@ -119,6 +119,7 @@ subsys_initcall(rd88f6183ap_ge_pci_init);
MACHINE_START(RD88F6183AP_GE, "Marvell Orion-1-90 AP GE Reference Design")
/* Maintainer: Lennert Buytenhek <buytenh@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = rd88f6183ap_ge_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/terastation_pro2-setup.c b/arch/arm/mach-orion5x/terastation_pro2-setup.c
index 12086745c9fd..ad2057514deb 100644
--- a/arch/arm/mach-orion5x/terastation_pro2-setup.c
+++ b/arch/arm/mach-orion5x/terastation_pro2-setup.c
@@ -359,6 +359,7 @@ static void __init tsp2_init(void)
MACHINE_START(TERASTATION_PRO2, "Buffalo Terastation Pro II/Live")
/* Maintainer: Sylver Bruneau <sylver.bruneau@googlemail.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = tsp2_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/ts209-setup.c b/arch/arm/mach-orion5x/ts209-setup.c
index c725b7cb9875..1cfc364c9b1e 100644
--- a/arch/arm/mach-orion5x/ts209-setup.c
+++ b/arch/arm/mach-orion5x/ts209-setup.c
@@ -324,6 +324,7 @@ static void __init qnap_ts209_init(void)
MACHINE_START(TS209, "QNAP TS-109/TS-209")
/* Maintainer: Byron Bradley <byron.bbradley@gmail.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = qnap_ts209_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/ts409-setup.c b/arch/arm/mach-orion5x/ts409-setup.c
index cf2ab531cabc..bc985cf44625 100644
--- a/arch/arm/mach-orion5x/ts409-setup.c
+++ b/arch/arm/mach-orion5x/ts409-setup.c
@@ -313,6 +313,7 @@ static void __init qnap_ts409_init(void)
MACHINE_START(TS409, "QNAP TS-409")
/* Maintainer: Sylver Bruneau <sylver.bruneau@gmail.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = qnap_ts409_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/ts78xx-setup.c b/arch/arm/mach-orion5x/ts78xx-setup.c
index 1b704d35cf5b..5a61a66ce012 100644
--- a/arch/arm/mach-orion5x/ts78xx-setup.c
+++ b/arch/arm/mach-orion5x/ts78xx-setup.c
@@ -615,6 +615,7 @@ static void __init ts78xx_init(void)
MACHINE_START(TS78XX, "Technologic Systems TS-78xx SBC")
/* Maintainer: Alexander Clouter <alex@digriz.org.uk> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = ts78xx_init,
.map_io = ts78xx_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/wnr854t-setup.c b/arch/arm/mach-orion5x/wnr854t-setup.c
index 80a56ee245b3..bcc6e12dcdac 100644
--- a/arch/arm/mach-orion5x/wnr854t-setup.c
+++ b/arch/arm/mach-orion5x/wnr854t-setup.c
@@ -174,6 +174,7 @@ subsys_initcall(wnr854t_pci_init);
MACHINE_START(WNR854T, "Netgear WNR854T")
/* Maintainer: Imre Kaloz <kaloz@openwrt.org> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = wnr854t_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
diff --git a/arch/arm/mach-orion5x/wrt350n-v2-setup.c b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
index 670e30dc0d1b..4068d7a3e466 100644
--- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c
+++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
@@ -262,6 +262,7 @@ subsys_initcall(wrt350n_v2_pci_init);
MACHINE_START(WRT350N_V2, "Linksys WRT350N v2")
/* Maintainer: Lennert Buytenhek <buytenh@marvell.com> */
.atag_offset = 0x100,
+ .nr_irqs = ORION5X_NR_IRQS,
.init_machine = wrt350n_v2_init,
.map_io = orion5x_map_io,
.init_early = orion5x_init_early,
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 5/5] ARM: orion: multiplatform support |
| Message-ID | <qyKEb-8h2-27@gated-at.bofh.it> |
| In reply to | #1277512 |
All three remaining orion based platforms are now ready to
be enabled for multiplatform support, this patch does the
switch over by modifying the Kconfig file, the defconfig and
removing the last mach/*.h header that becomes obsolete with
this.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/Kconfig | 46 -------------------------
arch/arm/configs/dove_defconfig | 2 ++
arch/arm/configs/mv78xx0_defconfig | 3 ++
arch/arm/configs/orion5x_defconfig | 3 ++
arch/arm/mach-dove/Kconfig | 15 +++++---
arch/arm/mach-dove/Makefile | 2 ++
arch/arm/mach-dove/include/mach/uncompress.h | 34 ------------------
arch/arm/mach-mv78xx0/Kconfig | 15 +++++---
arch/arm/mach-mv78xx0/Makefile | 2 ++
arch/arm/mach-mv78xx0/include/mach/uncompress.h | 44 -----------------------
arch/arm/mach-orion5x/Kconfig | 18 +++++++---
arch/arm/mach-orion5x/Makefile | 2 ++
arch/arm/mach-orion5x/include/mach/uncompress.h | 46 -------------------------
13 files changed, 50 insertions(+), 182 deletions(-)
delete mode 100644 arch/arm/mach-dove/include/mach/uncompress.h
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/uncompress.h
delete mode 100644 arch/arm/mach-orion5x/include/mach/uncompress.h
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index efb94d4b71c1..987911008610 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -462,52 +462,6 @@ config ARCH_IXP4XX
help
Support for Intel's IXP4XX (XScale) family of processors.
-config ARCH_DOVE
- bool "Marvell Dove"
- select ARCH_REQUIRE_GPIOLIB
- select CPU_PJ4
- select GENERIC_CLOCKEVENTS
- select MIGHT_HAVE_PCI
- select MULTI_IRQ_HANDLER
- select MVEBU_MBUS
- select PINCTRL
- select PINCTRL_DOVE
- select PLAT_ORION_LEGACY
- select SPARSE_IRQ
- help
- Support for the Marvell Dove SoC 88AP510
-
-config ARCH_MV78XX0
- bool "Marvell MV78xx0"
- select ARCH_REQUIRE_GPIOLIB
- select CPU_FEROCEON
- select GENERIC_CLOCKEVENTS
- select MVEBU_MBUS
- select MULTI_IRQ_HANDLER
- select PCI
- select PLAT_ORION_LEGACY
- select SPARSE_IRQ
- help
- Support for the following Marvell MV78xx0 series SoCs:
- MV781x0, MV782x0.
-
-config ARCH_ORION5X
- bool "Marvell Orion"
- depends on MMU
- select ARCH_REQUIRE_GPIOLIB
- select CPU_FEROCEON
- select GENERIC_CLOCKEVENTS
- select MVEBU_MBUS
- select MULTI_IRQ_HANDLER
- select PCI
- select PLAT_ORION_LEGACY
- select MULTI_IRQ_HANDLER
- select SPARSE_IRQ
- help
- Support for the following Marvell Orion 5x series SoCs:
- Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
- Orion-2 (5281), Orion-1-90 (6183).
-
config ARCH_KS8695
bool "Micrel/Kendin KS8695"
select ARCH_REQUIRE_GPIOLIB
diff --git a/arch/arm/configs/dove_defconfig b/arch/arm/configs/dove_defconfig
index 701677f9248c..8a5409cafb49 100644
--- a/arch/arm/configs/dove_defconfig
+++ b/arch/arm/configs/dove_defconfig
@@ -9,6 +9,8 @@ CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ARCH_MULTI_V6 is not set
+CONFIG_ARCH_MULTI_V7=y
CONFIG_ARCH_DOVE=y
CONFIG_MACH_DOVE_DB=y
CONFIG_MACH_CM_A510=y
diff --git a/arch/arm/configs/mv78xx0_defconfig b/arch/arm/configs/mv78xx0_defconfig
index 85d10d2e3d66..fcdffa7d9d78 100644
--- a/arch/arm/configs/mv78xx0_defconfig
+++ b/arch/arm/configs/mv78xx0_defconfig
@@ -11,6 +11,9 @@ CONFIG_KPROBES=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
+CONFIG_ARCH_MULTI_V5=y
+# CONFIG_ARCH_MULTI_V6 is not set
+# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_MV78XX0=y
CONFIG_MACH_DB78X00_BP=y
CONFIG_MACH_RD78X00_MASA=y
diff --git a/arch/arm/configs/orion5x_defconfig b/arch/arm/configs/orion5x_defconfig
index 8099417a9466..6ddca8875cb5 100644
--- a/arch/arm/configs/orion5x_defconfig
+++ b/arch/arm/configs/orion5x_defconfig
@@ -13,6 +13,9 @@ CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
CONFIG_BSD_DISKLABEL=y
+CONFIG_ARCH_MULTI_V5=y
+# CONFIG_ARCH_MULTI_V6 is not set
+# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_ORION5X=y
CONFIG_ARCH_ORION5X_DT=y
CONFIG_MACH_DB88F5281=y
diff --git a/arch/arm/mach-dove/Kconfig b/arch/arm/mach-dove/Kconfig
index d8c439c89ea9..331591c4f9cc 100644
--- a/arch/arm/mach-dove/Kconfig
+++ b/arch/arm/mach-dove/Kconfig
@@ -1,6 +1,15 @@
-if ARCH_DOVE
+menuconfig ARCH_DOVE
+ bool "Marvell Dove" if ARCH_MULTI_V7
+ select ARCH_REQUIRE_GPIOLIB
+ select CPU_PJ4
+ select MVEBU_MBUS
+ select PINCTRL
+ select PINCTRL_DOVE
+ select PLAT_ORION_LEGACY
+ help
+ Support for the Marvell Dove SoC 88AP510
-menu "Marvell Dove Implementations"
+if ARCH_DOVE
config DOVE_LEGACY
bool
@@ -20,6 +29,4 @@ config MACH_CM_A510
Say 'Y' here if you want your kernel to support the
CompuLab CM-A510 Board.
-endmenu
-
endif
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index b608a21919fb..2ed6970cbacc 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -1,3 +1,5 @@
+ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/plat-orion/include
+
obj-y += common.o
obj-$(CONFIG_DOVE_LEGACY) += irq.o mpp.o
obj-$(CONFIG_PCI) += pcie.o
diff --git a/arch/arm/mach-dove/include/mach/uncompress.h b/arch/arm/mach-dove/include/mach/uncompress.h
deleted file mode 100644
index 7a4bd8838036..000000000000
--- a/arch/arm/mach-dove/include/mach/uncompress.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
-
-#define UART_THR ((volatile unsigned char *)(UART0_PHYS_BASE + 0x0))
-#define UART_LSR ((volatile unsigned char *)(UART0_PHYS_BASE + 0x14))
-
-#define LSR_THRE 0x20
-
-static void putc(const char c)
-{
- int i;
-
- for (i = 0; i < 0x1000; i++) {
- /* Transmit fifo not full? */
- if (*UART_LSR & LSR_THRE)
- break;
- }
-
- *UART_THR = c;
-}
-
-static void flush(void)
-{
-}
-
-/*
- * nothing to do
- */
-#define arch_decomp_setup()
diff --git a/arch/arm/mach-mv78xx0/Kconfig b/arch/arm/mach-mv78xx0/Kconfig
index f2d309d0619e..a32575fa3fba 100644
--- a/arch/arm/mach-mv78xx0/Kconfig
+++ b/arch/arm/mach-mv78xx0/Kconfig
@@ -1,6 +1,15 @@
-if ARCH_MV78XX0
+menuconfig ARCH_MV78XX0
+ bool "Marvell MV78xx0" if ARCH_MULTI_V5
+ select ARCH_REQUIRE_GPIOLIB
+ select CPU_FEROCEON
+ select MVEBU_MBUS
+ select PCI
+ select PLAT_ORION_LEGACY
+ help
+ Support for the following Marvell MV78xx0 series SoCs:
+ MV781x0, MV782x0.
-menu "Marvell MV78xx0 Implementations"
+if ARCH_MV78XX0
config MACH_DB78X00_BP
bool "Marvell DB-78x00-BP Development Board"
@@ -20,6 +29,4 @@ config MACH_TERASTATION_WXL
Say 'Y' here if you want your kernel to support the
Buffalo WXL Nas.
-endmenu
-
endif
diff --git a/arch/arm/mach-mv78xx0/Makefile b/arch/arm/mach-mv78xx0/Makefile
index 7cd04634d302..ddb3aa98a3c7 100644
--- a/arch/arm/mach-mv78xx0/Makefile
+++ b/arch/arm/mach-mv78xx0/Makefile
@@ -1,3 +1,5 @@
+ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/plat-orion/include
+
obj-y += common.o mpp.o irq.o pcie.o
obj-$(CONFIG_MACH_DB78X00_BP) += db78x00-bp-setup.o
obj-$(CONFIG_MACH_RD78X00_MASA) += rd78x00-masa-setup.o
diff --git a/arch/arm/mach-mv78xx0/include/mach/uncompress.h b/arch/arm/mach-mv78xx0/include/mach/uncompress.h
deleted file mode 100644
index 2787ef392262..000000000000
--- a/arch/arm/mach-mv78xx0/include/mach/uncompress.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#include <linux/serial_reg.h>
-
-#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
-#define SERIAL_BASE ((unsigned char *)UART0_PHYS_BASE)
-
-static void putc(const char c)
-{
- unsigned char *base = SERIAL_BASE;
- int i;
-
- for (i = 0; i < 0x1000; i++) {
- if (base[UART_LSR << 2] & UART_LSR_THRE)
- break;
- barrier();
- }
-
- base[UART_TX << 2] = c;
-}
-
-static void flush(void)
-{
- unsigned char *base = SERIAL_BASE;
- unsigned char mask;
- int i;
-
- mask = UART_LSR_TEMT | UART_LSR_THRE;
-
- for (i = 0; i < 0x1000; i++) {
- if ((base[UART_LSR << 2] & mask) == mask)
- break;
- barrier();
- }
-}
-
-/*
- * nothing to do
- */
-#define arch_decomp_setup()
diff --git a/arch/arm/mach-orion5x/Kconfig b/arch/arm/mach-orion5x/Kconfig
index 66f1c952c048..a9ad95f000a1 100644
--- a/arch/arm/mach-orion5x/Kconfig
+++ b/arch/arm/mach-orion5x/Kconfig
@@ -1,6 +1,18 @@
-if ARCH_ORION5X
+menuconfig ARCH_ORION5X
+ bool "Marvell Orion"
+ depends on MMU && ARCH_MULTI_V5
+ select ARCH_REQUIRE_GPIOLIB
+ select CPU_FEROCEON
+ select GENERIC_CLOCKEVENTS
+ select MVEBU_MBUS
+ select PCI
+ select PLAT_ORION_LEGACY
+ help
+ Support for the following Marvell Orion 5x series SoCs:
+ Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
+ Orion-2 (5281), Orion-1-90 (6183).
-menu "Orion Implementations"
+if ARCH_ORION5X
config ARCH_ORION5X_DT
bool "Marvell Orion5x Flattened Device Tree"
@@ -163,6 +175,4 @@ config MACH_RD88F6183AP_GE
Say 'Y' here if you want your kernel to support the
Marvell Orion-1-90 (88F6183) AP GE RD.
-endmenu
-
endif
diff --git a/arch/arm/mach-orion5x/Makefile b/arch/arm/mach-orion5x/Makefile
index a1e0fbe6a7a1..4b2502b4ca0d 100644
--- a/arch/arm/mach-orion5x/Makefile
+++ b/arch/arm/mach-orion5x/Makefile
@@ -1,3 +1,5 @@
+ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/plat-orion/include
+
obj-y += common.o pci.o irq.o mpp.o
obj-$(CONFIG_MACH_DB88F5281) += db88f5281-setup.o
obj-$(CONFIG_MACH_RD88F5182) += rd88f5182-setup.o
diff --git a/arch/arm/mach-orion5x/include/mach/uncompress.h b/arch/arm/mach-orion5x/include/mach/uncompress.h
deleted file mode 100644
index 25e5cb98fecc..000000000000
--- a/arch/arm/mach-orion5x/include/mach/uncompress.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Tzachi Perelstein <tzachi@marvell.com>
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#include <linux/serial_reg.h>
-
-#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
-#define SERIAL_BASE ((unsigned char *)UART0_PHYS_BASE)
-
-static void putc(const char c)
-{
- unsigned char *base = SERIAL_BASE;
- int i;
-
- for (i = 0; i < 0x1000; i++) {
- if (base[UART_LSR << 2] & UART_LSR_THRE)
- break;
- barrier();
- }
-
- base[UART_TX << 2] = c;
-}
-
-static void flush(void)
-{
- unsigned char *base = SERIAL_BASE;
- unsigned char mask;
- int i;
-
- mask = UART_LSR_TEMT | UART_LSR_THRE;
-
- for (i = 0; i < 0x1000; i++) {
- if ((base[UART_LSR << 2] & mask) == mask)
- break;
- barrier();
- }
-}
-
-/*
- * nothing to do
- */
-#define arch_decomp_setup()
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 17:00 +0100 |
| Subject | [PATCH 4/5] ARM: orion: clean up mach/*.h headers |
| Message-ID | <qyKEc-8h2-55@gated-at.bofh.it> |
| In reply to | #1277512 |
This is a simple move of all header files that are no longer
included by anything else from the include/mach directory
to the platform directory itself, for mv78xx0, dove, and orion5x,
as preparation for multiplatform support.
The mach/uncompress.h headers are left in place for now,
and are mildly modified to be independent of the other
headers. They will be removed entirely when ARCH_MULTIPLATFORM
gets enabled and they become obsolete.
Rather than updating the path names inside of the comments
of each header, I delete those comments to avoid having to
update them again, should they get moved or copied another
time.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/mach-dove/{include/mach => }/bridge-regs.h | 4 +---
arch/arm/mach-dove/cm-a510.c | 3 +--
arch/arm/mach-dove/common.c | 4 ++--
arch/arm/mach-dove/dove-db-setup.c | 2 +-
arch/arm/mach-dove/{include/mach => }/dove.h | 4 +---
arch/arm/mach-dove/include/mach/hardware.h | 19 -------------------
arch/arm/mach-dove/include/mach/uncompress.h | 8 +++-----
arch/arm/mach-dove/irq.c | 8 +++++---
arch/arm/mach-dove/{include/mach => }/irqs.h | 2 --
arch/arm/mach-dove/mpp.c | 2 +-
arch/arm/mach-dove/pcie.c | 4 ++--
arch/arm/mach-dove/{include/mach => }/pm.h | 4 +---
.../arm/mach-mv78xx0/{include/mach => }/bridge-regs.h | 4 +---
arch/arm/mach-mv78xx0/buffalo-wxl-setup.c | 2 +-
arch/arm/mach-mv78xx0/common.c | 4 ++--
arch/arm/mach-mv78xx0/db78x00-bp-setup.c | 2 +-
arch/arm/mach-mv78xx0/include/mach/hardware.h | 14 --------------
arch/arm/mach-mv78xx0/include/mach/uncompress.h | 4 +---
arch/arm/mach-mv78xx0/irq.c | 2 +-
arch/arm/mach-mv78xx0/{include/mach => }/irqs.h | 2 --
arch/arm/mach-mv78xx0/mpp.c | 2 +-
arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h | 2 --
arch/arm/mach-mv78xx0/pcie.c | 2 +-
arch/arm/mach-mv78xx0/rd78x00-masa-setup.c | 2 +-
arch/arm/mach-orion5x/board-d2net.c | 2 +-
arch/arm/mach-orion5x/board-dt.c | 4 ++--
arch/arm/mach-orion5x/board-mss2.c | 4 ++--
arch/arm/mach-orion5x/board-rd88f5182.c | 2 +-
.../arm/mach-orion5x/{include/mach => }/bridge-regs.h | 4 +---
arch/arm/mach-orion5x/common.c | 6 +++---
arch/arm/mach-orion5x/db88f5281-setup.c | 2 +-
arch/arm/mach-orion5x/dns323-setup.c | 2 +-
arch/arm/mach-orion5x/include/mach/hardware.h | 14 --------------
arch/arm/mach-orion5x/include/mach/uncompress.h | 4 +---
arch/arm/mach-orion5x/irq.c | 2 +-
arch/arm/mach-orion5x/{include/mach => }/irqs.h | 2 --
arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 +-
arch/arm/mach-orion5x/ls-chl-setup.c | 2 +-
arch/arm/mach-orion5x/ls_hgl-setup.c | 2 +-
arch/arm/mach-orion5x/mpp.c | 2 +-
arch/arm/mach-orion5x/mv2120-setup.c | 2 +-
arch/arm/mach-orion5x/net2big-setup.c | 2 +-
arch/arm/mach-orion5x/{include/mach => }/orion5x.h | 4 +---
arch/arm/mach-orion5x/pci.c | 2 +-
arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c | 2 +-
arch/arm/mach-orion5x/rd88f5181l-ge-setup.c | 2 +-
arch/arm/mach-orion5x/rd88f5182-setup.c | 2 +-
arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c | 2 +-
arch/arm/mach-orion5x/terastation_pro2-setup.c | 2 +-
arch/arm/mach-orion5x/ts209-setup.c | 2 +-
arch/arm/mach-orion5x/ts409-setup.c | 2 +-
arch/arm/mach-orion5x/ts78xx-setup.c | 2 +-
arch/arm/mach-orion5x/tsx09-common.c | 2 +-
arch/arm/mach-orion5x/wnr854t-setup.c | 2 +-
arch/arm/mach-orion5x/wrt350n-v2-setup.c | 2 +-
arch/arm/plat-orion/irq.c | 1 -
arch/arm/plat-orion/mpp.c | 1 -
57 files changed, 61 insertions(+), 135 deletions(-)
rename arch/arm/mach-dove/{include/mach => }/bridge-regs.h (96%)
rename arch/arm/mach-dove/{include/mach => }/dove.h (99%)
delete mode 100644 arch/arm/mach-dove/include/mach/hardware.h
rename arch/arm/mach-dove/{include/mach => }/irqs.h (98%)
rename arch/arm/mach-dove/{include/mach => }/pm.h (97%)
rename arch/arm/mach-mv78xx0/{include/mach => }/bridge-regs.h (92%)
delete mode 100644 arch/arm/mach-mv78xx0/include/mach/hardware.h
rename arch/arm/mach-mv78xx0/{include/mach => }/irqs.h (98%)
rename arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h (98%)
rename arch/arm/mach-orion5x/{include/mach => }/bridge-regs.h (92%)
delete mode 100644 arch/arm/mach-orion5x/include/mach/hardware.h
rename arch/arm/mach-orion5x/{include/mach => }/irqs.h (97%)
rename arch/arm/mach-orion5x/{include/mach => }/orion5x.h (98%)
diff --git a/arch/arm/mach-dove/include/mach/bridge-regs.h b/arch/arm/mach-dove/bridge-regs.h
similarity index 96%
rename from arch/arm/mach-dove/include/mach/bridge-regs.h
rename to arch/arm/mach-dove/bridge-regs.h
index f4a5b34489b7..ace0b0bfbf11 100644
--- a/arch/arm/mach-dove/include/mach/bridge-regs.h
+++ b/arch/arm/mach-dove/bridge-regs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-dove/include/mach/bridge-regs.h
- *
* Mbus-L to Mbus Bridge Registers
*
* This file is licensed under the terms of the GNU General Public
@@ -11,7 +9,7 @@
#ifndef __ASM_ARCH_BRIDGE_REGS_H
#define __ASM_ARCH_BRIDGE_REGS_H
-#include <mach/dove.h>
+#include "dove.h"
#define CPU_CONFIG (BRIDGE_VIRT_BASE + 0x0000)
diff --git a/arch/arm/mach-dove/cm-a510.c b/arch/arm/mach-dove/cm-a510.c
index b9a7c33db29a..9f25c993d863 100644
--- a/arch/arm/mach-dove/cm-a510.c
+++ b/arch/arm/mach-dove/cm-a510.c
@@ -22,8 +22,7 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/dove.h>
-
+#include "dove.h"
#include "common.h"
static struct mv643xx_eth_platform_data cm_a510_ge00_data = {
diff --git a/arch/arm/mach-dove/common.c b/arch/arm/mach-dove/common.c
index 0d1a89298ece..910788cd122d 100644
--- a/arch/arm/mach-dove/common.c
+++ b/arch/arm/mach-dove/common.c
@@ -20,11 +20,11 @@
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
#include <asm/mach/time.h>
-#include <mach/bridge-regs.h>
-#include <mach/pm.h>
#include <plat/common.h>
#include <plat/irq.h>
#include <plat/time.h>
+#include "bridge-regs.h"
+#include "pm.h"
#include "common.h"
/* These can go away once Dove uses the mvebu-mbus DT binding */
diff --git a/arch/arm/mach-dove/dove-db-setup.c b/arch/arm/mach-dove/dove-db-setup.c
index bcb678fd2415..6b9ac97f2d0f 100644
--- a/arch/arm/mach-dove/dove-db-setup.c
+++ b/arch/arm/mach-dove/dove-db-setup.c
@@ -24,7 +24,7 @@
#include <linux/gpio.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/dove.h>
+#include "dove.h"
#include "common.h"
static struct mv643xx_eth_platform_data dove_db_ge00_data = {
diff --git a/arch/arm/mach-dove/include/mach/dove.h b/arch/arm/mach-dove/dove.h
similarity index 99%
rename from arch/arm/mach-dove/include/mach/dove.h
rename to arch/arm/mach-dove/dove.h
index 00f45458b3ec..539e735f968d 100644
--- a/arch/arm/mach-dove/include/mach/dove.h
+++ b/arch/arm/mach-dove/dove.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-dove/include/mach/dove.h
- *
* Generic definitions for Marvell Dove 88AP510 SoC
*
* This file is licensed under the terms of the GNU General Public
@@ -11,7 +9,7 @@
#ifndef __ASM_ARCH_DOVE_H
#define __ASM_ARCH_DOVE_H
-#include <mach/irqs.h>
+#include "irqs.h"
/*
* Marvell Dove address maps.
diff --git a/arch/arm/mach-dove/include/mach/hardware.h b/arch/arm/mach-dove/include/mach/hardware.h
deleted file mode 100644
index f1368b9a8ece..000000000000
--- a/arch/arm/mach-dove/include/mach/hardware.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * arch/arm/mach-dove/include/mach/hardware.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef __ASM_ARCH_HARDWARE_H
-#define __ASM_ARCH_HARDWARE_H
-
-#include "dove.h"
-
-/* Macros below are required for compatibility with PXA AC'97 driver. */
-#define __REG(x) (*((volatile u32 *)((x) - DOVE_SB_REGS_PHYS_BASE + \
- DOVE_SB_REGS_VIRT_BASE)))
-#define __PREG(x) (((u32)&(x)) - DOVE_SB_REGS_VIRT_BASE + \
- DOVE_SB_REGS_PHYS_BASE)
-#endif
diff --git a/arch/arm/mach-dove/include/mach/uncompress.h b/arch/arm/mach-dove/include/mach/uncompress.h
index 5c8ae9b9d39a..7a4bd8838036 100644
--- a/arch/arm/mach-dove/include/mach/uncompress.h
+++ b/arch/arm/mach-dove/include/mach/uncompress.h
@@ -1,15 +1,13 @@
/*
- * arch/arm/mach-dove/include/mach/uncompress.h
- *
* This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*/
-#include <mach/dove.h>
+#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
-#define UART_THR ((volatile unsigned char *)(DOVE_UART0_PHYS_BASE + 0x0))
-#define UART_LSR ((volatile unsigned char *)(DOVE_UART0_PHYS_BASE + 0x14))
+#define UART_THR ((volatile unsigned char *)(UART0_PHYS_BASE + 0x0))
+#define UART_LSR ((volatile unsigned char *)(UART0_PHYS_BASE + 0x14))
#define LSR_THRE 0x20
diff --git a/arch/arm/mach-dove/irq.c b/arch/arm/mach-dove/irq.c
index ad785d34c1e7..ab38ad47716a 100644
--- a/arch/arm/mach-dove/irq.c
+++ b/arch/arm/mach-dove/irq.c
@@ -15,11 +15,13 @@
#include <linux/io.h>
#include <asm/exception.h>
#include <asm/mach/arch.h>
-#include <plat/irq.h>
#include <asm/mach/irq.h>
-#include <mach/pm.h>
-#include <mach/bridge-regs.h>
+
+#include <plat/irq.h>
#include <plat/orion-gpio.h>
+
+#include "pm.h"
+#include "bridge-regs.h"
#include "common.h"
static void pmu_irq_mask(struct irq_data *d)
diff --git a/arch/arm/mach-dove/include/mach/irqs.h b/arch/arm/mach-dove/irqs.h
similarity index 98%
rename from arch/arm/mach-dove/include/mach/irqs.h
rename to arch/arm/mach-dove/irqs.h
index 8ff0fa8b4fcd..a0742179faff 100644
--- a/arch/arm/mach-dove/include/mach/irqs.h
+++ b/arch/arm/mach-dove/irqs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-dove/include/mach/irqs.h
- *
* IRQ definitions for Marvell Dove 88AP510 SoC
*
* This file is licensed under the terms of the GNU General Public
diff --git a/arch/arm/mach-dove/mpp.c b/arch/arm/mach-dove/mpp.c
index 8a433a51289c..6acd8488bb05 100644
--- a/arch/arm/mach-dove/mpp.c
+++ b/arch/arm/mach-dove/mpp.c
@@ -12,8 +12,8 @@
#include <linux/gpio.h>
#include <linux/io.h>
#include <plat/mpp.h>
-#include <mach/dove.h>
#include <plat/orion-gpio.h>
+#include "dove.h"
#include "mpp.h"
struct dove_mpp_grp {
diff --git a/arch/arm/mach-dove/pcie.c b/arch/arm/mach-dove/pcie.c
index 91fe97144570..46f08d44b5f5 100644
--- a/arch/arm/mach-dove/pcie.c
+++ b/arch/arm/mach-dove/pcie.c
@@ -17,9 +17,9 @@
#include <asm/setup.h>
#include <asm/delay.h>
#include <plat/pcie.h>
-#include <mach/irqs.h>
-#include <mach/bridge-regs.h>
#include <plat/addr-map.h>
+#include "irqs.h"
+#include "bridge-regs.h"
#include "common.h"
struct pcie_port {
diff --git a/arch/arm/mach-dove/include/mach/pm.h b/arch/arm/mach-dove/pm.h
similarity index 97%
rename from arch/arm/mach-dove/include/mach/pm.h
rename to arch/arm/mach-dove/pm.h
index 9834ba10cd13..3e2712a89c61 100644
--- a/arch/arm/mach-dove/include/mach/pm.h
+++ b/arch/arm/mach-dove/pm.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-dove/include/mach/pm.h
- *
* This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
@@ -10,7 +8,7 @@
#define __ASM_ARCH_PM_H
#include <asm/errno.h>
-#include <mach/irqs.h>
+#include "irqs.h"
#define CLOCK_GATING_CONTROL (DOVE_PMU_VIRT_BASE + 0x38)
#define CLOCK_GATING_BIT_USB0 0
diff --git a/arch/arm/mach-mv78xx0/include/mach/bridge-regs.h b/arch/arm/mach-mv78xx0/bridge-regs.h
similarity index 92%
rename from arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
rename to arch/arm/mach-mv78xx0/bridge-regs.h
index e20d6da234a6..2f54e1753d45 100644
--- a/arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
+++ b/arch/arm/mach-mv78xx0/bridge-regs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-mv78xx0/include/mach/bridge-regs.h
- *
* This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
@@ -9,7 +7,7 @@
#ifndef __ASM_ARCH_BRIDGE_REGS_H
#define __ASM_ARCH_BRIDGE_REGS_H
-#include <mach/mv78xx0.h>
+#include "mv78xx0.h"
#define CPU_CONTROL (BRIDGE_VIRT_BASE + 0x0104)
#define L2_WRITETHROUGH 0x00020000
diff --git a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
index 1607fd5e206e..e112f2e7cc9a 100644
--- a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
+++ b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
@@ -17,9 +17,9 @@
#include <linux/mv643xx_eth.h>
#include <linux/ethtool.h>
#include <linux/i2c.h>
-#include <mach/mv78xx0.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
+#include "mv78xx0.h"
#include "common.h"
#include "mpp.h"
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c
index e6ac679bece9..a1a04df9c05c 100644
--- a/arch/arm/mach-mv78xx0/common.c
+++ b/arch/arm/mach-mv78xx0/common.c
@@ -18,13 +18,13 @@
#include <asm/hardware/cache-feroceon-l2.h>
#include <asm/mach/map.h>
#include <asm/mach/time.h>
-#include <mach/mv78xx0.h>
-#include <mach/bridge-regs.h>
#include <linux/platform_data/usb-ehci-orion.h>
#include <linux/platform_data/mtd-orion_nand.h>
#include <plat/time.h>
#include <plat/common.h>
#include <plat/addr-map.h>
+#include "mv78xx0.h"
+#include "bridge-regs.h"
#include "common.h"
static int get_tclk(void);
diff --git a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
index 0c5dd6fceb6b..cf16e08d4cf5 100644
--- a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
+++ b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
@@ -15,9 +15,9 @@
#include <linux/mv643xx_eth.h>
#include <linux/ethtool.h>
#include <linux/i2c.h>
-#include <mach/mv78xx0.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
+#include "mv78xx0.h"
#include "common.h"
static struct mv643xx_eth_platform_data db78x00_ge00_data = {
diff --git a/arch/arm/mach-mv78xx0/include/mach/hardware.h b/arch/arm/mach-mv78xx0/include/mach/hardware.h
deleted file mode 100644
index 67cab0a08e07..000000000000
--- a/arch/arm/mach-mv78xx0/include/mach/hardware.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * arch/arm/mach-mv78xx0/include/mach/hardware.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef __ASM_ARCH_HARDWARE_H
-#define __ASM_ARCH_HARDWARE_H
-
-#include "mv78xx0.h"
-
-#endif
diff --git a/arch/arm/mach-mv78xx0/include/mach/uncompress.h b/arch/arm/mach-mv78xx0/include/mach/uncompress.h
index 6a761c44a296..2787ef392262 100644
--- a/arch/arm/mach-mv78xx0/include/mach/uncompress.h
+++ b/arch/arm/mach-mv78xx0/include/mach/uncompress.h
@@ -1,14 +1,12 @@
/*
- * arch/arm/mach-mv78xx0/include/mach/uncompress.h
- *
* This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*/
#include <linux/serial_reg.h>
-#include <mach/mv78xx0.h>
+#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
#define SERIAL_BASE ((unsigned char *)UART0_PHYS_BASE)
static void putc(const char c)
diff --git a/arch/arm/mach-mv78xx0/irq.c b/arch/arm/mach-mv78xx0/irq.c
index 2453c33faccf..788569e960e1 100644
--- a/arch/arm/mach-mv78xx0/irq.c
+++ b/arch/arm/mach-mv78xx0/irq.c
@@ -12,9 +12,9 @@
#include <linux/irq.h>
#include <linux/io.h>
#include <asm/exception.h>
-#include <mach/bridge-regs.h>
#include <plat/orion-gpio.h>
#include <plat/irq.h>
+#include "bridge-regs.h"
#include "common.h"
static int __initdata gpio0_irqs[4] = {
diff --git a/arch/arm/mach-mv78xx0/include/mach/irqs.h b/arch/arm/mach-mv78xx0/irqs.h
similarity index 98%
rename from arch/arm/mach-mv78xx0/include/mach/irqs.h
rename to arch/arm/mach-mv78xx0/irqs.h
index ac96bcf3d268..67e0fe730a13 100644
--- a/arch/arm/mach-mv78xx0/include/mach/irqs.h
+++ b/arch/arm/mach-mv78xx0/irqs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-mv78xx0/include/mach/irqs.h
- *
* IRQ definitions for Marvell MV78xx0 SoCs
*
* This file is licensed under the terms of the GNU General Public
diff --git a/arch/arm/mach-mv78xx0/mpp.c b/arch/arm/mach-mv78xx0/mpp.c
index df50342179e2..72843c02e95a 100644
--- a/arch/arm/mach-mv78xx0/mpp.c
+++ b/arch/arm/mach-mv78xx0/mpp.c
@@ -12,7 +12,7 @@
#include <linux/init.h>
#include <linux/io.h>
#include <plat/mpp.h>
-#include <mach/hardware.h>
+#include "mv78xx0.h"
#include "common.h"
#include "mpp.h"
diff --git a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h b/arch/arm/mach-mv78xx0/mv78xx0.h
similarity index 98%
rename from arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
rename to arch/arm/mach-mv78xx0/mv78xx0.h
index 0972d5f9b46d..2db1265ec121 100644
--- a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
+++ b/arch/arm/mach-mv78xx0/mv78xx0.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-mv78xx0/include/mach/mv78xx0.h
- *
* Generic definitions for Marvell MV78xx0 SoC flavors:
* MV781x0 and MV782x0.
*
diff --git a/arch/arm/mach-mv78xx0/pcie.c b/arch/arm/mach-mv78xx0/pcie.c
index 097ea4cb1136..13a7d72ee0c4 100644
--- a/arch/arm/mach-mv78xx0/pcie.c
+++ b/arch/arm/mach-mv78xx0/pcie.c
@@ -15,7 +15,7 @@
#include <asm/irq.h>
#include <asm/mach/pci.h>
#include <plat/pcie.h>
-#include <mach/mv78xx0.h>
+#include "mv78xx0.h"
#include "common.h"
#define MV78XX0_MBUS_PCIE_MEM_TARGET(port, lane) ((port) ? 8 : 4)
diff --git a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
index a0a3debf8c21..308ab71ec822 100644
--- a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
+++ b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
@@ -14,9 +14,9 @@
#include <linux/ata_platform.h>
#include <linux/mv643xx_eth.h>
#include <linux/ethtool.h>
-#include <mach/mv78xx0.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
+#include "mv78xx0.h"
#include "common.h"
static struct mv643xx_eth_platform_data rd78x00_masa_ge00_data = {
diff --git a/arch/arm/mach-orion5x/board-d2net.c b/arch/arm/mach-orion5x/board-d2net.c
index 8a7284124153..a89376a5cd92 100644
--- a/arch/arm/mach-orion5x/board-d2net.c
+++ b/arch/arm/mach-orion5x/board-d2net.c
@@ -20,9 +20,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include <plat/orion-gpio.h>
#include "common.h"
+#include "orion5x.h"
/*****************************************************************************
* LaCie d2 Network Info
diff --git a/arch/arm/mach-orion5x/board-dt.c b/arch/arm/mach-orion5x/board-dt.c
index d0871786dd8a..6f4c2c4ae2a5 100644
--- a/arch/arm/mach-orion5x/board-dt.c
+++ b/arch/arm/mach-orion5x/board-dt.c
@@ -20,10 +20,10 @@
#include <asm/system_misc.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
-#include <mach/orion5x.h>
-#include <mach/bridge-regs.h>
#include <plat/irq.h>
#include <plat/time.h>
+#include "orion5x.h"
+#include "bridge-regs.h"
#include "common.h"
static struct of_dev_auxdata orion5x_auxdata_lookup[] __initdata = {
diff --git a/arch/arm/mach-orion5x/board-mss2.c b/arch/arm/mach-orion5x/board-mss2.c
index 66f9c3ba86cc..79202fd626df 100644
--- a/arch/arm/mach-orion5x/board-mss2.c
+++ b/arch/arm/mach-orion5x/board-mss2.c
@@ -17,8 +17,8 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
-#include <mach/bridge-regs.h>
+#include "orion5x.h"
+#include "bridge-regs.h"
#include "common.h"
/*****************************************************************************
diff --git a/arch/arm/mach-orion5x/board-rd88f5182.c b/arch/arm/mach-orion5x/board-rd88f5182.c
index 270824b0e50f..b7b0f52f4c0a 100644
--- a/arch/arm/mach-orion5x/board-rd88f5182.c
+++ b/arch/arm/mach-orion5x/board-rd88f5182.c
@@ -18,8 +18,8 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
+#include "orion5x.h"
/*****************************************************************************
* RD-88F5182 Info
diff --git a/arch/arm/mach-orion5x/include/mach/bridge-regs.h b/arch/arm/mach-orion5x/bridge-regs.h
similarity index 92%
rename from arch/arm/mach-orion5x/include/mach/bridge-regs.h
rename to arch/arm/mach-orion5x/bridge-regs.h
index 5766e3fbff69..305598eaaee1 100644
--- a/arch/arm/mach-orion5x/include/mach/bridge-regs.h
+++ b/arch/arm/mach-orion5x/bridge-regs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-orion5x/include/mach/bridge-regs.h
- *
* Orion CPU Bridge Registers
*
* This file is licensed under the terms of the GNU General Public
@@ -11,7 +9,7 @@
#ifndef __ASM_ARCH_BRIDGE_REGS_H
#define __ASM_ARCH_BRIDGE_REGS_H
-#include <mach/orion5x.h>
+#include "orion5x.h"
#define CPU_CONF (ORION5X_BRIDGE_VIRT_BASE + 0x100)
diff --git a/arch/arm/mach-orion5x/common.c b/arch/arm/mach-orion5x/common.c
index 2b7889e3b7bc..70c3366c8d03 100644
--- a/arch/arm/mach-orion5x/common.c
+++ b/arch/arm/mach-orion5x/common.c
@@ -27,14 +27,14 @@
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
#include <asm/mach/time.h>
-#include <mach/bridge-regs.h>
-#include <mach/hardware.h>
-#include <mach/orion5x.h>
#include <linux/platform_data/mtd-orion_nand.h>
#include <linux/platform_data/usb-ehci-orion.h>
#include <plat/time.h>
#include <plat/common.h>
+
+#include "bridge-regs.h"
#include "common.h"
+#include "orion5x.h"
/*****************************************************************************
* I/O Address Mapping
diff --git a/arch/arm/mach-orion5x/db88f5281-setup.c b/arch/arm/mach-orion5x/db88f5281-setup.c
index 698528fee39d..12f74b46e2ff 100644
--- a/arch/arm/mach-orion5x/db88f5281-setup.c
+++ b/arch/arm/mach-orion5x/db88f5281-setup.c
@@ -23,10 +23,10 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include <linux/platform_data/mtd-orion_nand.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* DB-88F5281 on board devices
diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c
index 96a8c50e7223..cd483bfb5ca8 100644
--- a/arch/arm/mach-orion5x/dns323-setup.c
+++ b/arch/arm/mach-orion5x/dns323-setup.c
@@ -33,8 +33,8 @@
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
#include <asm/system_info.h>
-#include <mach/orion5x.h>
#include <plat/orion-gpio.h>
+#include "orion5x.h"
#include "common.h"
#include "mpp.h"
diff --git a/arch/arm/mach-orion5x/include/mach/hardware.h b/arch/arm/mach-orion5x/include/mach/hardware.h
deleted file mode 100644
index 395735482473..000000000000
--- a/arch/arm/mach-orion5x/include/mach/hardware.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * arch/arm/mach-orion5x/include/mach/hardware.h
- *
- * 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.
- */
-
-#ifndef __ASM_ARCH_HARDWARE_H
-#define __ASM_ARCH_HARDWARE_H
-
-#include "orion5x.h"
-
-#endif
diff --git a/arch/arm/mach-orion5x/include/mach/uncompress.h b/arch/arm/mach-orion5x/include/mach/uncompress.h
index abd26b542c3c..25e5cb98fecc 100644
--- a/arch/arm/mach-orion5x/include/mach/uncompress.h
+++ b/arch/arm/mach-orion5x/include/mach/uncompress.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-orion5x/include/mach/uncompress.h
- *
* Tzachi Perelstein <tzachi@marvell.com>
*
* This file is licensed under the terms of the GNU General Public
@@ -9,8 +7,8 @@
*/
#include <linux/serial_reg.h>
-#include <mach/orion5x.h>
+#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
#define SERIAL_BASE ((unsigned char *)UART0_PHYS_BASE)
static void putc(const char c)
diff --git a/arch/arm/mach-orion5x/irq.c b/arch/arm/mach-orion5x/irq.c
index 8678db1eb1bd..de980ef9cda1 100644
--- a/arch/arm/mach-orion5x/irq.c
+++ b/arch/arm/mach-orion5x/irq.c
@@ -13,10 +13,10 @@
#include <linux/kernel.h>
#include <linux/irq.h>
#include <linux/io.h>
-#include <mach/bridge-regs.h>
#include <plat/orion-gpio.h>
#include <plat/irq.h>
#include <asm/exception.h>
+#include "bridge-regs.h"
#include "common.h"
static int __initdata gpio0_irqs[4] = {
diff --git a/arch/arm/mach-orion5x/include/mach/irqs.h b/arch/arm/mach-orion5x/irqs.h
similarity index 97%
rename from arch/arm/mach-orion5x/include/mach/irqs.h
rename to arch/arm/mach-orion5x/irqs.h
index 4b8703cd1ccb..506c8e0b30c4 100644
--- a/arch/arm/mach-orion5x/include/mach/irqs.h
+++ b/arch/arm/mach-orion5x/irqs.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-orion5x/include/mach/irqs.h
- *
* IRQ definitions for Orion SoC
*
* Maintainer: Tzachi Perelstein <tzachi@marvell.com>
diff --git a/arch/arm/mach-orion5x/kurobox_pro-setup.c b/arch/arm/mach-orion5x/kurobox_pro-setup.c
index b1ebb3721638..9dc3f59bed9c 100644
--- a/arch/arm/mach-orion5x/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion5x/kurobox_pro-setup.c
@@ -23,10 +23,10 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include <linux/platform_data/mtd-orion_nand.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* KUROBOX-PRO Info
diff --git a/arch/arm/mach-orion5x/ls-chl-setup.c b/arch/arm/mach-orion5x/ls-chl-setup.c
index cb8720e6d02b..dfdaa8a498a4 100644
--- a/arch/arm/mach-orion5x/ls-chl-setup.c
+++ b/arch/arm/mach-orion5x/ls-chl-setup.c
@@ -22,9 +22,9 @@
#include <linux/gpio.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* Linkstation LS-CHL Info
diff --git a/arch/arm/mach-orion5x/ls_hgl-setup.c b/arch/arm/mach-orion5x/ls_hgl-setup.c
index 0ddfa23821ec..47ba6e0502f5 100644
--- a/arch/arm/mach-orion5x/ls_hgl-setup.c
+++ b/arch/arm/mach-orion5x/ls_hgl-setup.c
@@ -21,9 +21,9 @@
#include <linux/gpio.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* Linkstation LS-HGL Info
diff --git a/arch/arm/mach-orion5x/mpp.c b/arch/arm/mach-orion5x/mpp.c
index 5b70026f478c..19ef18594415 100644
--- a/arch/arm/mach-orion5x/mpp.c
+++ b/arch/arm/mach-orion5x/mpp.c
@@ -11,8 +11,8 @@
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/io.h>
-#include <mach/hardware.h>
#include <plat/mpp.h>
+#include "orion5x.h"
#include "mpp.h"
#include "common.h"
diff --git a/arch/arm/mach-orion5x/mv2120-setup.c b/arch/arm/mach-orion5x/mv2120-setup.c
index 11985dc45c47..2bf8ec75e908 100644
--- a/arch/arm/mach-orion5x/mv2120-setup.c
+++ b/arch/arm/mach-orion5x/mv2120-setup.c
@@ -21,9 +21,9 @@
#include <linux/ata_platform.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
#define MV2120_NOR_BOOT_BASE 0xf4000000
#define MV2120_NOR_BOOT_SIZE SZ_512K
diff --git a/arch/arm/mach-orion5x/net2big-setup.c b/arch/arm/mach-orion5x/net2big-setup.c
index e91abcc2213d..bf6be4cfd238 100644
--- a/arch/arm/mach-orion5x/net2big-setup.c
+++ b/arch/arm/mach-orion5x/net2big-setup.c
@@ -24,10 +24,10 @@
#include <linux/delay.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
-#include <mach/orion5x.h>
#include <plat/orion-gpio.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* LaCie 2Big Network Info
diff --git a/arch/arm/mach-orion5x/include/mach/orion5x.h b/arch/arm/mach-orion5x/orion5x.h
similarity index 98%
rename from arch/arm/mach-orion5x/include/mach/orion5x.h
rename to arch/arm/mach-orion5x/orion5x.h
index 7be7c2e05465..3364df331f01 100644
--- a/arch/arm/mach-orion5x/include/mach/orion5x.h
+++ b/arch/arm/mach-orion5x/orion5x.h
@@ -1,6 +1,4 @@
/*
- * arch/arm/mach-orion5x/include/mach/orion5x.h
- *
* Generic definitions of Orion SoC flavors:
* Orion-1, Orion-VoIP, Orion-NAS, Orion-2, and Orion-1-90.
*
@@ -14,7 +12,7 @@
#ifndef __ASM_ARCH_ORION5X_H
#define __ASM_ARCH_ORION5X_H
-#include <mach/irqs.h>
+#include "irqs.h"
/*****************************************************************************
* Orion Address Maps
diff --git a/arch/arm/mach-orion5x/pci.c b/arch/arm/mach-orion5x/pci.c
index b02f3947be51..ecb998e7f8dc 100644
--- a/arch/arm/mach-orion5x/pci.c
+++ b/arch/arm/mach-orion5x/pci.c
@@ -19,8 +19,8 @@
#include <asm/mach/pci.h>
#include <plat/pcie.h>
#include <plat/addr-map.h>
-#include <mach/orion5x.h>
#include "common.h"
+#include "orion5x.h"
/*****************************************************************************
* Orion has one PCIe controller and one PCI controller.
diff --git a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
index 69a6e5b20b0b..c742e7b40b0d 100644
--- a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c
@@ -20,9 +20,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* RD-88F5181L FXO Info
diff --git a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
index e19f8b7f87b3..7e977b794b0c 100644
--- a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c
@@ -21,9 +21,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* RD-88F5181L GE Info
diff --git a/arch/arm/mach-orion5x/rd88f5182-setup.c b/arch/arm/mach-orion5x/rd88f5182-setup.c
index 180a4f972d3d..fe3e67c81fb8 100644
--- a/arch/arm/mach-orion5x/rd88f5182-setup.c
+++ b/arch/arm/mach-orion5x/rd88f5182-setup.c
@@ -23,9 +23,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* RD-88F5182 Info
diff --git a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
index cc5bdbe70fa9..4bf80dd5478c 100644
--- a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
+++ b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c
@@ -22,8 +22,8 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
+#include "orion5x.h"
static struct mv643xx_eth_platform_data rd88f6183ap_ge_eth_data = {
.phy_addr = -1,
diff --git a/arch/arm/mach-orion5x/terastation_pro2-setup.c b/arch/arm/mach-orion5x/terastation_pro2-setup.c
index ad2057514deb..deb5e29ac669 100644
--- a/arch/arm/mach-orion5x/terastation_pro2-setup.c
+++ b/arch/arm/mach-orion5x/terastation_pro2-setup.c
@@ -22,9 +22,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
/*****************************************************************************
* Terastation Pro 2/Live Info
diff --git a/arch/arm/mach-orion5x/ts209-setup.c b/arch/arm/mach-orion5x/ts209-setup.c
index 1cfc364c9b1e..7bd671b2854c 100644
--- a/arch/arm/mach-orion5x/ts209-setup.c
+++ b/arch/arm/mach-orion5x/ts209-setup.c
@@ -25,9 +25,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
#include "tsx09-common.h"
#define QNAP_TS209_NOR_BOOT_BASE 0xf4000000
diff --git a/arch/arm/mach-orion5x/ts409-setup.c b/arch/arm/mach-orion5x/ts409-setup.c
index bc985cf44625..a77613b14db5 100644
--- a/arch/arm/mach-orion5x/ts409-setup.c
+++ b/arch/arm/mach-orion5x/ts409-setup.c
@@ -27,9 +27,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
#include "tsx09-common.h"
/*****************************************************************************
diff --git a/arch/arm/mach-orion5x/ts78xx-setup.c b/arch/arm/mach-orion5x/ts78xx-setup.c
index 5a61a66ce012..b67ace446576 100644
--- a/arch/arm/mach-orion5x/ts78xx-setup.c
+++ b/arch/arm/mach-orion5x/ts78xx-setup.c
@@ -23,9 +23,9 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
-#include <mach/orion5x.h>
#include "common.h"
#include "mpp.h"
+#include "orion5x.h"
#include "ts78xx-fpga.h"
/*****************************************************************************
diff --git a/arch/arm/mach-orion5x/tsx09-common.c b/arch/arm/mach-orion5x/tsx09-common.c
index d42e006597c7..89774985d380 100644
--- a/arch/arm/mach-orion5x/tsx09-common.c
+++ b/arch/arm/mach-orion5x/tsx09-common.c
@@ -15,7 +15,7 @@
#include <linux/mv643xx_eth.h>
#include <linux/timex.h>
#include <linux/serial_reg.h>
-#include <mach/orion5x.h>
+#include "orion5x.h"
#include "tsx09-common.h"
#include "common.h"
diff --git a/arch/arm/mach-orion5x/wnr854t-setup.c b/arch/arm/mach-orion5x/wnr854t-setup.c
index bcc6e12dcdac..4e1e5c8f6111 100644
--- a/arch/arm/mach-orion5x/wnr854t-setup.c
+++ b/arch/arm/mach-orion5x/wnr854t-setup.c
@@ -19,7 +19,7 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
+#include "orion5x.h"
#include "common.h"
#include "mpp.h"
diff --git a/arch/arm/mach-orion5x/wrt350n-v2-setup.c b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
index 4068d7a3e466..61e9027ef224 100644
--- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c
+++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
@@ -22,7 +22,7 @@
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
-#include <mach/orion5x.h>
+#include "orion5x.h"
#include "common.h"
#include "mpp.h"
diff --git a/arch/arm/plat-orion/irq.c b/arch/arm/plat-orion/irq.c
index 8c1fc06007c0..5b63b28b00ac 100644
--- a/arch/arm/plat-orion/irq.c
+++ b/arch/arm/plat-orion/irq.c
@@ -18,7 +18,6 @@
#include <asm/exception.h>
#include <plat/irq.h>
#include <plat/orion-gpio.h>
-#include <mach/bridge-regs.h>
void __init orion_irq_init(unsigned int irq_start, void __iomem *maskaddr)
{
diff --git a/arch/arm/plat-orion/mpp.c b/arch/arm/plat-orion/mpp.c
index 7310bcfb299f..5b4ff9373c89 100644
--- a/arch/arm/plat-orion/mpp.c
+++ b/arch/arm/plat-orion/mpp.c
@@ -13,7 +13,6 @@
#include <linux/mbus.h>
#include <linux/io.h>
#include <linux/gpio.h>
-#include <mach/hardware.h>
#include <plat/orion-gpio.h>
#include <plat/mpp.h>
--
2.1.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Lunn <andrew@lunn.ch> |
|---|---|
| Date | 2015-11-25 17:10 +0100 |
| Message-ID | <qyKNS-9k-61@gated-at.bofh.it> |
| In reply to | #1277512 |
On Wed, Nov 25, 2015 at 04:49:12PM +0100, Arnd Bergmann wrote: > I've posted these before and now gotten around to a rebase and > want to include them in the arm-soc next/multiplatform branch for > 4.5. > > Originally the plan for these platforms was to convert all of > them to DT and use only mach-mvebu. That has not happened, > so I would do it this way instead so we can at least have > them in a single kernel. > > Let me know if there are any concerns or objections. Maybe we should just remove mv78xx0? It has been at least two years since we have heard of anybody using it, outside of Debians now replaced build system. And its IRQ handling is broken apparently. Russell, you are the last known user of mach-dove. What are your plans? You keep saying you have given up trying to mainline your Cubox patches. Have you really given up? Can we remove mach-dove? Orion5x is still used, we occasionally get drive-by patches. Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Gregory CLEMENT <gregory.clement@free-electrons.com> |
|---|---|
| Date | 2015-11-25 18:40 +0100 |
| Message-ID | <qyMcW-Vq-3@gated-at.bofh.it> |
| In reply to | #1277539 |
Hi Andrew, On mer., nov. 25 2015, Andrew Lunn <andrew@lunn.ch> wrote: > On Wed, Nov 25, 2015 at 04:49:12PM +0100, Arnd Bergmann wrote: >> I've posted these before and now gotten around to a rebase and >> want to include them in the arm-soc next/multiplatform branch for >> 4.5. >> >> Originally the plan for these platforms was to convert all of >> them to DT and use only mach-mvebu. That has not happened, >> so I would do it this way instead so we can at least have >> them in a single kernel. >> >> Let me know if there are any concerns or objections. > > Maybe we should just remove mv78xx0? It has been at least two years > since we have heard of anybody using it, outside of Debians now > replaced build system. And its IRQ handling is broken apparently. Actually I was about to remove it last year but an mv78200 user came with a bug fix on the gpio driver used by this platform: http://marc.info/?l=linux-arm-kernel&m=140639461108781&w=2 While he seemed interseted to use a mainline kernel we don't have any news for one year: http://marc.info/?l=linux-arm-kernel&m=141391779222342&w=2 Gregory -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Lunn <andrew@lunn.ch> |
|---|---|
| Date | 2015-11-25 18:50 +0100 |
| Message-ID | <qyMmB-YX-1@gated-at.bofh.it> |
| In reply to | #1277637 |
> While he seemed interseted to use a mainline kernel we don't have any
> news for one year:
> http://marc.info/?l=linux-arm-kernel&m=141391779222342&w=2
Maybe time for an email ping?
Andrew
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 21:00 +0100 |
| Message-ID | <qyOor-2en-23@gated-at.bofh.it> |
| In reply to | #1277648 |
On Wednesday 25 November 2015 18:44:54 Andrew Lunn wrote: > > While he seemed interseted to use a mainline kernel we don't have any > > news for one year: > > http://marc.info/?l=linux-arm-kernel&m=141391779222342&w=2 > > Maybe time for an email ping? > I think the same discussed was what stopped my series on the last two attempts. If there are no objections to things that I'm doing, I'd suggest we just merge the multiplatform patches that we want for orion5x and dove anyway and then decide about removing mv78xx0 ;-) Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Jason Cooper <jason@lakedaemon.net> |
|---|---|
| Date | 2015-11-26 16:00 +0100 |
| Message-ID | <qz6bE-6xn-13@gated-at.bofh.it> |
| In reply to | #1277758 |
On Wed, Nov 25, 2015 at 08:58:28PM +0100, Arnd Bergmann wrote: > On Wednesday 25 November 2015 18:44:54 Andrew Lunn wrote: > > > While he seemed interseted to use a mainline kernel we don't have any > > > news for one year: > > > http://marc.info/?l=linux-arm-kernel&m=141391779222342&w=2 > > > > Maybe time for an email ping? > > > > I think the same discussed was what stopped my series on the last > two attempts. If there are no objections to things that I'm doing, > I'd suggest we just merge the multiplatform patches that we want > for orion5x and dove anyway and then decide about removing mv78xx0 ;-) Agreed. thx, Jason. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| Date | 2015-11-25 19:40 +0100 |
| Message-ID | <qyN8Z-1vp-5@gated-at.bofh.it> |
| In reply to | #1277539 |
On Wed, Nov 25, 2015 at 05:09:37PM +0100, Andrew Lunn wrote: > Russell, you are the last known user of mach-dove. What are your > plans? You keep saying you have given up trying to mainline your Cubox > patches. Have you really given up? Can we remove mach-dove? Right now, I'm developing etnaviv in spare time on the Cubox[*], which is still primarily running a non-DT kernel. It's actually a kernel that I've hacked which is capable of booting both DT and non-DT, but even when booted in DT mode, I still require much of the arch/arm/mach-dove infrastructure to get things like armada-drm, etnaviv and other drivers running. Especially because we're missing things like the high-speed clocks (the stuff above the tclk domain.) I've not even started to work out how to get that into mainline, or how to integrate that with CCF. Quite what can be done with the audio patches, I've no idea, that remains a bone of contention and stalemate, and currently isn't DT-able. See the list of patches at the end of this message... It feels today like I'm the only one working on improving Dove support, and so it's going to take a _long_ time to move things forward - it's likely to take years. I have many demands on my time and I have to divide it up between the various aspects. Eg, it's taken me a whole year to get the second batch of patches for the component helper out the door... most of the time I can't see the trees for all the patches I'm carrying. * - I'm fed up with waiting for etnaviv to mature; I've been waiting two years so far in the hope that others will do the work and finally provide everyone with a solution to the closed source userspace blob. Consequently, I don't have much time to push Dove stuff forwards right now - though it can be argued that etnaviv _is_ pushing Dove forwards. Omitting historical galcore and current etnaviv patch sets, I have 115 patches for Cubox support outstanding. Note: some of those 115 patches have been merged during the 4.4 merge window (eg, the tda998x changes and armada drm changes) though I won't be in a position to know what the new state of affairs are until after 4.4 has been released - where upon I will (as normal) rebase my entire cubox patch set on the next released kernel. Patch list (merges omitted) ARM: orion: implement ARM delay timer orion clock build fix clk-si5351 build fix tda998x: add cec support cec: add tda9950 driver cec: add HDMI CEC input driver cec: add HDMI CEC core driver ARM: dove: cubox-setup: add gpio table for tda998x calibration ARM: dove: more clock cleanups misc updates Revert "cma debugging" cma debugging drm/armada: allow the primary plane to be disabled drm: tda998x: legacy IRQ handling enable pm domain debug rtc: debugging pmu: debugging dtbsinstall: don't move target directory out of the way mmc: hack around broken probe cleanup ARM: add trivial IRQ handler timing debug ARM: cubox: dt updates ASoC: sound fixes ARM: dove: cubox: add DT booting support ARM: dove: cubox: add legacy Armada DRM device ARM: dove: add Etnaviv/DRM support ARM: dove: add VMeta support ARM: dove: add BMM support ARM: dove: move hwmon initialisation into PMU driver ARM: dt: cubox: add LCD controller and TDA998x configuration ARM: dove: add DT VMeta support ASoC: kirkwood: cobble together audio support when DT is enabled ASoC: kirkwood-i2s: align with mainline ASoC: kirkwood: cobble together audio support when DT is enabled ASoC: kirkwood: add DPCM support ASoC: kirkwood: add spdif driver ASoC: kirkwood: add SPDIF controls ASoC: kirkwood: shut down external clock when not required ARM: cubox: ensure that we indicate full regulator constraints ARM: l2c: tauros2: fix OF-enabled non-DT boot ARM: mvebu: allow mvebu/dove to be enabled ARM: dove: sil clock driver build patch ARM: dove: remove silab* files ARM: enable SG_CHAIN for Dove ARM: cubox: fix flash type ARM: dove: remove cubox_extclk device ARM: dove: clock improvements ARM: dove: drop old vmeta power handling ARM: dove: fix dove clock support to recalculate the actual rates ARM: dove: cleanup dove clock support ARM: dove: fix clock name ARM: dove: no need for empty clock enable/disable methods ARM: dove: remove unused clock declarations ARM: dove: fix 'addr' types in dove clock.c HWMON: dove: fix use if S_IRWXUGO in dove hwmon driver HWMON: move dove hwmon module to drivers/hwmon and add MODULE_ALIAS HWMON: dove: fix mask writes HWMON: dove: move current_mode and warning_flag into dovetemp_data HWMON: dove: push dovetemp_data down into functions HWMON: dove: move timer to dovetherm_data structure HWMON: dove: add driver private data HWMON: dove: use module_platform_driver in dove hwmon driver HWMON: dove: fix monitoring printks Revert "Allow ioremap_nocache on PJ4 processor that is in Dove." ARM: dove: convert legacy dove to PMU support dt-bindings: add Marvell PMU documentation VMeta: add miscdevice VMeta driver drm/i2c: tda998x: add temporary audio configuration drm/i2c: tda998x: add debug drm: ensure fbdev helper arrays are appropriately dimensioned drm/armada: start of MMP2/MMP3 support ARM: imx6: add power domains to Vivante GPU nodes ARM: imx6: add Vivante GPU nodes drm/armada: move frame wait wakeup into plane work drm/armada: convert overlay plane vbl worker to a armada plane worker drm/armada: move CRTC flip work to primary plane work drm/armada: move frame wait into armada_frame drm/armada: move the locking for armada_drm_vbl_event_remove() drm/armada: move the update of dplane->ctrl0 out of spinlock drm/armada: move write to dma_ctrl0 to armada_drm_crtc_plane_disable() drm/armada: provide a common helper to disable a plane drm/armada: allocate primary plane ourselves drm/armada: add primary plane creation drm/armada: introduce generic armada_plane struct drm/armada: update armada overlay to use drm_universal_plane_init()66377efa3fd4 drm/armada: use xchg() to atomically update dplane->old_fb drm/i2c: tda998x: clean up after struct tda998x_priv2 removal drm/i2c: tda998x: kill struct tda998x_priv2 drm/i2c: tda998x: move connector into struct tda998x_priv drm/i2c: tda998x: remove encoder pointer drm/i2c: tda998x: remove DRM slave encoder support drm/armada: factor out retirement of old fb drm/armada: rename overlay identifiers drm/armada: redo locking and atomics for armada_drm_crtc_complete_frame_work() drm/armada: disable CRTC clock during DPMS drm/armada: use drm_plane_force_disable() to disable the overlay plane drm/armada: move vbl code into armada_crtc drm/armada: remove non-component support drm/i2c: tda998x: use more HDMI helpers drm/i2c: tda998x: handle all outstanding interrupts drm/i2c: tda998x: convert to u8/u16/u32 types drm/i2c: tda998x: re-implement "Fix EDID read timeout on HDMI connect" drm/i2c: tda998x: report whether we actually handled the IRQ drm/i2c: tda998x: remove useless NULL checks of: Add vendor prefix for Vivante Corporation misc: bmm: update for v4.1 dma_buf API changes misc: bmm: update for v3.17 dma_buf API changes misc: add bmm_dmabuf allocator -- FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Lunn <andrew@lunn.ch> |
|---|---|
| Date | 2015-11-25 20:20 +0100 |
| Message-ID | <qyNLH-1Zv-1@gated-at.bofh.it> |
| In reply to | #1277691 |
> It feels today like I'm the only one working on improving Dove support, > and so it's going to take a _long_ time to move things forward - it's > likely to take years. I have many demands on my time and I have to > divide it up between the various aspects. Hi Russell The problem from our side is the apparent lack of progress. We get so very few patches we wounder why we should keep it around. If there was even a steady trick of patches, we would feel better about keeping it. So looking at this list, could you maybe post the following, if they don't have dependencies. Going from only the subject, most look simple and should not be too much effort to get mainlined. > orion clock build fix > ARM: dove: more clock cleanups > ARM: dove: cubox: add DT booting support > ARM: dove: move hwmon initialisation into PMU driver > ARM: l2c: tauros2: fix OF-enabled non-DT boot > ARM: mvebu: allow mvebu/dove to be enabled > ARM: cubox: fix flash type > ARM: dove: remove cubox_extclk device > ARM: dove: clock improvements > ARM: dove: fix dove clock support to recalculate the actual rates > ARM: dove: cleanup dove clock support > ARM: dove: fix clock name > ARM: dove: no need for empty clock enable/disable methods > ARM: dove: remove unused clock declarations > ARM: dove: fix 'addr' types in dove clock.c > HWMON: dove: fix use if S_IRWXUGO in dove hwmon driver > HWMON: move dove hwmon module to drivers/hwmon and add MODULE_ALIAS > HWMON: dove: fix mask writes > HWMON: dove: move current_mode and warning_flag into dovetemp_data > HWMON: dove: push dovetemp_data down into functions > HWMON: dove: move timer to dovetherm_data structure > HWMON: dove: add driver private data > HWMON: dove: use module_platform_driver in dove hwmon driver > HWMON: dove: fix monitoring printks > Revert "Allow ioremap_nocache on PJ4 processor that is in Dove." > ARM: dove: convert legacy dove to PMU support > dt-bindings: add Marvell PMU documentation > of: Add vendor prefix for Vivante Corporation Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| Date | 2015-11-25 20:30 +0100 |
| Message-ID | <qyNVn-22H-3@gated-at.bofh.it> |
| In reply to | #1277711 |
On Wed, Nov 25, 2015 at 08:16:00PM +0100, Andrew Lunn wrote: > > It feels today like I'm the only one working on improving Dove support, > > and so it's going to take a _long_ time to move things forward - it's > > likely to take years. I have many demands on my time and I have to > > divide it up between the various aspects. > > Hi Russell > > The problem from our side is the apparent lack of progress. We get so > very few patches we wounder why we should keep it around. If there was > even a steady trick of patches, we would feel better about keeping it. You may think there's lack of progress, but I can tell you that there's lots of progress on etnaviv right now. Since 1st November, I've authored 100 MESA patches, 81 of those merged into Christians repository. I've also been sorting out issues with the kernel side driver, which now supports cross-GPU synchronisation, necessary for iMX6, and a necessary step towards getting the kernel driver merged into mainline. As I already explained, there is only one of me. I can only do so much, and I tend to focus on one part of the broad problem to the exclusion of other parts - I find chopping and changing all the time to be a much less efficient way of working. Others may be able to do a little bit here, a little bit there, but I'm not like that, sorry. I won't be able to even start thinking about looking at this stuff until next week - Arnd wants me to look at some patches he's sent out today, which I might be able to do tomorrow afternoon at the very earliest, and I'm probably not around on Friday. See - I'm only one person, I don't have time to be able to progress lots of non-paying work at a fast rate. You'll have to wait, just like I've had to wait to get my own patches for other stuff in, just like I have to wait for progress in other projects. Sorry, but waiting and patience is all part of open source development, especially when it relies upon volunteer effort. -- FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| Date | 2015-11-26 00:30 +0100 |
| Message-ID | <qyRFD-4sZ-1@gated-at.bofh.it> |
| In reply to | #1277711 |
On Wed, Nov 25, 2015 at 08:16:00PM +0100, Andrew Lunn wrote: > So looking at this list, could you maybe post the following, if they > don't have dependencies. Going from only the subject, most look simple > and should not be too much effort to get mainlined. It's really not that simple. Remember what base this tree is: it is Rabeeh's kernel tree from 3.4 times, with _each_ mainline release merged into it and a patch set of 250+ patches rebased forwards. A lot of these patches do not easily apply to mainline kernels. > > orion clock build fix Adding linux/clk.h to plat-orion/clock.c to solve some build errors, file does not exist in mainline. > > ARM: dove: more clock cleanups Adding linux/clkdev.h to clk-si5351.c to fix build errors caused by 4.3 changes breaking previous tweaks to make it work in non-DT setups. Not applicable to mainline without previous tweaks. > > ARM: dove: cubox: add DT booting support Adds to the non-DT cubox board file a DT descriptor to pick up on the existing cubox compatible, and to hook into the "old style" initialisation to allow etnaviv/armada-drm/vmeta/bmm to work. > > ARM: dove: move hwmon initialisation into PMU driver Only applicable if you have the hwmon driver. > > ARM: l2c: tauros2: fix OF-enabled non-DT boot A possible fix for mainline if we're keeping non-DT tauros2 support around. > > ARM: mvebu: allow mvebu/dove to be enabled Possibly not applicable with Arnd's work. > > ARM: cubox: fix flash type Not applicable because mainline has no non-DT cubox board file. > > ARM: dove: remove cubox_extclk device > > ARM: dove: clock improvements > > ARM: dove: fix dove clock support to recalculate the actual rates > > ARM: dove: cleanup dove clock support > > ARM: dove: fix clock name > > ARM: dove: no need for empty clock enable/disable methods > > ARM: dove: remove unused clock declarations > > ARM: dove: fix 'addr' types in dove clock.c All the above are cleaning up the "missing bits" of the clock tree for the GPU/CPU/vmeta clocks - the stuff that's clocked off the main 2GHz PLL. No support in mainline for this, and would need to be converted to a CCF driver. > > HWMON: dove: fix use if S_IRWXUGO in dove hwmon driver > > HWMON: move dove hwmon module to drivers/hwmon and add MODULE_ALIAS > > HWMON: dove: fix mask writes > > HWMON: dove: move current_mode and warning_flag into dovetemp_data > > HWMON: dove: push dovetemp_data down into functions > > HWMON: dove: move timer to dovetherm_data structure > > HWMON: dove: add driver private data > > HWMON: dove: use module_platform_driver in dove hwmon driver > > HWMON: dove: fix monitoring printks hwmon is something that needs to be dealt with, but is nowhere near mainline ready. > > Revert "Allow ioremap_nocache on PJ4 processor that is in Dove." Not applicable to mainline; it's reverting a patch in Rabeeh's tree. > > ARM: dove: convert legacy dove to PMU support This one got dropped due to conflicts. It's now rebased on 4.3 (which is the earliest final kernel release it could be based upon, as the PMU code and conflicting changes were merged in the 4.3 merge window), I can finally think about resending it. > > dt-bindings: add Marvell PMU documentation Was sent in March and July, and obviously if it's still in my git tree, it never ended up being merged, and needs investigation as to what happened, and why it hasn't been merged along with the code. > > of: Add vendor prefix for Vivante Corporation Part of the etnaviv patch set. So, out of all those matches, maybe one or two patches can be sent immediately. That still leaves me with about a hundred patches which are reliant on the non-DT dove code. -- FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-25 21:10 +0100 |
| Message-ID | <qyOy6-2xe-11@gated-at.bofh.it> |
| In reply to | #1277691 |
On Wednesday 25 November 2015 18:37:28 Russell King - ARM Linux wrote: > On Wed, Nov 25, 2015 at 05:09:37PM +0100, Andrew Lunn wrote: > > Russell, you are the last known user of mach-dove. What are your > > plans? You keep saying you have given up trying to mainline your Cubox > > patches. Have you really given up? Can we remove mach-dove? > > Right now, I'm developing etnaviv in spare time on the Cubox[*], which > is still primarily running a non-DT kernel. > > It's actually a kernel that I've hacked which is capable of booting > both DT and non-DT, but even when booted in DT mode, I still require > much of the arch/arm/mach-dove infrastructure to get things like > armada-drm, etnaviv and other drivers running. Especially because > we're missing things like the high-speed clocks (the stuff above the > tclk domain.) I've not even started to work out how to get that > into mainline, or how to integrate that with CCF. Quite what can be > done with the audio patches, I've no idea, that remains a bone of > contention and stalemate, and currently isn't DT-able. See the list > of patches at the end of this message... I think it's ok to keep mach-dove around for a longer time to keep the board file, I'm way more interested in completing the multiplatform work at last. If I understand you right, being able to build mach-dove and mach-mvebu together will actually help you remove one or more of your patches, but of course will require a small bit of rebasing. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| Date | 2015-11-25 23:50 +0100 |
| Message-ID | <qyR2W-3ZJ-15@gated-at.bofh.it> |
| In reply to | #1277762 |
On Wed, Nov 25, 2015 at 09:05:02PM +0100, Arnd Bergmann wrote: > On Wednesday 25 November 2015 18:37:28 Russell King - ARM Linux wrote: > > On Wed, Nov 25, 2015 at 05:09:37PM +0100, Andrew Lunn wrote: > > > Russell, you are the last known user of mach-dove. What are your > > > plans? You keep saying you have given up trying to mainline your Cubox > > > patches. Have you really given up? Can we remove mach-dove? > > > > Right now, I'm developing etnaviv in spare time on the Cubox[*], which > > is still primarily running a non-DT kernel. > > > > It's actually a kernel that I've hacked which is capable of booting > > both DT and non-DT, but even when booted in DT mode, I still require > > much of the arch/arm/mach-dove infrastructure to get things like > > armada-drm, etnaviv and other drivers running. Especially because > > we're missing things like the high-speed clocks (the stuff above the > > tclk domain.) I've not even started to work out how to get that > > into mainline, or how to integrate that with CCF. Quite what can be > > done with the audio patches, I've no idea, that remains a bone of > > contention and stalemate, and currently isn't DT-able. See the list > > of patches at the end of this message... > > I think it's ok to keep mach-dove around for a longer time to keep the > board file, I'm way more interested in completing the multiplatform > work at last. > > If I understand you right, being able to build mach-dove and mach-mvebu > together will actually help you remove one or more of your patches, > but of course will require a small bit of rebasing. This is something I already do, and it's trivial to make it work. You're doing it by moving some includes around, I've found that it's not necessary to move any includes around what so ever. The problem I have right now is that people are expecting me to do everything at once: people want me to write documentation for the component helper. People want me to merge more Dove patches. People want me to merge the Armada 38x work I have queued. People are wanting to get the etnaviv kernel driver out for merging this week, now that I've solved the final part of the etnaviv puzzle - but yesterday I've uncovered another user API issue that needs to be discussed and resolved. You know, there aren't enough me's to do everything - people just have to get used to the idea that if they're not willing to put the work in (iow, I have to put the work in) then things are going to be slow for anything that isn't funded work, because I have a lot on my plate. In the case of Dove, I only ever look at the current state of things once every kernel cycle, as I only ever update the tree to a final kernel release. That means it takes about five months between submission and seeing the result of those patches merged, so I can then sort through what other stuff needs to be sent. Why six months? Get it queued for the next merge window (which can be up to six to eight weeks away). Then wait a full kernel cycle (eight to ten weeks) for it to appear in a final kernel. That's 14 to 18 weeks. The last stuff which was merged was the PMU driver, merged in August. It's taken until 4.3 for this to become "visible" in my Dove tree. I should, at some point during this cycle - depending on my available time - start looking at what other pieces I can send, but what I'm saying is that this is the _earliest_ opportunity I have to start looking again at this. Meanwhile, during this last merge window, more Armada DRM patches have gone in, along with some TDA998x patches - both of which I term Dove patches because that's their applicable kernel tree that they get tested with. Meanwhile, Etnaviv is progressing, which again, is a Dove thing, because the Dove has a Vivante GC600 GPU, which etnaviv drives. Meanwhile, Andrew's complaining that he's not seen anything from me for a long time. What Andrew can't see is that the work is going on at the peripheral driver level, not at the core level, /because/ it's the peripheral drivers which are blocking me dropping the non-DT support. -- FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Lunn <andrew@lunn.ch> |
|---|---|
| Date | 2015-11-25 21:20 +0100 |
| Message-ID | <qyOHL-2Bf-7@gated-at.bofh.it> |
| In reply to | #1277512 |
On Wed, Nov 25, 2015 at 04:49:12PM +0100, Arnd Bergmann wrote: > I've posted these before and now gotten around to a rebase and > want to include them in the arm-soc next/multiplatform branch for > 4.5. > > Originally the plan for these platforms was to convert all of > them to DT and use only mach-mvebu. That has not happened, > so I would do it this way instead so we can at least have > them in a single kernel. > > Let me know if there are any concerns or objections. Hi Arnd I took a brief look at them. Acked-by: Andrew Lunn <andrew@lunn.ch> Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Gregory CLEMENT <gregory.clement@free-electrons.com> |
|---|---|
| Date | 2015-11-30 14:40 +0100 |
| Message-ID | <qAwQq-4ef-13@gated-at.bofh.it> |
| In reply to | #1277512 |
Hi Arnd,
On mer., nov. 25 2015, Arnd Bergmann <arnd@arndb.de> wrote:
> I've posted these before and now gotten around to a rebase and
> want to include them in the arm-soc next/multiplatform branch for
> 4.5.
>
> Originally the plan for these platforms was to convert all of
> them to DT and use only mach-mvebu. That has not happened,
> so I would do it this way instead so we can at least have
> them in a single kernel.
>
> Let me know if there are any concerns or objections.
I have applied all the patches on mvebu/oldmvebu_multiplatform (I fixed
the last one which didn't apply on Kconfig). I also merged it
mvebu/for-netx to be part of the linux-next.
But before making it part of mvebu/soc, I would like to get some
Tested-by. The series is available on
git://git.infradead.org/linux-mvebu.git
in the branch mvebu/oldmvebu_multiplatform but it also will be part soon
of linux-next.
Russell, Sebastian,
would you have some time to test it on Dove?
Detlef, Benjamin,
could you test it on an Orion5x based board?
Evgeniy,
could you test it on an mv78xx0 base board?
Actually we consider removing the support for this SoC unless there are
some user interested on them. As you are the last one claiming using a
mainline kernel on a mv78xx0, keeping the support will mainly depends on
you :)
Thanks,
Gregory
>
> Arnd Bergmann (5):
> ARM: orion: move watchdog setup to mach-orion5x
> ARM: orion: always use MULTI_IRQ_HANDLER
> ARM: orion: use SPARSE_IRQ everywhere
> ARM: orion: clean up mach/*.h headers
> ARM: orion: multiplatform support
>
> arch/arm/Kconfig | 40 ------------------
> arch/arm/configs/dove_defconfig | 2 +
> arch/arm/configs/mv78xx0_defconfig | 3 ++
> arch/arm/configs/orion5x_defconfig | 3 ++
> arch/arm/mach-dove/Kconfig | 15 +++++--
> arch/arm/mach-dove/Makefile | 2 +
> .../arm/mach-dove/{include/mach => }/bridge-regs.h | 4 +-
> arch/arm/mach-dove/cm-a510.c | 4 +-
> arch/arm/mach-dove/common.c | 4 +-
> arch/arm/mach-dove/dove-db-setup.c | 3 +-
> arch/arm/mach-dove/{include/mach => }/dove.h | 4 +-
> arch/arm/mach-dove/include/mach/entry-macro.S | 33 ---------------
> arch/arm/mach-dove/include/mach/hardware.h | 19 ---------
> arch/arm/mach-dove/include/mach/uncompress.h | 36 ----------------
> arch/arm/mach-dove/irq.c | 22 ++++------
> arch/arm/mach-dove/{include/mach => }/irqs.h | 4 +-
> arch/arm/mach-dove/mpp.c | 2 +-
> arch/arm/mach-dove/pcie.c | 4 +-
> arch/arm/mach-dove/{include/mach => }/pm.h | 6 +--
> arch/arm/mach-mv78xx0/Kconfig | 15 +++++--
> arch/arm/mach-mv78xx0/Makefile | 2 +
> .../mach-mv78xx0/{include/mach => }/bridge-regs.h | 4 +-
> arch/arm/mach-mv78xx0/buffalo-wxl-setup.c | 3 +-
> arch/arm/mach-mv78xx0/common.c | 4 +-
> arch/arm/mach-mv78xx0/db78x00-bp-setup.c | 3 +-
> arch/arm/mach-mv78xx0/include/mach/entry-macro.S | 41 ------------------
> arch/arm/mach-mv78xx0/include/mach/hardware.h | 14 -------
> arch/arm/mach-mv78xx0/include/mach/uncompress.h | 46 ---------------------
> arch/arm/mach-mv78xx0/irq.c | 35 +++++++++++++++-
> arch/arm/mach-mv78xx0/{include/mach => }/irqs.h | 4 +-
> arch/arm/mach-mv78xx0/mpp.c | 2 +-
> arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h | 4 +-
> arch/arm/mach-mv78xx0/pcie.c | 2 +-
> arch/arm/mach-mv78xx0/rd78x00-masa-setup.c | 3 +-
> arch/arm/mach-orion5x/Kconfig | 18 ++++++--
> arch/arm/mach-orion5x/Makefile | 2 +
> arch/arm/mach-orion5x/board-d2net.c | 2 +-
> arch/arm/mach-orion5x/board-dt.c | 4 +-
> arch/arm/mach-orion5x/board-mss2.c | 4 +-
> arch/arm/mach-orion5x/board-rd88f5182.c | 2 +-
> .../mach-orion5x/{include/mach => }/bridge-regs.h | 4 +-
> arch/arm/mach-orion5x/common.c | 20 +++++++--
> arch/arm/mach-orion5x/db88f5281-setup.c | 3 +-
> arch/arm/mach-orion5x/dns323-setup.c | 3 +-
> arch/arm/mach-orion5x/include/mach/entry-macro.S | 25 -----------
> arch/arm/mach-orion5x/include/mach/hardware.h | 14 -------
> arch/arm/mach-orion5x/include/mach/uncompress.h | 48 ----------------------
> arch/arm/mach-orion5x/irq.c | 13 +-----
> arch/arm/mach-orion5x/{include/mach => }/irqs.h | 4 +-
> arch/arm/mach-orion5x/kurobox_pro-setup.c | 4 +-
> arch/arm/mach-orion5x/ls-chl-setup.c | 3 +-
> arch/arm/mach-orion5x/ls_hgl-setup.c | 3 +-
> arch/arm/mach-orion5x/mpp.c | 2 +-
> arch/arm/mach-orion5x/mv2120-setup.c | 3 +-
> arch/arm/mach-orion5x/net2big-setup.c | 3 +-
> arch/arm/mach-orion5x/{include/mach => }/orion5x.h | 4 +-
> arch/arm/mach-orion5x/pci.c | 2 +-
> arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c | 3 +-
> arch/arm/mach-orion5x/rd88f5181l-ge-setup.c | 3 +-
> arch/arm/mach-orion5x/rd88f5182-setup.c | 3 +-
> arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c | 3 +-
> arch/arm/mach-orion5x/terastation_pro2-setup.c | 3 +-
> arch/arm/mach-orion5x/ts209-setup.c | 3 +-
> arch/arm/mach-orion5x/ts409-setup.c | 3 +-
> arch/arm/mach-orion5x/ts78xx-setup.c | 3 +-
> arch/arm/mach-orion5x/tsx09-common.c | 2 +-
> arch/arm/mach-orion5x/wnr854t-setup.c | 3 +-
> arch/arm/mach-orion5x/wrt350n-v2-setup.c | 3 +-
> arch/arm/plat-orion/common.c | 21 ----------
> arch/arm/plat-orion/include/plat/common.h | 2 -
> arch/arm/plat-orion/irq.c | 1 -
> arch/arm/plat-orion/mpp.c | 1 -
> 72 files changed, 185 insertions(+), 454 deletions(-)
> rename arch/arm/mach-dove/{include/mach => }/bridge-regs.h (96%)
> rename arch/arm/mach-dove/{include/mach => }/dove.h (99%)
> delete mode 100644 arch/arm/mach-dove/include/mach/entry-macro.S
> delete mode 100644 arch/arm/mach-dove/include/mach/hardware.h
> delete mode 100644 arch/arm/mach-dove/include/mach/uncompress.h
> rename arch/arm/mach-dove/{include/mach => }/irqs.h (96%)
> rename arch/arm/mach-dove/{include/mach => }/pm.h (95%)
> rename arch/arm/mach-mv78xx0/{include/mach => }/bridge-regs.h (92%)
> delete mode 100644 arch/arm/mach-mv78xx0/include/mach/entry-macro.S
> delete mode 100644 arch/arm/mach-mv78xx0/include/mach/hardware.h
> delete mode 100644 arch/arm/mach-mv78xx0/include/mach/uncompress.h
> rename arch/arm/mach-mv78xx0/{include/mach => }/irqs.h (95%)
> rename arch/arm/mach-mv78xx0/{include/mach => }/mv78xx0.h (98%)
> rename arch/arm/mach-orion5x/{include/mach => }/bridge-regs.h (92%)
> delete mode 100644 arch/arm/mach-orion5x/include/mach/entry-macro.S
> delete mode 100644 arch/arm/mach-orion5x/include/mach/hardware.h
> delete mode 100644 arch/arm/mach-orion5x/include/mach/uncompress.h
> rename arch/arm/mach-orion5x/{include/mach => }/irqs.h (94%)
> rename arch/arm/mach-orion5x/{include/mach => }/orion5x.h (99%)
>
> --
> 2.1.0.rc2
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-12-02 00:00 +0100 |
| Message-ID | <qB23U-7jj-7@gated-at.bofh.it> |
| In reply to | #1279862 |
On Tuesday 01 December 2015 23:51:26 Andrew Lunn wrote: > On Mon, Nov 30, 2015 at 02:37:31PM +0100, Gregory CLEMENT wrote: > > Hi Arnd, > > > > On mer., nov. 25 2015, Arnd Bergmann <arnd@arndb.de> wrote: > > > > > I've posted these before and now gotten around to a rebase and > > > want to include them in the arm-soc next/multiplatform branch for > > > 4.5. > > > > > > Originally the plan for these platforms was to convert all of > > > them to DT and use only mach-mvebu. That has not happened, > > > so I would do it this way instead so we can at least have > > > them in a single kernel. > > > > > > Let me know if there are any concerns or objections. > > > > I have applied all the patches on mvebu/oldmvebu_multiplatform (I fixed > > the last one which didn't apply on Kconfig). I also merged it > > mvebu/for-netx to be part of the linux-next. > > > > But before making it part of mvebu/soc, I would like to get some > > Tested-by. The series is available on > > git://git.infradead.org/linux-mvebu.git > > in the branch mvebu/oldmvebu_multiplatform but it also will be part soon > > of linux-next. > > Hi Gregory > > I blew the dust of my Orion5x NAS Reference Design. It boots. > > Tested-by: Andrew Lunn <andrew@lunn.ch> Thanks for testing! > It would be nice to make Orion5x part of the multi_v5_defconfig and > mvebu_v5_defconfig. I will see about cooking up some patches. Good idea. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
Page 1 of 3 [1] 2 3 Next page →
Back to top | Article view | linux.kernel
csiph-web