linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/6] Add initial support for S32V234-EVB
@ 2019-09-05 11:58 Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board Stefan-gabriel Mirea
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel

Hello,

NXP's S32V234[1] ("Treerunner") vision microprocessors are targeted for
high-performance, computationally intensive vision and sensor fusion
applications that require automotive safety levels. They include leading
edge Camera Vision modules like APEX-2, ISP and GPU. The S32V234-EVB and
S32V234-SBC boards are available for customer evaluation.

The following patch series introduces minimal enablement support for the
NXP S32V234-EVB2[2] board, which leverages most of the SoC capabilities.
Up to v2, this series also included the fsl_linflexuart driver, which has
been included in Greg Kroah-Hartman's tty git tree[3].

In the future, we aim to submit multiple drivers upstream, which can be
found in the kernel of our Auto Linux BSP[4] ("ALB"), starting with basic
pinmuxing, clock and uSDHC drivers.

For validation, you can use the U-Boot bootloader in the ALB[5], which we
build and test with our patched version of the Linaro GCC 6.3.1 2017.05
toolchain for ARM 64-bit, with sources available on [6].

Changes in v4:
* Remove the patch 'serial: fsl_linflexuart: Update compatible string'
  following its acceptance[7];
* Rebased the patch 'serial: fsl_linflexuart: Be consistent with the name'
  on the tty-next branch in Greg's tty git tree.

Changes in v3:
* Remove the patch 'tty: serial: Add linflexuart driver for S32V234'
  following its acceptance[3];
* Replace 'Freescale' with 'NXP' in the ARCH_S32 config definition and the
  'model' property from the device tree;
* Remove the 'fsl-' prefixes from the dtsi and dts file names;
* Move the 'model' property from (fsl-)s32v234.dtsi to s32v234-evb.dts;
* Add newlines between the cpu nodes in s32v234.dtsi;
* Make use of GIC_SPI, GIC_PPI, GIC_CPU_MASK_SIMPLE and IRQ_TYPE_* in the
  'interrupts' tuples;
* Move the 'timer' and 'interrupt-controller' nodes before 'soc' in
  s32v234.dtsi;
* Be consistent with the 'LINFlexD' spelling in documentation, strings and
  comments; add new patch 'serial: fsl_linflexuart: Be consistent with the
  name' to update the LINFlexD driver as well;
* Remove from fsl,s32-linflexuart.txt a statement regarding the limitation
  to UART mode;
* Make the compatible string SoC specific ("fsl,s32v234-linflexuart"); add
  new patch 'serial: fsl_linflexuart: Update compatible string' to update
  the LINFlexD driver as well;
* In the LINFlexD binding documentation, insert a space between label and
  node name and remove the 'status' property.

Changes in v2:
* Update the entry in fsl.yaml to apply to all S32V234 based boards;
* Add chosen node to dts, with a 'stdout-path' property for earlycon;
* Remove linflex_verify_port(), because it was only called from
  uart_set_info(), which was going to always fail at the "baud_base < 9600"
  check, as we are not using uartclk from uart_port yet;
* Fix compatible string used in OF_EARLYCON_DECLARE.

[1] https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/s32-automotive-platform/vision-processor-for-front-and-surround-view-camera-machine-learning-and-sensor-fusion:S32V234
[2] https://www.nxp.com/support/developer-resources/evaluation-and-development-boards/ultra-reliable-dev-platforms/s32v-mpus-platforms/s32v-vision-and-sensor-fusion-evaluation-system:S32V234EVB
[3] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=b953815b819b0f327b5538feba3639d52db70172
[4] https://source.codeaurora.org/external/autobsps32/linux/
[5] https://source.codeaurora.org/external/autobsps32/u-boot/
[6] https://source.codeaurora.org/external/s32ds/compiler/gcc/
[7] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=2bd3661ea0eb2056852cbc58c5d96bb4df2f164f

Eddy Petrișor (1):
  dt-bindings: arm: fsl: Add the S32V234-EVB board

