* [PATCH v2 2/4] arm64, thunder: Add initial dts for Cavium Thunder SoC
[not found] <1409903205-2762-1-git-send-email-rric@kernel.org>
@ 2014-09-05 7:46 ` Robert Richter
[not found] ` <1409903205-2762-3-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2014-09-05 7:46 ` [PATCH v2 3/4] arm64, thunder: Document devicetree bindings " Robert Richter
1 sibling, 1 reply; 8+ messages in thread
From: Robert Richter @ 2014-09-05 7:46 UTC (permalink / raw)
To: Will Deacon, Mark Rutland, Rob Herring, Arnd Bergmann, Pawel Moll,
Ian Campbell, Kumar Gala, Catalin Marinas
Cc: Radha Mohan Chintakuntla, Olof Johansson, linux-arm-kernel,
linux-kernel, Robert Richter, devicetree
From: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
Add initial device tree nodes for Cavium Thunder SoCs with support of
48 cores and gicv3. The dts file requires further changes, esp. for
pci, gicv3-its and smmu. This changes will be added later together
with the device drivers.
Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
Signed-off-by: Robert Richter <rrichter@cavium.com>
---
arch/arm64/boot/dts/Makefile | 1 +
arch/arm64/boot/dts/thunder-88xx.dts | 414 +++++++++++++++++++++++++++++++++++
2 files changed, 415 insertions(+)
create mode 100644 arch/arm64/boot/dts/thunder-88xx.dts
diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index c52bdb051f66..f8001a62029c 100644
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -1,3 +1,4 @@
+dtb-$(CONFIG_ARCH_THUNDER) += thunder-88xx.dtb
dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
diff --git a/arch/arm64/boot/dts/thunder-88xx.dts b/arch/arm64/boot/dts/thunder-88xx.dts
new file mode 100644
index 000000000000..4cc1d059d2d9
--- /dev/null
+++ b/arch/arm64/boot/dts/thunder-88xx.dts
@@ -0,0 +1,414 @@
+/*
+ * Cavium Thunder DTS file
+ *
+ * Copyright (C) 2014, Cavium Inc.
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ * a) This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ * MA 02110-1301 USA
+ *
+ * Or, alternatively,
+ *
+ * b) Permission is hereby granted, free of charge, to any person
+ * obtaining a copy of this software and associated documentation
+ * files (the "Software"), to deal in the Software without
+ * restriction, including without limitation the rights to use,
+ * copy, modify, merge, publish, distribute, sublicense, and/or
+ * sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following
+ * conditions:
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/dts-v1/;
+
+/ {
+ model = "Cavium ThunderX CN88XX Family";
+ compatible = "cavium,thunder-88xx";
+ interrupt-parent = <&gic0>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ aliases {
+ serial0 = &uaa0;
+ serial1 = &uaa1;
+ };
+
+ psci {
+ compatible = "arm,psci-0.2";
+ method = "smc";
+ };
+
+ cpus {
+ #address-cells = <2>;
+ #size-cells = <0>;
+
+ cpu@000 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x000>;
+ enable-method = "psci";
+ };
+ cpu@001 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x001>;
+ enable-method = "psci";
+ };
+ cpu@002 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x002>;
+ enable-method = "psci";
+ };
+ cpu@003 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x003>;
+ enable-method = "psci";
+ };
+ cpu@004 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x004>;
+ enable-method = "psci";
+ };
+ cpu@005 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x005>;
+ enable-method = "psci";
+ };
+ cpu@006 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x006>;
+ enable-method = "psci";
+ };
+ cpu@007 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x007>;
+ enable-method = "psci";
+ };
+ cpu@008 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x008>;
+ enable-method = "psci";
+ };
+ cpu@009 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x009>;
+ enable-method = "psci";
+ };
+ cpu@00a {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00a>;
+ enable-method = "psci";
+ };
+ cpu@00b {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00b>;
+ enable-method = "psci";
+ };
+ cpu@00c {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00c>;
+ enable-method = "psci";
+ };
+ cpu@00d {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00d>;
+ enable-method = "psci";
+ };
+ cpu@00e {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00e>;
+ enable-method = "psci";
+ };
+ cpu@00f {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x00f>;
+ enable-method = "psci";
+ };
+ cpu@100 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x100>;
+ enable-method = "psci";
+ };
+ cpu@101 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x101>;
+ enable-method = "psci";
+ };
+ cpu@102 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x102>;
+ enable-method = "psci";
+ };
+ cpu@103 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x103>;
+ enable-method = "psci";
+ };
+ cpu@104 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x104>;
+ enable-method = "psci";
+ };
+ cpu@105 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x105>;
+ enable-method = "psci";
+ };
+ cpu@106 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x106>;
+ enable-method = "psci";
+ };
+ cpu@107 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x107>;
+ enable-method = "psci";
+ };
+ cpu@108 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x108>;
+ enable-method = "psci";
+ };
+ cpu@109 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x109>;
+ enable-method = "psci";
+ };
+ cpu@10a {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10a>;
+ enable-method = "psci";
+ };
+ cpu@10b {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10b>;
+ enable-method = "psci";
+ };
+ cpu@10c {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10c>;
+ enable-method = "psci";
+ };
+ cpu@10d {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10d>;
+ enable-method = "psci";
+ };
+ cpu@10e {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10e>;
+ enable-method = "psci";
+ };
+ cpu@10f {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x10f>;
+ enable-method = "psci";
+ };
+ cpu@200 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x200>;
+ enable-method = "psci";
+ };
+ cpu@201 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x201>;
+ enable-method = "psci";
+ };
+ cpu@202 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x202>;
+ enable-method = "psci";
+ };
+ cpu@203 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x203>;
+ enable-method = "psci";
+ };
+ cpu@204 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x204>;
+ enable-method = "psci";
+ };
+ cpu@205 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x205>;
+ enable-method = "psci";
+ };
+ cpu@206 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x206>;
+ enable-method = "psci";
+ };
+ cpu@207 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x207>;
+ enable-method = "psci";
+ };
+ cpu@208 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x208>;
+ enable-method = "psci";
+ };
+ cpu@209 {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x209>;
+ enable-method = "psci";
+ };
+ cpu@20a {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20a>;
+ enable-method = "psci";
+ };
+ cpu@20b {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20b>;
+ enable-method = "psci";
+ };
+ cpu@20c {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20c>;
+ enable-method = "psci";
+ };
+ cpu@20d {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20d>;
+ enable-method = "psci";
+ };
+ cpu@20e {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20e>;
+ enable-method = "psci";
+ };
+ cpu@20f {
+ device_type = "cpu";
+ compatible = "cavium,thunder", "arm,armv8";
+ reg = <0x0 0x20f>;
+ enable-method = "psci";
+ };
+ };
+
+ memory@00000000 {
+ device_type = "memory";
+ reg = <0x0 0x00000000 0x0 0x80000000>;
+ };
+
+ timer {
+ compatible = "arm,armv8-timer";
+ interrupts = <1 13 0xff01>,
+ <1 14 0xff01>,
+ <1 11 0xff01>,
+ <1 10 0xff01>;
+ };
+
+ soc {
+ compatible = "simple-bus";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ refclk50mhz: refclk50mhz {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <50000000>;
+ clock-output-names = "refclk50mhz";
+ };
+
+ gic0: interrupt-controller@8010,00000000 {
+ compatible = "arm,gic-v3";
+ #interrupt-cells = <3>;
+ interrupt-controller;
+ reg = <0x8010 0x00000000 0x0 0x010000>, /* GICD */
+ <0x8010 0x80000000 0x0 0x200000>; /* GICR */
+ interrupts = <1 9 0xf04>;
+ };
+
+ uaa0: serial@87e0,24000000 {
+ compatible = "arm,pl011", "arm,primecell";
+ reg = <0x87e0 0x24000000 0x0 0x1000>;
+ interrupts = <1 21 4>;
+ clocks = <&refclk50mhz>;
+ clock-names = "apb_pclk";
+ };
+
+ uaa1: serial@87e0,25000000 {
+ compatible = "arm,pl011", "arm,primecell";
+ reg = <0x87e0 0x25000000 0x0 0x1000>;
+ interrupts = <1 22 4>;
+ clocks = <&refclk50mhz>;
+ clock-names = "apb_pclk";
+ };
+ };
+};
--
2.0.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 3/4] arm64, thunder: Document devicetree bindings for Cavium Thunder SoC
[not found] <1409903205-2762-1-git-send-email-rric@kernel.org>
2014-09-05 7:46 ` [PATCH v2 2/4] arm64, thunder: Add initial dts for Cavium Thunder SoC Robert Richter
@ 2014-09-05 7:46 ` Robert Richter
[not found] ` <1409903205-2762-4-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
1 sibling, 1 reply; 8+ messages in thread
From: Robert Richter @ 2014-09-05 7:46 UTC (permalink / raw)
To: Will Deacon, Mark Rutland, Rob Herring, Arnd Bergmann, Pawel Moll,
Ian Campbell, Kumar Gala
Cc: Radha Mohan Chintakuntla, Olof Johansson, linux-arm-kernel,
linux-kernel, Robert Richter, devicetree
From: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
This patch adds documentation for the devicetree bindings used by the
DT files of Cavium Thunder SoC platforms.
Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
Signed-off-by: Robert Richter <rrichter@cavium.com>
---
Documentation/devicetree/bindings/arm/cavium-thunder.txt | 10 ++++++++++
Documentation/devicetree/bindings/arm/cpus.txt | 1 +
2 files changed, 11 insertions(+)
create mode 100644 Documentation/devicetree/bindings/arm/cavium-thunder.txt
diff --git a/Documentation/devicetree/bindings/arm/cavium-thunder.txt b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
new file mode 100644
index 000000000000..6f63a5866902
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
@@ -0,0 +1,10 @@
+Cavium Thunder platform device tree bindings
+--------------------------------------------
+
+Boards with Cavium's Thunder SoC shall have following properties.
+
+Root Node
+---------
+Required root node properties:
+
+ - compatible = "cavium,thunder-88xx";
diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt
index 298e2f6b33c6..578796a2cfa9 100644
--- a/Documentation/devicetree/bindings/arm/cpus.txt
+++ b/Documentation/devicetree/bindings/arm/cpus.txt
@@ -166,6 +166,7 @@ nodes to be present and contain the properties described below.
"arm,cortex-r5"
"arm,cortex-r7"
"brcm,brahma-b15"
+ "cavium,thunder"
"faraday,fa526"
"intel,sa110"
"intel,sa1100"
--
2.0.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/4] arm64, thunder: Document devicetree bindings for Cavium Thunder SoC
[not found] ` <1409903205-2762-4-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
@ 2014-09-05 8:42 ` Will Deacon
2014-09-05 9:32 ` Robert Richter
0 siblings, 1 reply; 8+ messages in thread
From: Will Deacon @ 2014-09-05 8:42 UTC (permalink / raw)
To: Robert Richter
Cc: Mark Rutland, Rob Herring, Arnd Bergmann, Pawel Moll,
Ian Campbell, Kumar Gala, Radha Mohan Chintakuntla,
Olof Johansson,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Robert Richter,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
On Fri, Sep 05, 2014 at 08:46:44AM +0100, Robert Richter wrote:
> From: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
>
> This patch adds documentation for the devicetree bindings used by the
> DT files of Cavium Thunder SoC platforms.
>
> Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> Signed-off-by: Robert Richter <rrichter-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> ---
> Documentation/devicetree/bindings/arm/cavium-thunder.txt | 10 ++++++++++
> Documentation/devicetree/bindings/arm/cpus.txt | 1 +
> 2 files changed, 11 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/arm/cavium-thunder.txt
>
> diff --git a/Documentation/devicetree/bindings/arm/cavium-thunder.txt b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> new file mode 100644
> index 000000000000..6f63a5866902
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> @@ -0,0 +1,10 @@
> +Cavium Thunder platform device tree bindings
> +--------------------------------------------
> +
> +Boards with Cavium's Thunder SoC shall have following properties.
> +
> +Root Node
> +---------
> +Required root node properties:
> +
> + - compatible = "cavium,thunder-88xx";
Is this file necessary? We don't have one for xgene afaict.
Will
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/4] arm64, thunder: Document devicetree bindings for Cavium Thunder SoC
2014-09-05 8:42 ` Will Deacon
@ 2014-09-05 9:32 ` Robert Richter
[not found] ` <20140905093222.GS4703-vWBEXY7mpu73kLQC+b9v0A@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Robert Richter @ 2014-09-05 9:32 UTC (permalink / raw)
To: Will Deacon
Cc: Mark Rutland, Rob Herring, Arnd Bergmann, Pawel Moll,
Ian Campbell, Kumar Gala, Radha Mohan Chintakuntla,
Olof Johansson, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Robert Richter,
devicetree@vger.kernel.org
On 05.09.14 09:42:00, Will Deacon wrote:
> On Fri, Sep 05, 2014 at 08:46:44AM +0100, Robert Richter wrote:
> > From: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
> >
> > This patch adds documentation for the devicetree bindings used by the
> > DT files of Cavium Thunder SoC platforms.
> >
> > Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
> > Signed-off-by: Robert Richter <rrichter@cavium.com>
> > ---
> > Documentation/devicetree/bindings/arm/cavium-thunder.txt | 10 ++++++++++
> > Documentation/devicetree/bindings/arm/cpus.txt | 1 +
> > 2 files changed, 11 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/arm/cavium-thunder.txt
> >
> > diff --git a/Documentation/devicetree/bindings/arm/cavium-thunder.txt b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > new file mode 100644
> > index 000000000000..6f63a5866902
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > @@ -0,0 +1,10 @@
> > +Cavium Thunder platform device tree bindings
> > +--------------------------------------------
> > +
> > +Boards with Cavium's Thunder SoC shall have following properties.
> > +
> > +Root Node
> > +---------
> > +Required root node properties:
> > +
> > + - compatible = "cavium,thunder-88xx";
>
> Is this file necessary? We don't have one for xgene afaict.
Hmm, looking at Documentation/devicetree/bindings/arm/calxeda.txt
there is something similar.
I am fine with both, keeping or removing it.
Would leave this to the DT maintainers.
-Robert
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/4] arm64, thunder: Document devicetree bindings for Cavium Thunder SoC
[not found] ` <20140905093222.GS4703-vWBEXY7mpu73kLQC+b9v0A@public.gmane.org>
@ 2014-09-05 9:39 ` Mark Rutland
2014-09-08 7:54 ` Robert Richter
0 siblings, 1 reply; 8+ messages in thread
From: Mark Rutland @ 2014-09-05 9:39 UTC (permalink / raw)
To: Robert Richter
Cc: Will Deacon, Rob Herring, Arnd Bergmann, Pawel Moll, Ian Campbell,
Kumar Gala, Radha Mohan Chintakuntla, Olof Johansson,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Robert Richter,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
On Fri, Sep 05, 2014 at 10:32:22AM +0100, Robert Richter wrote:
> On 05.09.14 09:42:00, Will Deacon wrote:
> > On Fri, Sep 05, 2014 at 08:46:44AM +0100, Robert Richter wrote:
> > > From: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > >
> > > This patch adds documentation for the devicetree bindings used by the
> > > DT files of Cavium Thunder SoC platforms.
> > >
> > > Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > > Signed-off-by: Robert Richter <rrichter-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > > ---
> > > Documentation/devicetree/bindings/arm/cavium-thunder.txt | 10 ++++++++++
> > > Documentation/devicetree/bindings/arm/cpus.txt | 1 +
> > > 2 files changed, 11 insertions(+)
> > > create mode 100644 Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/cavium-thunder.txt b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > > new file mode 100644
> > > index 000000000000..6f63a5866902
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > > @@ -0,0 +1,10 @@
> > > +Cavium Thunder platform device tree bindings
> > > +--------------------------------------------
> > > +
> > > +Boards with Cavium's Thunder SoC shall have following properties.
> > > +
> > > +Root Node
> > > +---------
> > > +Required root node properties:
> > > +
> > > + - compatible = "cavium,thunder-88xx";
> >
> > Is this file necessary? We don't have one for xgene afaict.
>
> Hmm, looking at Documentation/devicetree/bindings/arm/calxeda.txt
> there is something similar.
>
> I am fine with both, keeping or removing it.
>
> Would leave this to the DT maintainers.
Having a required root node compatible is fine, though I would only
expect it to be necessary for errata workarounds if we have no other way
of detecting things.
That said, compatible strings shouldn't have wildcards, so
"cavium,thunder-88xx" should be replaced with something more specific.
Later boards can claim compatibility with that (but should have their
own strings too).
Mark.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/4] arm64, thunder: Add initial dts for Cavium Thunder SoC
[not found] ` <1409903205-2762-3-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
@ 2014-09-05 11:21 ` Arnd Bergmann
2014-09-11 14:51 ` Robert Richter
0 siblings, 1 reply; 8+ messages in thread
From: Arnd Bergmann @ 2014-09-05 11:21 UTC (permalink / raw)
To: Robert Richter
Cc: Will Deacon, Mark Rutland, Rob Herring, Pawel Moll, Ian Campbell,
Kumar Gala, Catalin Marinas, Radha Mohan Chintakuntla,
Olof Johansson, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA, Robert Richter,
devicetree-u79uwXL29TY76Z2rM5mHXA
On Friday 05 September 2014 09:46:43 Robert Richter wrote:
> diff --git a/arch/arm64/boot/dts/thunder-88xx.dts b/arch/arm64/boot/dts/thunder-88xx.dts
> new file mode 100644
> index 000000000000..4cc1d059d2d9
> --- /dev/null
> +++ b/arch/arm64/boot/dts/thunder-88xx.dts
Most people end up having a soc.dtsi file and a board.dsi file including
the former and adding the machine-specific properties.
It is likely that you will end up needing the same, so you might want to
start that way.
> +/ {
> + model = "Cavium ThunderX CN88XX Family";
> + compatible = "cavium,thunder-88xx";
As mentioned by Mark already, you should not include 'xx' in the
compatible string, but instead use the real soc ID.
Normally, each SoC has some slight differences anyway, so you would
override these in the specialized dtsi file.
The "model" property should go into the board specific file.
> + interrupt-parent = <&gic0>;
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + aliases {
> + serial0 = &uaa0;
> + serial1 = &uaa1;
> + };
> +
> + psci {
> + compatible = "arm,psci-0.2";
> + method = "smc";
> + };
The aliases node should go into the board file as well, since it's
possible that e.g. the first uart is not connected and you need
something like
aliases {
serial0 = &uaa1;
};
The psci node (according to a discussion we just had for the freescale
dts files) should ideally get filled out by the boot loader that
implements the psci code, to ensure the version matches.
> +
> + memory@00000000 {
> + device_type = "memory";
> + reg = <0x0 0x00000000 0x0 0x80000000>;
> + };
memory should also go into the board specific file, or get filled by
the boot loader if it is detected at boot time and user serviceable.
I assume that your machines have NUMA properties, in that case it
makes sense to split up the memory device nodes by topology. I think
there are some standard properties to describe the topology further,
but I don't remember how it's done at the moment.
> + soc {
> + compatible = "simple-bus";
> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges;
> +
> + refclk50mhz: refclk50mhz {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <50000000>;
> + clock-output-names = "refclk50mhz";
> + };
If the reference clock is generated outside of the SoC, I would put the device
node for it on the top level.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/4] arm64, thunder: Document devicetree bindings for Cavium Thunder SoC
2014-09-05 9:39 ` Mark Rutland
@ 2014-09-08 7:54 ` Robert Richter
0 siblings, 0 replies; 8+ messages in thread
From: Robert Richter @ 2014-09-08 7:54 UTC (permalink / raw)
To: Mark Rutland
Cc: Will Deacon, Rob Herring, Arnd Bergmann, Pawel Moll, Ian Campbell,
Kumar Gala, Radha Mohan Chintakuntla, Olof Johansson,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Robert Richter,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
On 05.09.14 10:39:33, Mark Rutland wrote:
> On Fri, Sep 05, 2014 at 10:32:22AM +0100, Robert Richter wrote:
> > On 05.09.14 09:42:00, Will Deacon wrote:
> > > On Fri, Sep 05, 2014 at 08:46:44AM +0100, Robert Richter wrote:
> > > > From: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > > >
> > > > This patch adds documentation for the devicetree bindings used by the
> > > > DT files of Cavium Thunder SoC platforms.
> > > >
> > > > Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > > > Signed-off-by: Robert Richter <rrichter-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
> > > > ---
> > > > Documentation/devicetree/bindings/arm/cavium-thunder.txt | 10 ++++++++++
> > > > Documentation/devicetree/bindings/arm/cpus.txt | 1 +
> > > > 2 files changed, 11 insertions(+)
> > > > create mode 100644 Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/cavium-thunder.txt b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > > > new file mode 100644
> > > > index 000000000000..6f63a5866902
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/arm/cavium-thunder.txt
> > > > @@ -0,0 +1,10 @@
> > > > +Cavium Thunder platform device tree bindings
> > > > +--------------------------------------------
> > > > +
> > > > +Boards with Cavium's Thunder SoC shall have following properties.
> > > > +
> > > > +Root Node
> > > > +---------
> > > > +Required root node properties:
> > > > +
> > > > + - compatible = "cavium,thunder-88xx";
> > >
> > > Is this file necessary? We don't have one for xgene afaict.
> >
> > Hmm, looking at Documentation/devicetree/bindings/arm/calxeda.txt
> > there is something similar.
> >
> > I am fine with both, keeping or removing it.
> >
> > Would leave this to the DT maintainers.
>
> Having a required root node compatible is fine, though I would only
> expect it to be necessary for errata workarounds if we have no other way
> of detecting things.
Ok, will keep the change.
> That said, compatible strings shouldn't have wildcards, so
> "cavium,thunder-88xx" should be replaced with something more specific.
> Later boards can claim compatibility with that (but should have their
> own strings too).
88xx is not a wildcard for chips, there are no chips named 8800 or
whatever, instead we have e.g. 87xx. That said, 88xx is the specific
name of the soc and the first reference board. If there will be other
boards with the same soc, it should have its own name but should be
compatible with cavium,thunder-88xx. Later soc revisions will get a
different name than thunder-88xx for differentiation.
-Robert
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/4] arm64, thunder: Add initial dts for Cavium Thunder SoC
2014-09-05 11:21 ` Arnd Bergmann
@ 2014-09-11 14:51 ` Robert Richter
0 siblings, 0 replies; 8+ messages in thread
From: Robert Richter @ 2014-09-11 14:51 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Mark Rutland, devicetree, Robert Richter, Pawel Moll,
Ian Campbell, Catalin Marinas, Will Deacon, linux-kernel,
Rob Herring, Kumar Gala, Olof Johansson, Radha Mohan Chintakuntla,
linux-arm-kernel
Arnd,
On 05.09.14 13:21:48, Arnd Bergmann wrote:
> On Friday 05 September 2014 09:46:43 Robert Richter wrote:
> > diff --git a/arch/arm64/boot/dts/thunder-88xx.dts b/arch/arm64/boot/dts/thunder-88xx.dts
> > new file mode 100644
> > index 000000000000..4cc1d059d2d9
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/thunder-88xx.dts
>
> Most people end up having a soc.dtsi file and a board.dsi file including
> the former and adding the machine-specific properties.
thanks for your feedback on the dts file. I already included your
suggestion into the patches and split the files.
-Robert
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2014-09-11 14:51 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1409903205-2762-1-git-send-email-rric@kernel.org>
2014-09-05 7:46 ` [PATCH v2 2/4] arm64, thunder: Add initial dts for Cavium Thunder SoC Robert Richter
[not found] ` <1409903205-2762-3-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2014-09-05 11:21 ` Arnd Bergmann
2014-09-11 14:51 ` Robert Richter
2014-09-05 7:46 ` [PATCH v2 3/4] arm64, thunder: Document devicetree bindings " Robert Richter
[not found] ` <1409903205-2762-4-git-send-email-rric-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2014-09-05 8:42 ` Will Deacon
2014-09-05 9:32 ` Robert Richter
[not found] ` <20140905093222.GS4703-vWBEXY7mpu73kLQC+b9v0A@public.gmane.org>
2014-09-05 9:39 ` Mark Rutland
2014-09-08 7:54 ` Robert Richter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).