aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-07-06 15:39:39 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2013-07-06 15:39:39 -0400
commit7644a448ccf200d95ad4426e84a486dec5cc1703 (patch)
tree2743ee79bd0b42b96c4c2d6f7194e2e2ccfc8572
parent16984ce15ea43e17d964ece55ce336a8a4f40750 (diff)
parentc20eb0f1d0918c019fb2674a104e6ab59d8e62ac (diff)
Merge tag 'metag-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag
Pull Metag architecture changes from James Hogan: - Infrastructure and DT files for TZ1090 SoC (pin control drivers already merged via pinctrl tree). - Panic on boot instead of just warning if cache aliasing possible. - Various SMP/hotplug fixes. - Various other randconfig/sparse fixes. * tag 'metag-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag: (24 commits) metag: move EXPORT_SYMBOL(csum_partial) to metag_ksyms.c metag: cpu hotplug: route_irq: preserve irq mask metag: kick: add missing irq_enter/exit to kick_handler() metag: smp: don't spin waiting for CPU to start metag: smp: enable irqs after set_cpu_online metag: use clear_tasks_mm_cpumask() metag: tz1090: select and instantiate pinctrl-tz1090-pdc metag: tz1090: select and instantiate pinctrl-tz1090 metag: don't check for cache aliasing on smp cpu boot metag: panic if cache aliasing possible metag: *.dts: include using preprocessor metag: add <dt-bindings/> symlink metag/.gitignore: Extend the *.dtb pattern to match the dtb.S files metag/traps: include setup.h for the per_cpu_trap_init declaration metag/traps: Mark die() as __noreturn to match the declaration. metag/processor.h: Add missing cpuinfo_op declaration. metag/setup: Restrict scope for the capabilities variable metag/mm/cache: Restrict scope for metag_lnkget_probe metag/asm/irq.h: Declare init_IRQ metag/kernel/irq.c: Declare root_domain as static ...
-rw-r--r--Documentation/devicetree/bindings/metag/meta.txt30
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt1
-rw-r--r--arch/metag/Kconfig.soc12
-rw-r--r--arch/metag/Makefile2
-rw-r--r--arch/metag/boot/.gitignore2
-rw-r--r--arch/metag/boot/dts/Makefile2
l---------arch/metag/boot/dts/include/dt-bindings1
-rw-r--r--arch/metag/boot/dts/skeleton.dts2
-rw-r--r--arch/metag/boot/dts/tz1090.dtsi41
-rw-r--r--arch/metag/boot/dts/tz1090_generic.dts10
-rw-r--r--arch/metag/configs/tz1090_defconfig42
-rw-r--r--arch/metag/include/asm/bug.h4
-rw-r--r--arch/metag/include/asm/clock.h8
-rw-r--r--arch/metag/include/asm/irq.h1
-rw-r--r--arch/metag/include/asm/processor.h2
-rw-r--r--arch/metag/kernel/cachepart.c13
-rw-r--r--arch/metag/kernel/clock.c59
-rw-r--r--arch/metag/kernel/irq.c7
-rw-r--r--arch/metag/kernel/kick.c9
-rw-r--r--arch/metag/kernel/metag_ksyms.c5
-rw-r--r--arch/metag/kernel/setup.c16
-rw-r--r--arch/metag/kernel/smp.c35
-rw-r--r--arch/metag/kernel/time.c14
-rw-r--r--arch/metag/kernel/traps.c5
-rw-r--r--arch/metag/lib/checksum.c1
-rw-r--r--arch/metag/mm/cache.c2
-rw-r--r--drivers/clocksource/metag_generic.c2
27 files changed, 276 insertions, 52 deletions
diff --git a/Documentation/devicetree/bindings/metag/meta.txt b/Documentation/devicetree/bindings/metag/meta.txt
new file mode 100644
index 000000000000..f4457f57ab08
--- /dev/null
+++ b/Documentation/devicetree/bindings/metag/meta.txt
@@ -0,0 +1,30 @@
1* Meta Processor Binding
2
3This binding specifies what properties must be available in the device tree
4representation of a Meta Processor Core, which is the root node in the tree.
5
6Required properties:
7
8 - compatible: Specifies the compatibility list for the Meta processor.
9 The type shall be <string> and the value shall include "img,meta".
10
11Optional properties:
12
13 - clocks: Clock consumer specifiers as described in
14 Documentation/devicetree/bindings/clock/clock-bindings.txt
15
16 - clock-names: Clock consumer names as described in
17 Documentation/devicetree/bindings/clock/clock-bindings.txt.
18
19Clocks are identified by name. Valid clocks are:
20
21 - "core": The Meta core clock from which the Meta timers are derived.
22
23* Examples
24
25/ {
26 compatible = "toumaz,tz1090", "img,meta";
27
28 clocks = <&meta_core_clk>;
29 clock-names = "core";
30};
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index db0457d61682..948f61561ffa 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -58,6 +58,7 @@ snps Synopsys, Inc.
58st STMicroelectronics 58st STMicroelectronics
59ste ST-Ericsson 59ste ST-Ericsson
60stericsson ST-Ericsson 60stericsson ST-Ericsson
61toumaz Toumaz
61ti Texas Instruments 62ti Texas Instruments
62toshiba Toshiba Corporation 63toshiba Toshiba Corporation
63v3 V3 Semiconductor 64v3 V3 Semiconductor
diff --git a/arch/metag/Kconfig.soc b/arch/metag/Kconfig.soc
index ec079cfb7c6a..2a3c860c7525 100644
--- a/arch/metag/Kconfig.soc
+++ b/arch/metag/Kconfig.soc
@@ -14,6 +14,18 @@ config META21_FPGA
14 help 14 help
15 This is a Meta 2.1 FPGA bitstream, just a bare CPU. 15 This is a Meta 2.1 FPGA bitstream, just a bare CPU.
16 16
17config SOC_TZ1090
18 bool "Toumaz Xenif TZ1090 SoC (Comet)"
19 select METAG_LNKGET_AROUND_CACHE
20 select METAG_META21
21 select METAG_SMP_WRITE_REORDERING
22 select PINCTRL
23 select PINCTRL_TZ1090
24 select PINCTRL_TZ1090_PDC
25 help
26 This is a Toumaz Technology Xenif TZ1090 (A.K.A. Comet) SoC containing
27 a 2-threaded HTP.
28
17endchoice 29endchoice
18 30
19menu "SoC configuration" 31menu "SoC configuration"
diff --git a/arch/metag/Makefile b/arch/metag/Makefile
index b566116b171b..9739857bdedc 100644
--- a/arch/metag/Makefile
+++ b/arch/metag/Makefile
@@ -20,7 +20,7 @@ checkflags-$(CONFIG_METAG_META12) += -DMETAC_1_2
20checkflags-$(CONFIG_METAG_META21) += -DMETAC_2_1 20checkflags-$(CONFIG_METAG_META21) += -DMETAC_2_1
21CHECKFLAGS += -D__metag__ $(checkflags-y) 21CHECKFLAGS += -D__metag__ $(checkflags-y)
22 22
23KBUILD_DEFCONFIG := meta2_defconfig 23KBUILD_DEFCONFIG := tz1090_defconfig
24 24
25sflags-$(CONFIG_METAG_META12) += -mmetac=1.2 25sflags-$(CONFIG_METAG_META12) += -mmetac=1.2
26ifeq ($(CONFIG_METAG_META12),y) 26ifeq ($(CONFIG_METAG_META12),y)
diff --git a/arch/metag/boot/.gitignore b/arch/metag/boot/.gitignore
index a021da201156..2d6c0c160884 100644
--- a/arch/metag/boot/.gitignore
+++ b/arch/metag/boot/.gitignore
@@ -1,4 +1,4 @@
1vmlinux* 1vmlinux*
2uImage* 2uImage*
3ramdisk.* 3ramdisk.*
4*.dtb 4*.dtb*
diff --git a/arch/metag/boot/dts/Makefile b/arch/metag/boot/dts/Makefile
index dbd95217733a..72c121879426 100644
--- a/arch/metag/boot/dts/Makefile
+++ b/arch/metag/boot/dts/Makefile
@@ -1,7 +1,9 @@
1dtb-y += skeleton.dtb 1dtb-y += skeleton.dtb
2dtb-y += tz1090_generic.dtb
2 3
3# Built-in dtb 4# Built-in dtb
4builtindtb-y := skeleton 5builtindtb-y := skeleton
6builtindtb-$(CONFIG_SOC_TZ1090) := tz1090_generic
5 7
6ifneq ($(CONFIG_METAG_BUILTIN_DTB_NAME),"") 8ifneq ($(CONFIG_METAG_BUILTIN_DTB_NAME),"")
7 builtindtb-y := $(patsubst "%",%,$(CONFIG_METAG_BUILTIN_DTB_NAME)) 9 builtindtb-y := $(patsubst "%",%,$(CONFIG_METAG_BUILTIN_DTB_NAME))
diff --git a/arch/metag/boot/dts/include/dt-bindings b/arch/metag/boot/dts/include/dt-bindings
new file mode 120000
index 000000000000..08c00e4972fa
--- /dev/null
+++ b/arch/metag/boot/dts/include/dt-bindings
@@ -0,0 +1 @@
../../../../../include/dt-bindings \ No newline at end of file
diff --git a/arch/metag/boot/dts/skeleton.dts b/arch/metag/boot/dts/skeleton.dts
index 7244d1f0d555..7a49aeb365d0 100644
--- a/arch/metag/boot/dts/skeleton.dts
+++ b/arch/metag/boot/dts/skeleton.dts
@@ -7,4 +7,4 @@
7 */ 7 */
8/dts-v1/; 8/dts-v1/;
9 9
10/include/ "skeleton.dtsi" 10#include "skeleton.dtsi"
diff --git a/arch/metag/boot/dts/tz1090.dtsi b/arch/metag/boot/dts/tz1090.dtsi
new file mode 100644
index 000000000000..853744652b93
--- /dev/null
+++ b/arch/metag/boot/dts/tz1090.dtsi
@@ -0,0 +1,41 @@
1/*
2 * Copyright (C) 2012 Imagination Technologies Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9#include "skeleton.dtsi"
10
11/ {
12 compatible = "toumaz,tz1090", "img,meta";
13
14 interrupt-parent = <&intc>;
15
16 intc: interrupt-controller {
17 compatible = "img,meta-intc";
18 interrupt-controller;
19 #interrupt-cells = <2>;
20 num-banks = <2>;
21 };
22
23 soc {
24 compatible = "simple-bus";
25 #address-cells = <1>;
26 #size-cells = <1>;
27 ranges;
28
29 pinctrl: pinctrl@02005800 {