Mihaela Martinas (2):
  arm64: Introduce config for S32
  arm64: defconfig: Enable configs for S32V234

Stefan-Gabriel Mirea (1):
  serial: fsl_linflexuart: Be consistent with the name

Stoica Cosmin-Stefan (2):
  arm64: dts: fsl: Add device tree for S32V234-EVB
  dt-bindings: serial: Document Freescale LINFlexD UART

 .../admin-guide/kernel-parameters.txt         |   2 +-
 .../devicetree/bindings/arm/fsl.yaml          |   6 +
 .../bindings/serial/fsl,s32-linflexuart.txt   |  22 +++
 arch/arm64/Kconfig.platforms                  |   5 +
 arch/arm64/boot/dts/freescale/Makefile        |   2 +
 arch/arm64/boot/dts/freescale/s32v234-evb.dts |  25 ++++
 arch/arm64/boot/dts/freescale/s32v234.dtsi    | 139 ++++++++++++++++++
 arch/arm64/configs/defconfig                  |   3 +
 drivers/tty/serial/Kconfig                    |   8 +-
 drivers/tty/serial/fsl_linflexuart.c          |   4 +-
 include/uapi/linux/serial_core.h              |   4 +-
 11 files changed, 211 insertions(+), 9 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt
 create mode 100644 arch/arm64/boot/dts/freescale/s32v234-evb.dts
 create mode 100644 arch/arm64/boot/dts/freescale/s32v234.dtsi

-- 
2.22.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  2019-10-06  1:59   ` Shawn Guo
  2019-09-05 11:58 ` [PATCH v4 2/6] arm64: Introduce config for S32 Stefan-gabriel Mirea
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel, Eddy Petrisor

From: Eddy Petrișor <eddy.petrisor@nxp.com>

Add entry for the NXP S32V234 Customer Evaluation Board to the board/SoC
bindings.

Signed-off-by: Eddy Petrișor <eddy.petrisor@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
---
 Documentation/devicetree/bindings/arm/fsl.yaml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml
index 7294ac36f4c0..597c563bdec9 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -309,4 +309,10 @@ properties:
               - fsl,ls2088a-rdb
           - const: fsl,ls2088a
 
+      - description: S32V234 based Boards
+        items:
+          - enum:
+              - fsl,s32v234-evb           # S32V234-EVB2 Customer Evaluation Board
+          - const: fsl,s32v234
+
 ...
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v4 2/6] arm64: Introduce config for S32
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name Stefan-gabriel Mirea
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel, Cosmin Stefan Stoica

From: Mihaela Martinas <Mihaela.Martinas@freescale.com>

Add configuration option for the NXP S32 platform family in
Kconfig.platforms. For starters, the only SoC supported will be Treerunner
(S32V234), with a single execution target: the S32V234-EVB (rev 29288)
board.

Signed-off-by: Mihaela Martinas <Mihaela.Martinas@freescale.com>
Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
---
 arch/arm64/Kconfig.platforms | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
index 4778c775de1b..64bbe2d0b04f 100644
--- a/arch/arm64/Kconfig.platforms
+++ b/arch/arm64/Kconfig.platforms
@@ -210,6 +210,11 @@ config ARCH_ROCKCHIP
 	  This enables support for the ARMv8 based Rockchip chipsets,
 	  like the RK3368.
 
+config ARCH_S32
+	bool "NXP S32 SoC Family"
+	help
+	  This enables support for the NXP S32 family of processors.
+
 config ARCH_SEATTLE
 	bool "AMD Seattle SoC Family"
 	help
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 2/6] arm64: Introduce config for S32 Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  2019-10-06  1:56   ` Shawn Guo
  2019-09-05 11:58 ` [PATCH v4 4/6] arm64: dts: fsl: Add device tree for S32V234-EVB Stefan-gabriel Mirea
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel

