* [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family
@ 2013-04-23 10:25 Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 1/4] arm64: Add Kconfig option " Vinayak Kale
` (4 more replies)
0 siblings, 5 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 10:25 UTC (permalink / raw)
To: linux-arm-kernel
These are initial patches for APM X-Gene SOC family.
This patch-set is based on soc-armv8-model branch of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64.git
Changelog:
-V2:
* set NR_CPUS in arch/arm64/Kconfig based on selected targets
* use default defconfig instead of xgene_defconfig
* added 'apm-' prefix to dts filenames
* fixed #address-cells in /cpus node in dts file
* fixed cpu node naming under /cpus node in dts file
* fixed serial device node name in dts file
-V1: Initial post
Vinayak Kale (4):
arm64: Add Kconfig option for APM X-Gene SOC family
arm64: Enable APM X-Gene SOC family in the defconfig
arm64: Add defines for APM ARMv8 implementation
arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
arch/arm64/Kconfig | 7 ++
arch/arm64/boot/dts/Makefile | 1 +
arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
arch/arm64/configs/defconfig | 4 +
arch/arm64/include/asm/cputype.h | 3 +
6 files changed, 158 insertions(+), 0 deletions(-)
create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
--
1.7.4.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH V2 1/4] arm64: Add Kconfig option for APM X-Gene SOC family
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
@ 2013-04-23 10:25 ` Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 2/4] arm64: Enable APM X-Gene SOC family in the defconfig Vinayak Kale
` (3 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 10:25 UTC (permalink / raw)
To: linux-arm-kernel
This patch adds arm64/Kconfig option for APM X-Gene SOC family.
Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
Signed-off-by: Loc Ho <lho@apm.com>
Signed-off-by: Feng Kan <fkan@apm.com>
---
arch/arm64/Kconfig | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 43b0e9f..16d0198 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -114,6 +114,11 @@ config ARCH_VEXPRESS
This enables support for the ARMv8 software model (Versatile
Express).
+config ARCH_XGENE
+ bool "AppliedMicro X-Gene SOC Family"
+ help
+ This enables support for AppliedMicro X-Gene SOC Family
+
endmenu
menu "Bus support"
@@ -153,6 +158,8 @@ config NR_CPUS
int "Maximum number of CPUs (2-32)"
range 2 32
depends on SMP
+ # These have to remain sorted largest to smallest
+ default "8" if ARCH_XGENE
default "4"
source kernel/Kconfig.preempt
--
1.7.4.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH V2 2/4] arm64: Enable APM X-Gene SOC family in the defconfig
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 1/4] arm64: Add Kconfig option " Vinayak Kale
@ 2013-04-23 10:25 ` Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 3/4] arm64: Add defines for APM ARMv8 implementation Vinayak Kale
` (2 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 10:25 UTC (permalink / raw)
To: linux-arm-kernel
This patch enables APM X-Gene SOC family in the defconfig. It also enables 8250 serial driver needed by X-Gene SOC family.
Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
Signed-off-by: Loc Ho <lho@apm.com>
Signed-off-by: Feng Kan <fkan@apm.com>
---
arch/arm64/configs/defconfig | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 09bef29..7dfad0a 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -23,6 +23,7 @@ CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
# CONFIG_IOSCHED_DEADLINE is not set
+CONFIG_ARCH_XGENE=y
CONFIG_SMP=y
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_CMDLINE="console=ttyAMA0"
@@ -52,6 +53,9 @@ CONFIG_INPUT_EVDEV=y
# CONFIG_SERIO_I8042 is not set
# CONFIG_SERIO_SERPORT is not set
CONFIG_LEGACY_PTY_COUNT=16
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
# CONFIG_HW_RANDOM is not set
# CONFIG_HWMON is not set
CONFIG_FB=y
--
1.7.4.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH V2 3/4] arm64: Add defines for APM ARMv8 implementation
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 1/4] arm64: Add Kconfig option " Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 2/4] arm64: Enable APM X-Gene SOC family in the defconfig Vinayak Kale
@ 2013-04-23 10:25 ` Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board Vinayak Kale
2013-04-23 11:20 ` [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Catalin Marinas
4 siblings, 0 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 10:25 UTC (permalink / raw)
To: linux-arm-kernel
This patch adds defines for APM CPU implementer ID and APM CPU part numbers in asm/cputype.h
Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
Signed-off-by: Loc Ho <lho@apm.com>
Signed-off-by: Feng Kan <fkan@apm.com>
---
arch/arm64/include/asm/cputype.h | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/asm/cputype.h b/arch/arm64/include/asm/cputype.h
index cf27494..5fe138e 100644
--- a/arch/arm64/include/asm/cputype.h
+++ b/arch/arm64/include/asm/cputype.h
@@ -37,11 +37,14 @@
})
#define ARM_CPU_IMP_ARM 0x41
+#define ARM_CPU_IMP_APM 0x50
#define ARM_CPU_PART_AEM_V8 0xD0F0
#define ARM_CPU_PART_FOUNDATION 0xD000
#define ARM_CPU_PART_CORTEX_A57 0xD070
+#define APM_CPU_PART_POTENZA 0x0000
+
#ifndef __ASSEMBLY__
/*
--
1.7.4.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
` (2 preceding siblings ...)
2013-04-23 10:25 ` [PATCH V2 3/4] arm64: Add defines for APM ARMv8 implementation Vinayak Kale
@ 2013-04-23 10:25 ` Vinayak Kale
2013-04-23 13:05 ` Rob Herring
2013-04-23 13:12 ` Mark Rutland
2013-04-23 11:20 ` [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Catalin Marinas
4 siblings, 2 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 10:25 UTC (permalink / raw)
To: linux-arm-kernel
This patch adds initial DTS files required for APM Mustang board.
Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
Signed-off-by: Loc Ho <lho@apm.com>
Signed-off-by: Feng Kan <fkan@apm.com>
---
arch/arm64/boot/dts/Makefile | 1 +
arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
3 files changed, 144 insertions(+), 0 deletions(-)
create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index 68457e9..c52bdb0 100644
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -1,4 +1,5 @@
dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
+dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
targets += dtbs
targets += $(dtb-y)
diff --git a/arch/arm64/boot/dts/apm-mustang.dts b/arch/arm64/boot/dts/apm-mustang.dts
new file mode 100644
index 0000000..625322c
--- /dev/null
+++ b/arch/arm64/boot/dts/apm-mustang.dts
@@ -0,0 +1,27 @@
+/*
+ * dts file for AppliedMicro (APM) Mustang Board
+ *
+ * Copyright (C) 2013, Applied Micro Circuits Corporation
+ *
+ * This program 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.
+ */
+
+/dts-v1/;
+
+/include/ "apm-storm.dtsi"
+
+/ {
+ model = "mustang";
+
+ chosen {
+ linux,stdout-path = &serial0;
+ };
+
+ memory {
+ device_type = "memory";
+ reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */
+ };
+};
diff --git a/arch/arm64/boot/dts/apm-storm.dtsi b/arch/arm64/boot/dts/apm-storm.dtsi
new file mode 100644
index 0000000..d3f3f5d
--- /dev/null
+++ b/arch/arm64/boot/dts/apm-storm.dtsi
@@ -0,0 +1,116 @@
+/*
+ * dts file for AppliedMicro (APM) X-Gene Storm SOC
+ *
+ * Copyright (C) 2013, Applied Micro Circuits Corporation
+ *
+ * This program 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.
+ */
+
+/ {
+ compatible = "apm,xgene,storm", "apm,xgene";
+ interrupt-parent = <&gic>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ cpus {
+ #address-cells = <2>;
+ #size-cells = <0>;
+
+ cpu at 000 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x000>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 001 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x001>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 100 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x100>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 101 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x101>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 200 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x200>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 201 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x201>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 300 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x300>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ cpu at 301 {
+ device_type = "cpu";
+ compatible = "apm,xgene", "arm,armv8";
+ reg = <0x0 0x301>;
+ enable-method = "spin-table";
+ cpu-release-addr = <0x1 0x0000fff8>;
+ };
+ };
+
+ gic: interrupt-controller at 78010000 {
+ compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+ #interrupt-cells = <3>;
+ interrupt-controller;
+ reg = <0x0 0x78010000 0x0 0x1000>, /* GIC Dist */
+ <0x0 0x78020000 0x0 0x1000>, /* GIC CPU */
+ <0x0 0x78040000 0x0 0x2000>, /* GIC VCPU Control */
+ <0x0 0x78060000 0x0 0x2000>; /* GIC VCPU */
+ interrupts = <1 9 0xf04>; /* GIC Maintenence IRQ */
+ };
+
+ timer {
+ compatible = "arm,armv8-timer";
+ interrupts = <1 0 0xff01>, /* Secure Phys IRQ */
+ <1 13 0xff01>, /* Non-secure Phys IRQ */
+ <1 14 0xff01>, /* Virt IRQ */
+ <1 15 0xff01>; /* Hyp IRQ */
+ clock-frequency = <50000000>;
+ };
+
+ soc {
+ compatible = "simple-bus";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ serial0: serial at 1c020000 {
+ device_type = "serial";
+ compatible = "ns16550";
+ reg = <0 0x1c020000 0x0 0x1000>;
+ reg-shift = <2>;
+ clock-frequency = <10000000>; /* Updated by bootloader */
+ interrupt-parent = <&gic>;
+ interrupts = <0x0 0x4c 0x4>;
+ };
+ };
+};
--
1.7.4.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
` (3 preceding siblings ...)
2013-04-23 10:25 ` [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board Vinayak Kale
@ 2013-04-23 11:20 ` Catalin Marinas
4 siblings, 0 replies; 10+ messages in thread
From: Catalin Marinas @ 2013-04-23 11:20 UTC (permalink / raw)
To: linux-arm-kernel
Hi Vinayak,
On Tue, Apr 23, 2013 at 11:25:55AM +0100, Vinayak Kale wrote:
> These are initial patches for APM X-Gene SOC family.
> This patch-set is based on soc-armv8-model branch of
> git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64.git
The patches look ok to me but let's see if there are any other comments
on the dts files.
Since we go with a common defconfig, I'll drop the vexpress_defconfig as
well. There are dependencies on GIC and some other vexpress patches to
go into mainline before I can push my soc-armv8-model changes. I'll
queue your patches for 3.11 (after this merging window).
Thanks.
--
Catalin
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
2013-04-23 10:25 ` [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board Vinayak Kale
@ 2013-04-23 13:05 ` Rob Herring
2013-04-23 14:43 ` Vinayak Kale
2013-04-23 13:12 ` Mark Rutland
1 sibling, 1 reply; 10+ messages in thread
From: Rob Herring @ 2013-04-23 13:05 UTC (permalink / raw)
To: linux-arm-kernel
On 04/23/2013 05:25 AM, Vinayak Kale wrote:
> This patch adds initial DTS files required for APM Mustang board.
>
> Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
> Signed-off-by: Loc Ho <lho@apm.com>
> Signed-off-by: Feng Kan <fkan@apm.com>
> ---
> arch/arm64/boot/dts/Makefile | 1 +
> arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
> arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
Well, you renamed the files, but did not address any of my other comments.
> 3 files changed, 144 insertions(+), 0 deletions(-)
> create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
> create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
>
> diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
> index 68457e9..c52bdb0 100644
> --- a/arch/arm64/boot/dts/Makefile
> +++ b/arch/arm64/boot/dts/Makefile
> @@ -1,4 +1,5 @@
> dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
> +dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
>
> targets += dtbs
> targets += $(dtb-y)
> diff --git a/arch/arm64/boot/dts/apm-mustang.dts b/arch/arm64/boot/dts/apm-mustang.dts
> new file mode 100644
> index 0000000..625322c
> --- /dev/null
> +++ b/arch/arm64/boot/dts/apm-mustang.dts
> @@ -0,0 +1,27 @@
> +/*
> + * dts file for AppliedMicro (APM) Mustang Board
> + *
> + * Copyright (C) 2013, Applied Micro Circuits Corporation
> + *
> + * This program 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.
> + */
> +
> +/dts-v1/;
> +
> +/include/ "apm-storm.dtsi"
> +
> +/ {
> + model = "mustang";
This should/can be a more descriptive string.
You need a compatible field for the board.
> +
> + chosen {
> + linux,stdout-path = &serial0;
See my prior comment.
> + };
> +
> + memory {
> + device_type = "memory";
> + reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */
> + };
> +};
> diff --git a/arch/arm64/boot/dts/apm-storm.dtsi b/arch/arm64/boot/dts/apm-storm.dtsi
> new file mode 100644
> index 0000000..d3f3f5d
> --- /dev/null
> +++ b/arch/arm64/boot/dts/apm-storm.dtsi
> @@ -0,0 +1,116 @@
> +/*
> + * dts file for AppliedMicro (APM) X-Gene Storm SOC
> + *
> + * Copyright (C) 2013, Applied Micro Circuits Corporation
> + *
> + * This program 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.
> + */
> +
> +/ {
> + compatible = "apm,xgene,storm", "apm,xgene";
This still needs documentation. "apm,xgene-storm" would be more in line
with convention. apm,xgene collides with the cpu name. Is xgene the soc
or cpu core? Use the soc name here.
Rob
> + interrupt-parent = <&gic>;
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + cpus {
> + #address-cells = <2>;
> + #size-cells = <0>;
> +
> + cpu at 000 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x000>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 001 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x001>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 100 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x100>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 101 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x101>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 200 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x200>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 201 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x201>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 300 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x300>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + cpu at 301 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
> + reg = <0x0 0x301>;
> + enable-method = "spin-table";
> + cpu-release-addr = <0x1 0x0000fff8>;
> + };
> + };
> +
> + gic: interrupt-controller at 78010000 {
> + compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
> + #interrupt-cells = <3>;
> + interrupt-controller;
> + reg = <0x0 0x78010000 0x0 0x1000>, /* GIC Dist */
> + <0x0 0x78020000 0x0 0x1000>, /* GIC CPU */
> + <0x0 0x78040000 0x0 0x2000>, /* GIC VCPU Control */
> + <0x0 0x78060000 0x0 0x2000>; /* GIC VCPU */
> + interrupts = <1 9 0xf04>; /* GIC Maintenence IRQ */
> + };
> +
> + timer {
> + compatible = "arm,armv8-timer";
> + interrupts = <1 0 0xff01>, /* Secure Phys IRQ */
> + <1 13 0xff01>, /* Non-secure Phys IRQ */
> + <1 14 0xff01>, /* Virt IRQ */
> + <1 15 0xff01>; /* Hyp IRQ */
> + clock-frequency = <50000000>;
> + };
> +
> + soc {
> + compatible = "simple-bus";
> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges;
> +
> + serial0: serial at 1c020000 {
> + device_type = "serial";
> + compatible = "ns16550";
> + reg = <0 0x1c020000 0x0 0x1000>;
> + reg-shift = <2>;
> + clock-frequency = <10000000>; /* Updated by bootloader */
> + interrupt-parent = <&gic>;
> + interrupts = <0x0 0x4c 0x4>;
> + };
> + };
> +};
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
2013-04-23 10:25 ` [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board Vinayak Kale
2013-04-23 13:05 ` Rob Herring
@ 2013-04-23 13:12 ` Mark Rutland
2013-04-23 14:44 ` Vinayak Kale
1 sibling, 1 reply; 10+ messages in thread
From: Mark Rutland @ 2013-04-23 13:12 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On Tue, Apr 23, 2013 at 11:25:59AM +0100, Vinayak Kale wrote:
> This patch adds initial DTS files required for APM Mustang board.
>
> Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
> Signed-off-by: Loc Ho <lho@apm.com>
> Signed-off-by: Feng Kan <fkan@apm.com>
> ---
> arch/arm64/boot/dts/Makefile | 1 +
> arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
> arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
> 3 files changed, 144 insertions(+), 0 deletions(-)
> create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
> create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
>
> diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
> index 68457e9..c52bdb0 100644
> --- a/arch/arm64/boot/dts/Makefile
> +++ b/arch/arm64/boot/dts/Makefile
> @@ -1,4 +1,5 @@
> dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
> +dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
>
> targets += dtbs
> targets += $(dtb-y)
> diff --git a/arch/arm64/boot/dts/apm-mustang.dts b/arch/arm64/boot/dts/apm-mustang.dts
> new file mode 100644
> index 0000000..625322c
> --- /dev/null
> +++ b/arch/arm64/boot/dts/apm-mustang.dts
> @@ -0,0 +1,27 @@
> +/*
> + * dts file for AppliedMicro (APM) Mustang Board
> + *
> + * Copyright (C) 2013, Applied Micro Circuits Corporation
> + *
> + * This program 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.
> + */
> +
> +/dts-v1/;
> +
> +/include/ "apm-storm.dtsi"
> +
> +/ {
> + model = "mustang";
> +
> + chosen {
> + linux,stdout-path = &serial0;
> + };
> +
> + memory {
> + device_type = "memory";
> + reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */
> + };
> +};
> diff --git a/arch/arm64/boot/dts/apm-storm.dtsi b/arch/arm64/boot/dts/apm-storm.dtsi
> new file mode 100644
> index 0000000..d3f3f5d
> --- /dev/null
> +++ b/arch/arm64/boot/dts/apm-storm.dtsi
> @@ -0,0 +1,116 @@
> +/*
> + * dts file for AppliedMicro (APM) X-Gene Storm SOC
> + *
> + * Copyright (C) 2013, Applied Micro Circuits Corporation
> + *
> + * This program 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.
> + */
> +
> +/ {
> + compatible = "apm,xgene,storm", "apm,xgene";
> + interrupt-parent = <&gic>;
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + cpus {
> + #address-cells = <2>;
> + #size-cells = <0>;
> +
> + cpu at 000 {
> + device_type = "cpu";
> + compatible = "apm,xgene", "arm,armv8";
You've used the "apm,xgene" compatible string for both the CPU and the board.
In PATCH 3, you added APM_CPU_PART_POTENZA, so presumably "apm,potenza" makes
more sense as the CPU compatible string?
Thanks,
Mark.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
2013-04-23 13:05 ` Rob Herring
@ 2013-04-23 14:43 ` Vinayak Kale
0 siblings, 0 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 14:43 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Apr 23, 2013 at 6:35 PM, Rob Herring <robherring2@gmail.com> wrote:
> On 04/23/2013 05:25 AM, Vinayak Kale wrote:
>> This patch adds initial DTS files required for APM Mustang board.
>>
>> Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
>> Signed-off-by: Loc Ho <lho@apm.com>
>> Signed-off-by: Feng Kan <fkan@apm.com>
>> ---
>> arch/arm64/boot/dts/Makefile | 1 +
>> arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
>> arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
>
> Well, you renamed the files, but did not address any of my other comments.
>
>> 3 files changed, 144 insertions(+), 0 deletions(-)
>> create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
>> create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
>>
>> diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
>> index 68457e9..c52bdb0 100644
>> --- a/arch/arm64/boot/dts/Makefile
>> +++ b/arch/arm64/boot/dts/Makefile
>> @@ -1,4 +1,5 @@
>> dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
>> +dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
>>
>> targets += dtbs
>> targets += $(dtb-y)
>> diff --git a/arch/arm64/boot/dts/apm-mustang.dts b/arch/arm64/boot/dts/apm-mustang.dts
>> new file mode 100644
>> index 0000000..625322c
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/apm-mustang.dts
>> @@ -0,0 +1,27 @@
>> +/*
>> + * dts file for AppliedMicro (APM) Mustang Board
>> + *
>> + * Copyright (C) 2013, Applied Micro Circuits Corporation
>> + *
>> + * This program 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.
>> + */
>> +
>> +/dts-v1/;
>> +
>> +/include/ "apm-storm.dtsi"
>> +
>> +/ {
>> + model = "mustang";
>
> This should/can be a more descriptive string.
>
> You need a compatible field for the board.
>
Okay.
>> +
>> + chosen {
>> + linux,stdout-path = &serial0;
>
> See my prior comment.
>
>> + };
>> +
>> + memory {
>> + device_type = "memory";
>> + reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */
>> + };
>> +};
>> diff --git a/arch/arm64/boot/dts/apm-storm.dtsi b/arch/arm64/boot/dts/apm-storm.dtsi
>> new file mode 100644
>> index 0000000..d3f3f5d
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/apm-storm.dtsi
>> @@ -0,0 +1,116 @@
>> +/*
>> + * dts file for AppliedMicro (APM) X-Gene Storm SOC
>> + *
>> + * Copyright (C) 2013, Applied Micro Circuits Corporation
>> + *
>> + * This program 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.
>> + */
>> +
>> +/ {
>> + compatible = "apm,xgene,storm", "apm,xgene";
>
> This still needs documentation. "apm,xgene-storm" would be more in line
> with convention. apm,xgene collides with the cpu name. Is xgene the soc
> or cpu core? Use the soc name here.
>
Potenza is the cpu name, xgene-storm being the soc. I'll change here
accordingly, also will fix the cpu name.
For devicetree bindings documentation, currently there is no directory
for arm64. We will add the documentation later along with subseqeunt
soc patches as this is intial patch-set.
> Rob
>
>> + interrupt-parent = <&gic>;
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> +
>> + cpus {
>> + #address-cells = <2>;
>> + #size-cells = <0>;
>> +
>> + cpu at 000 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x000>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 001 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x001>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 100 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x100>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 101 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x101>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 200 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x200>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 201 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x201>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 300 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x300>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + cpu at 301 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>> + reg = <0x0 0x301>;
>> + enable-method = "spin-table";
>> + cpu-release-addr = <0x1 0x0000fff8>;
>> + };
>> + };
>> +
>> + gic: interrupt-controller at 78010000 {
>> + compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
>> + #interrupt-cells = <3>;
>> + interrupt-controller;
>> + reg = <0x0 0x78010000 0x0 0x1000>, /* GIC Dist */
>> + <0x0 0x78020000 0x0 0x1000>, /* GIC CPU */
>> + <0x0 0x78040000 0x0 0x2000>, /* GIC VCPU Control */
>> + <0x0 0x78060000 0x0 0x2000>; /* GIC VCPU */
>> + interrupts = <1 9 0xf04>; /* GIC Maintenence IRQ */
>> + };
>> +
>> + timer {
>> + compatible = "arm,armv8-timer";
>> + interrupts = <1 0 0xff01>, /* Secure Phys IRQ */
>> + <1 13 0xff01>, /* Non-secure Phys IRQ */
>> + <1 14 0xff01>, /* Virt IRQ */
>> + <1 15 0xff01>; /* Hyp IRQ */
>> + clock-frequency = <50000000>;
>> + };
>> +
>> + soc {
>> + compatible = "simple-bus";
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> + ranges;
>> +
>> + serial0: serial at 1c020000 {
>> + device_type = "serial";
>> + compatible = "ns16550";
>> + reg = <0 0x1c020000 0x0 0x1000>;
>> + reg-shift = <2>;
>> + clock-frequency = <10000000>; /* Updated by bootloader */
>> + interrupt-parent = <&gic>;
>> + interrupts = <0x0 0x4c 0x4>;
>> + };
>> + };
>> +};
>>
>
Thanks
-Vinayak
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board
2013-04-23 13:12 ` Mark Rutland
@ 2013-04-23 14:44 ` Vinayak Kale
0 siblings, 0 replies; 10+ messages in thread
From: Vinayak Kale @ 2013-04-23 14:44 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Apr 23, 2013 at 6:42 PM, Mark Rutland <mark.rutland@arm.com> wrote:
> Hi,
>
> On Tue, Apr 23, 2013 at 11:25:59AM +0100, Vinayak Kale wrote:
>> This patch adds initial DTS files required for APM Mustang board.
>>
>> Signed-off-by: Kumar Sankaran <ksankaran@apm.com>
>> Signed-off-by: Loc Ho <lho@apm.com>
>> Signed-off-by: Feng Kan <fkan@apm.com>
>> ---
>> arch/arm64/boot/dts/Makefile | 1 +
>> arch/arm64/boot/dts/apm-mustang.dts | 27 ++++++++
>> arch/arm64/boot/dts/apm-storm.dtsi | 116 +++++++++++++++++++++++++++++++++++
>> 3 files changed, 144 insertions(+), 0 deletions(-)
>> create mode 100644 arch/arm64/boot/dts/apm-mustang.dts
>> create mode 100644 arch/arm64/boot/dts/apm-storm.dtsi
>>
>> diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
>> index 68457e9..c52bdb0 100644
>> --- a/arch/arm64/boot/dts/Makefile
>> +++ b/arch/arm64/boot/dts/Makefile
>> @@ -1,4 +1,5 @@
>> dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb
>> +dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
>>
>> targets += dtbs
>> targets += $(dtb-y)
>> diff --git a/arch/arm64/boot/dts/apm-mustang.dts b/arch/arm64/boot/dts/apm-mustang.dts
>> new file mode 100644
>> index 0000000..625322c
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/apm-mustang.dts
>> @@ -0,0 +1,27 @@
>> +/*
>> + * dts file for AppliedMicro (APM) Mustang Board
>> + *
>> + * Copyright (C) 2013, Applied Micro Circuits Corporation
>> + *
>> + * This program 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.
>> + */
>> +
>> +/dts-v1/;
>> +
>> +/include/ "apm-storm.dtsi"
>> +
>> +/ {
>> + model = "mustang";
>> +
>> + chosen {
>> + linux,stdout-path = &serial0;
>> + };
>> +
>> + memory {
>> + device_type = "memory";
>> + reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */
>> + };
>> +};
>> diff --git a/arch/arm64/boot/dts/apm-storm.dtsi b/arch/arm64/boot/dts/apm-storm.dtsi
>> new file mode 100644
>> index 0000000..d3f3f5d
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/apm-storm.dtsi
>> @@ -0,0 +1,116 @@
>> +/*
>> + * dts file for AppliedMicro (APM) X-Gene Storm SOC
>> + *
>> + * Copyright (C) 2013, Applied Micro Circuits Corporation
>> + *
>> + * This program 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.
>> + */
>> +
>> +/ {
>> + compatible = "apm,xgene,storm", "apm,xgene";
>> + interrupt-parent = <&gic>;
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> +
>> + cpus {
>> + #address-cells = <2>;
>> + #size-cells = <0>;
>> +
>> + cpu at 000 {
>> + device_type = "cpu";
>> + compatible = "apm,xgene", "arm,armv8";
>
> You've used the "apm,xgene" compatible string for both the CPU and the board.
>
> In PATCH 3, you added APM_CPU_PART_POTENZA, so presumably "apm,potenza" makes
> more sense as the CPU compatible string?
>
Yes, will fix this. Thanks
> Thanks,
> Mark.
Thanks
-Vinayak
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2013-04-23 14:44 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-23 10:25 [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 1/4] arm64: Add Kconfig option " Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 2/4] arm64: Enable APM X-Gene SOC family in the defconfig Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 3/4] arm64: Add defines for APM ARMv8 implementation Vinayak Kale
2013-04-23 10:25 ` [PATCH V2 4/4] arm64: Add initial DTS for APM X-Gene Storm SOC and APM Mustang board Vinayak Kale
2013-04-23 13:05 ` Rob Herring
2013-04-23 14:43 ` Vinayak Kale
2013-04-23 13:12 ` Mark Rutland
2013-04-23 14:44 ` Vinayak Kale
2013-04-23 11:20 ` [PATCH V2 0/4] arm64: Initial patch-set for APM X-Gene SOC family Catalin Marinas
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.