For consistency reasons, spell the controller name as "LINFlexD" in
comments and documentation.

Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
---
 Documentation/admin-guide/kernel-parameters.txt | 2 +-
 drivers/tty/serial/Kconfig                      | 8 ++++----
 drivers/tty/serial/fsl_linflexuart.c            | 4 ++--
 include/uapi/linux/serial_core.h                | 4 ++--
 4 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 614012a61754..23162492ea2f 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -1091,7 +1091,7 @@
 			mapped with the correct attributes.
 
 		linflex,<addr>
-			Use early console provided by Freescale LinFlex UART
+			Use early console provided by Freescale LINFlexD UART
 			serial driver for NXP S32V234 SoCs. A valid base
 			address must be provided, and the serial port must
 			already be setup and configured.
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index b658589208bf..2d5115375345 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -1434,19 +1434,19 @@ config SERIAL_FSL_LPUART_CONSOLE
 	  you can make it the console by answering Y to this option.
 
 config SERIAL_FSL_LINFLEXUART
-	tristate "Freescale linflexuart serial port support"
+	tristate "Freescale LINFlexD UART serial port support"
 	depends on PRINTK
 	select SERIAL_CORE
 	help
-	  Support for the on-chip linflexuart on some Freescale SOCs.
+	  Support for the on-chip LINFlexD UART on some Freescale SOCs.
 
 config SERIAL_FSL_LINFLEXUART_CONSOLE
-	bool "Console on Freescale linflexuart serial port"
+	bool "Console on Freescale LINFlexD UART serial port"
 	depends on SERIAL_FSL_LINFLEXUART=y
 	select SERIAL_CORE_CONSOLE
 	select SERIAL_EARLYCON
 	help
-	  If you have enabled the linflexuart serial port on the Freescale
+	  If you have enabled the LINFlexD UART serial port on the Freescale
 	  SoCs, you can make it the console by answering Y to this option.
 
 config SERIAL_CONEXANT_DIGICOLOR
diff --git a/drivers/tty/serial/fsl_linflexuart.c b/drivers/tty/serial/fsl_linflexuart.c
index 26b9601a0952..ca90551384ca 100644
--- a/drivers/tty/serial/fsl_linflexuart.c
+++ b/drivers/tty/serial/fsl_linflexuart.c
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0-or-later
 /*
- * Freescale linflexuart serial port driver
+ * Freescale LINFlexD UART serial port driver
  *
  * Copyright 2012-2016 Freescale Semiconductor, Inc.
  * Copyright 2017-2018 NXP
@@ -938,5 +938,5 @@ static void __exit linflex_serial_exit(void)
 module_init(linflex_serial_init);
 module_exit(linflex_serial_exit);
 
-MODULE_DESCRIPTION("Freescale linflex serial port driver");
+MODULE_DESCRIPTION("Freescale LINFlexD serial port driver");
 MODULE_LICENSE("GPL v2");
diff --git a/include/uapi/linux/serial_core.h b/include/uapi/linux/serial_core.h
index 63fa56b899e8..26967c2f4a4f 100644
--- a/include/uapi/linux/serial_core.h
+++ b/include/uapi/linux/serial_core.h
@@ -293,7 +293,7 @@
 /* Sunix UART */
 #define PORT_SUNIX	121
 
-/* Freescale Linflex UART */
-#define PORT_LINFLEXUART	121
+/* Freescale LINFlexD UART */
+#define PORT_LINFLEXUART	122
 
 #endif /* _UAPILINUX_SERIAL_CORE_H */
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v4 4/6] arm64: dts: fsl: Add device tree for S32V234-EVB
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
                   ` (2 preceding siblings ...)
  2019-09-05 11:58 ` [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 5/6] dt-bindings: serial: Document Freescale LINFlexD UART Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 6/6] arm64: defconfig: Enable configs for S32V234 Stefan-gabriel Mirea
  5 siblings, 0 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel, Cosmin Stefan Stoica, Dan Nica,
	Larisa Ileana Grigore

From: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>

Add initial version of device tree for S32V234-EVB, including nodes for the
4 Cortex-A53 cores, AIPS bus with UART modules, ARM architected timer and
Generic Interrupt Controller (GIC).

Keep SoC level separate from board level to let future boards with this SoC
share common properties, while the dts files will keep board-dependent
properties.

Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Mihaela Martinas <Mihaela.Martinas@freescale.com>
Signed-off-by: Dan Nica <dan.nica@nxp.com>
Signed-off-by: Larisa Grigore <Larisa.Grigore@nxp.com>
Signed-off-by: Phu Luu An <phu.luuan@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
---
 arch/arm64/boot/dts/freescale/Makefile        |   2 +
 arch/arm64/boot/dts/freescale/s32v234-evb.dts |  25 ++++
 arch/arm64/boot/dts/freescale/s32v234.dtsi    | 139 ++++++++++++++++++
 3 files changed, 166 insertions(+)
 create mode 100644 arch/arm64/boot/dts/freescale/s32v234-evb.dts
 create mode 100644 arch/arm64/boot/dts/freescale/s32v234.dtsi

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index c043aca66572..9aff21324146 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -26,3 +26,5 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mq-librem5-devkit.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mq-zii-ultra-rmb3.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mq-zii-ultra-zest.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-mek.dtb
+
+dtb-$(CONFIG_ARCH_S32) += s32v234-evb.dtb
diff --git a/arch/arm64/boot/dts/freescale/s32v234-evb.dts b/arch/arm64/boot/dts/freescale/s32v234-evb.dts
new file mode 100644
index 000000000000..4b802518cefc
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/s32v234-evb.dts
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright 2015-2016 Freescale Semiconductor, Inc.
+ * Copyright 2016-2017 NXP
+ */
+
+/dts-v1/;
+#include "s32v234.dtsi"
+
+/ {
+	model = "NXP S32V234-EVB2 Board";
+	compatible = "fsl,s32v234-evb", "fsl,s32v234";
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+};
+
+&uart0 {
+	status = "okay";
+};
+
+&uart1 {
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/freescale/s32v234.dtsi b/arch/arm64/boot/dts/freescale/s32v234.dtsi
new file mode 100644
index 000000000000..37225191ccbf
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/s32v234.dtsi
@@ -0,0 +1,139 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright 2015-2016 Freescale Semiconductor, Inc.
+ * Copyright 2016-2018 NXP
+ */
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+
+/memreserve/ 0x80000000 0x00010000;
+
+/ {
+	compatible = "fsl,s32v234";
+	interrupt-parent = <&gic>;
+	#address-cells = <2>;
+	#size-cells = <2>;
+
+	aliases {
+		serial0 = &uart0;
+		serial1 = &uart1;
+	};
+
+	cpus {
+		#address-cells = <2>;
+		#size-cells = <0>;
+
+		cpu0: cpu@0 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53";
+			reg = <0x0 0x0>;
+			enable-method = "spin-table";
+			cpu-release-addr = <0x0 0x80000000>;
+			next-level-cache = <&cluster0_l2_cache>;
+		};
+
+		cpu1: cpu@1 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53";
+			reg = <0x0 0x1>;
+			enable-method = "spin-table";
+			cpu-release-addr = <0x0 0x80000000>;
+			next-level-cache = <&cluster0_l2_cache>;
+		};
+
+		cpu2: cpu@100 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53";
+			reg = <0x0 0x100>;
+			enable-method = "spin-table";
+			cpu-release-addr = <0x0 0x80000000>;
+			next-level-cache = <&cluster1_l2_cache>;
+		};
+
+		cpu3: cpu@101 {
+			device_type = "cpu";
+			compatible = "arm,cortex-a53";
+			reg = <0x0 0x101>;
+			enable-method = "spin-table";
+			cpu-release-addr = <0x0 0x80000000>;
+			next-level-cache = <&cluster1_l2_cache>;
+		};
+
+		cluster0_l2_cache: l2-cache0 {
+			compatible = "cache";
+		};
+
+		cluster1_l2_cache: l2-cache1 {
+			compatible = "cache";
+		};
+	};
+
+	timer {
+		compatible = "arm,armv8-timer";
+		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) |
+					  IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) |
+					  IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) |
+					  IRQ_TYPE_LEVEL_LOW)>,
+			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) |
+					  IRQ_TYPE_LEVEL_LOW)>;
+		/* clock-frequency might be modified by u-boot, depending on the
+		 * chip version.
+		 */
+		clock-frequency = <10000000>;
+	};
+
+	gic: interrupt-controller@7d001000 {
+		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+		#interrupt-cells = <3>;
+		#address-cells = <0>;
+		interrupt-controller;
+		reg = <0 0x7d001000 0 0x1000>,
+		      <0 0x7d002000 0 0x2000>,
+		      <0 0x7d004000 0 0x2000>,
+		      <0 0x7d006000 0 0x2000>;
+		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
+					 IRQ_TYPE_LEVEL_HIGH)>;
+	};
+
+	soc {
+		#address-cells = <2>;
+		#size-cells = <2>;
+		compatible = "simple-bus";
+		interrupt-parent = <&gic>;
+		ranges;
+
+		aips0: aips-bus@40000000 {
+			compatible = "simple-bus";
+			#address-cells = <2>;
+			#size-cells = <2>;
+			interrupt-parent = <&gic>;
+			reg = <0x0 0x40000000 0x0 0x7D000>;
+			ranges;
+
+			uart0: serial@40053000 {
+				compatible = "fsl,s32v234-linflexuart";
+				reg = <0x0 0x40053000 0x0 0x1000>;
+				interrupts = <GIC_SPI 59 IRQ_TYPE_EDGE_RISING>;
+				status = "disabled";
+			};
+		};
+
+		aips1: aips-bus@40080000 {
+			compatible = "simple-bus";
+			#address-cells = <2>;
+			#size-cells = <2>;
+			interrupt-parent = <&gic>;
+			reg = <0x0 0x40080000 0x0 0x70000>;
+			ranges;
+
+			uart1: serial@400bc000 {
+				compatible = "fsl,s32v234-linflexuart";
+				reg = <0x0 0x400bc000 0x0 0x1000>;
+				interrupts = <GIC_SPI 60 IRQ_TYPE_EDGE_RISING>;
+				status = "disabled";
+			};
+		};
+	};
+};
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v4 5/6] dt-bindings: serial: Document Freescale LINFlexD UART
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
                   ` (3 preceding siblings ...)
  2019-09-05 11:58 ` [PATCH v4 4/6] arm64: dts: fsl: Add device tree for S32V234-EVB Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  2019-09-05 11:58 ` [PATCH v4 6/6] arm64: defconfig: Enable configs for S32V234 Stefan-gabriel Mirea
  5 siblings, 0 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel, Cosmin Stefan Stoica, Larisa Ileana Grigore

From: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>

Add documentation for the serial communication interface module (LINFlexD),
found in two instances on S32V234.

Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Larisa Grigore <Larisa.Grigore@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
---
 .../bindings/serial/fsl,s32-linflexuart.txt   | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt

diff --git a/Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt b/Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt
new file mode 100644
index 000000000000..f1bbe0826be5
--- /dev/null
+++ b/Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt
@@ -0,0 +1,22 @@
+* Freescale LINFlexD UART
+
+The LINFlexD controller implements several LIN protocol versions, as well as
+support for full-duplex UART communication through 8-bit and 9-bit frames.
+
+See chapter 47 ("LINFlexD") in the reference manual[1].
+
+Required properties:
+- compatible :
+  - "fsl,s32v234-linflexuart" for LINFlexD configured in UART mode, which
+    is compatible with the one integrated on S32V234 SoC
+- reg : Address and length of the register set for the device
+- interrupts : Should contain uart interrupt
+
+Example:
+uart0: serial@40053000 {
+	compatible = "fsl,s32v234-linflexuart";
+	reg = <0x0 0x40053000 0x0 0x1000>;
+	interrupts = <0 59 4>;
+};
+
+[1] https://www.nxp.com/webapp/Download?colCode=S32V234RM
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v4 6/6] arm64: defconfig: Enable configs for S32V234
  2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
                   ` (4 preceding siblings ...)
  2019-09-05 11:58 ` [PATCH v4 5/6] dt-bindings: serial: Document Freescale LINFlexD UART Stefan-gabriel Mirea
@ 2019-09-05 11:58 ` Stefan-gabriel Mirea
  5 siblings, 0 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-09-05 11:58 UTC (permalink / raw)
  To: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	shawnguo, Leo Li
  Cc: jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel, Cosmin Stefan Stoica

From: Mihaela Martinas <Mihaela.Martinas@freescale.com>

Enable support for the S32V234 SoC, including the previously added UART
driver.

Signed-off-by: Mihaela Martinas <Mihaela.Martinas@freescale.com>
Signed-off-by: Adrian.Nitu <adrian.nitu@freescale.com>
Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
---
 arch/arm64/configs/defconfig | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 0e58ef02880c..bb5aa95a8455 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -48,6 +48,7 @@ CONFIG_ARCH_MXC=y
 CONFIG_ARCH_QCOM=y
 CONFIG_ARCH_RENESAS=y
 CONFIG_ARCH_ROCKCHIP=y
+CONFIG_ARCH_S32=y
 CONFIG_ARCH_SEATTLE=y
 CONFIG_ARCH_STRATIX10=y
 CONFIG_ARCH_SYNQUACER=y
@@ -347,6 +348,8 @@ CONFIG_SERIAL_XILINX_PS_UART=y
 CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
 CONFIG_SERIAL_FSL_LPUART=y
 CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
+CONFIG_SERIAL_FSL_LINFLEXUART=y
+CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
 CONFIG_SERIAL_MVEBU_UART=y
 CONFIG_SERIAL_DEV_BUS=y
 CONFIG_VIRTIO_CONSOLE=y
-- 
2.22.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name
  2019-09-05 11:58 ` [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name Stefan-gabriel Mirea
@ 2019-10-06  1:56   ` Shawn Guo
  0 siblings, 0 replies; 10+ messages in thread
From: Shawn Guo @ 2019-10-06  1:56 UTC (permalink / raw)
  To: Stefan-gabriel Mirea, gregkh
  Cc: corbet, robh+dt, mark.rutland, catalin.marinas, will, Leo Li,
	jslaby, linux-doc, linux-kernel, devicetree, linux-serial,
	linux-arm-kernel

On Thu, Sep 05, 2019 at 11:58:36AM +0000, Stefan-gabriel Mirea wrote:
> For consistency reasons, spell the controller name as "LINFlexD" in
> comments and documentation.
> 
> Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>

Hi Greg,

The series looks good to me.  I assume that you will take this patch
and #5.

Shawn

> ---
>  Documentation/admin-guide/kernel-parameters.txt | 2 +-
>  drivers/tty/serial/Kconfig                      | 8 ++++----
>  drivers/tty/serial/fsl_linflexuart.c            | 4 ++--
>  include/uapi/linux/serial_core.h                | 4 ++--
>  4 files changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index 614012a61754..23162492ea2f 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -1091,7 +1091,7 @@
>  			mapped with the correct attributes.
>  
>  		linflex,<addr>
> -			Use early console provided by Freescale LinFlex UART
> +			Use early console provided by Freescale LINFlexD UART
>  			serial driver for NXP S32V234 SoCs. A valid base
>  			address must be provided, and the serial port must
>  			already be setup and configured.
> diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
> index b658589208bf..2d5115375345 100644
> --- a/drivers/tty/serial/Kconfig
> +++ b/drivers/tty/serial/Kconfig
> @@ -1434,19 +1434,19 @@ config SERIAL_FSL_LPUART_CONSOLE
>  	  you can make it the console by answering Y to this option.
>  
>  config SERIAL_FSL_LINFLEXUART
> -	tristate "Freescale linflexuart serial port support"
> +	tristate "Freescale LINFlexD UART serial port support"
>  	depends on PRINTK
>  	select SERIAL_CORE
>  	help
> -	  Support for the on-chip linflexuart on some Freescale SOCs.
> +	  Support for the on-chip LINFlexD UART on some Freescale SOCs.
>  
>  config SERIAL_FSL_LINFLEXUART_CONSOLE
> -	bool "Console on Freescale linflexuart serial port"
> +	bool "Console on Freescale LINFlexD UART serial port"
>  	depends on SERIAL_FSL_LINFLEXUART=y
>  	select SERIAL_CORE_CONSOLE
>  	select SERIAL_EARLYCON
>  	help
> -	  If you have enabled the linflexuart serial port on the Freescale
> +	  If you have enabled the LINFlexD UART serial port on the Freescale
>  	  SoCs, you can make it the console by answering Y to this option.
>  
>  config SERIAL_CONEXANT_DIGICOLOR
> diff --git a/drivers/tty/serial/fsl_linflexuart.c b/drivers/tty/serial/fsl_linflexuart.c
> index 26b9601a0952..ca90551384ca 100644
> --- a/drivers/tty/serial/fsl_linflexuart.c
> +++ b/drivers/tty/serial/fsl_linflexuart.c
> @@ -1,6 +1,6 @@
>  // SPDX-License-Identifier: GPL-2.0-or-later
>  /*
> - * Freescale linflexuart serial port driver
> + * Freescale LINFlexD UART serial port driver
>   *
>   * Copyright 2012-2016 Freescale Semiconductor, Inc.
>   * Copyright 2017-2018 NXP
> @@ -938,5 +938,5 @@ static void __exit linflex_serial_exit(void)
>  module_init(linflex_serial_init);
>  module_exit(linflex_serial_exit);
>  
> -MODULE_DESCRIPTION("Freescale linflex serial port driver");
> +MODULE_DESCRIPTION("Freescale LINFlexD serial port driver");
>  MODULE_LICENSE("GPL v2");
> diff --git a/include/uapi/linux/serial_core.h b/include/uapi/linux/serial_core.h
> index 63fa56b899e8..26967c2f4a4f 100644
> --- a/include/uapi/linux/serial_core.h
> +++ b/include/uapi/linux/serial_core.h
> @@ -293,7 +293,7 @@
>  /* Sunix UART */
>  #define PORT_SUNIX	121
>  
> -/* Freescale Linflex UART */
> -#define PORT_LINFLEXUART	121
> +/* Freescale LINFlexD UART */
> +#define PORT_LINFLEXUART	122
>  
>  #endif /* _UAPILINUX_SERIAL_CORE_H */
> -- 
> 2.22.0
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board
  2019-09-05 11:58 ` [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board Stefan-gabriel Mirea
@ 2019-10-06  1:59   ` Shawn Guo
  2019-10-07 12:24     ` Stefan-gabriel Mirea
  0 siblings, 1 reply; 10+ messages in thread
From: Shawn Guo @ 2019-10-06  1:59 UTC (permalink / raw)
  To: Stefan-gabriel Mirea
  Cc: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	Leo Li, jslaby, linux-doc, linux-kernel, devicetree,
	linux-serial, linux-arm-kernel, Eddy Petrisor

On Thu, Sep 05, 2019 at 11:58:32AM +0000, Stefan-gabriel Mirea wrote:
> From: Eddy Petrișor <eddy.petrisor@nxp.com>
> 
> Add entry for the NXP S32V234 Customer Evaluation Board to the board/SoC
> bindings.
> 
> Signed-off-by: Eddy Petrișor <eddy.petrisor@nxp.com>
> Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
> Reviewed-by: Rob Herring <robh@kernel.org>

I'm about to apply the patches, but found the messages are using base64
Content-Transfer-Encoding, which is difficult for me to apply patch
from.  Please fix it and resend.

Shawn

> ---
>  Documentation/devicetree/bindings/arm/fsl.yaml | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml
> index 7294ac36f4c0..597c563bdec9 100644
> --- a/Documentation/devicetree/bindings/arm/fsl.yaml
> +++ b/Documentation/devicetree/bindings/arm/fsl.yaml
> @@ -309,4 +309,10 @@ properties:
>                - fsl,ls2088a-rdb
>            - const: fsl,ls2088a
>  
> +      - description: S32V234 based Boards
> +        items:
> +          - enum:
> +              - fsl,s32v234-evb           # S32V234-EVB2 Customer Evaluation Board
> +          - const: fsl,s32v234
> +
>  ...
> -- 
> 2.22.0
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board
  2019-10-06  1:59   ` Shawn Guo
@ 2019-10-07 12:24     ` Stefan-gabriel Mirea
  0 siblings, 0 replies; 10+ messages in thread
From: Stefan-gabriel Mirea @ 2019-10-07 12:24 UTC (permalink / raw)
  To: Shawn Guo
  Cc: corbet, robh+dt, mark.rutland, gregkh, catalin.marinas, will,
	Leo Li, jslaby, linux-doc, linux-kernel, devicetree,
	linux-serial, linux-arm-kernel, Eddy Petrisor

On 10/6/2019 5:00 AM, Shawn Guo wrote:
> On Thu, Sep 05, 2019 at 11:58:32AM +0000, Stefan-gabriel Mirea wrote:
>> From: Eddy Petrișor <eddy.petrisor@nxp.com>
>>
>> Add entry for the NXP S32V234 Customer Evaluation Board to the board/SoC
>> bindings.
>>
>> Signed-off-by: Eddy Petrișor <eddy.petrisor@nxp.com>
>> Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
>> Reviewed-by: Rob Herring <robh@kernel.org>
> 
> I'm about to apply the patches, but found the messages are using base64
> Content-Transfer-Encoding, which is difficult for me to apply patch
> from.  Please fix it and resend.
> 
> Shawn

Hello Shawn,

I will fix this is the next version. Please note that this might take a
while, as the problem is caused by our Exchange server and I need to
receive access to another SMTP server. Unfortunately, this cannot be
worked around with the '--transfer-encoding' option of 'git send-email'
for this particular patch.

Also, please note that there is also a 5th version of this series[1],
submitted on 2 October (there are no significant changes though; the
patches were just rebased). You were not included in the recipients list
because the 'arch/arm64/boot/dts/freescale/fsl-*' pattern in the section
'ARM/FREESCALE LAYERSCAPE ARM ARCHITECTURE' of the MAINTAINERS file no
longer matches the dts/dtsi file names, following the prefix removal you
suggested. Therefore, get_maintainer.pl did not show you as a maintainer
anymore. I will add you to the next version.

Regards,
Stefan

[1] https://lkml.org/lkml/2019/10/2/320

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-10-07 12:25 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-05 11:58 [PATCH v4 0/6] Add initial support for S32V234-EVB Stefan-gabriel Mirea
2019-09-05 11:58 ` [PATCH v4 1/6] dt-bindings: arm: fsl: Add the S32V234-EVB board Stefan-gabriel Mirea
2019-10-06  1:59   ` Shawn Guo
2019-10-07 12:24     ` Stefan-gabriel Mirea
2019-09-05 11:58 ` [PATCH v4 2/6] arm64: Introduce config for S32 Stefan-gabriel Mirea
2019-09-05 11:58 ` [PATCH v4 3/6] serial: fsl_linflexuart: Be consistent with the name Stefan-gabriel Mirea
2019-10-06  1:56   ` Shawn Guo
2019-09-05 11:58 ` [PATCH v4 4/6] arm64: dts: fsl: Add device tree for S32V234-EVB Stefan-gabriel Mirea
2019-09-05 11:58 ` [PATCH v4 5/6] dt-bindings: serial: Document Freescale LINFlexD UART Stefan-gabriel Mirea
2019-09-05 11:58 ` [PATCH v4 6/6] arm64: defconfig: Enable configs for S32V234 Stefan-gabriel Mirea

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).