linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] Neutis N5 support
@ 2018-10-05 13:25 Aleksandr Aleksandrov
  2018-10-05 13:25 ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  0 siblings, 1 reply; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-05 13:25 UTC (permalink / raw)
  To: linux-kernel; +Cc: Aleksandr Aleksandrov

This patch addes Neutis N5 support.
Emlid Neutis N5 is a SoM based on Allwinner H5.
The patch includes device tree file for Dev board
and dtsi file for SoM needs.

Changes from v1: separate dts file: dtsi for SoM
and motherboard dts file that inlcudes dtsi file.

Changes from v2 (5 oct 2018):
- put Maxime Ripard in Cc
- makefile: dtb-$(CONFIG_ARCH_SUNXI) - ordered alphabetically

Aleksandr Aleksandrov (1):
  arm64: new board - Emlid Neutis N5

 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 184 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  96 +++++++++++
 4 files changed, 282 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

-- 
2.7.4


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

* [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-05 13:25 [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
@ 2018-10-05 13:25 ` Aleksandr Aleksandrov
  2018-10-05 14:48   ` Maxime Ripard
  2018-10-08 15:20   ` [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
  0 siblings, 2 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-05 13:25 UTC (permalink / raw)
  To: linux-kernel; +Cc: Aleksandr Aleksandrov, Maxime Ripard

Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
module, DDR3 RAM and eMMC.

- add neutis n5 dtsi file for SoM needs
- add neutis devboard dts file
- add neutis devboard target to dtb makefile
- new vendor prefix - emlid

Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
---
 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 184 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  96 +++++++++++
 4 files changed, 282 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc51..2336e44 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -112,6 +112,7 @@ edt	Emerging Display Technologies
 eeti	eGalax_eMPIA Technology Inc
 elan	Elan Microelectronic Corp.
 embest	Shenzhen Embest Technology Co., Ltd.
+emlid	Emlid, Ltd.
 emmicro	EM Microelectronic
 emtrion	emtrion GmbH
 energymicro	Silicon Laboratories (formerly Energy Micro AS)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 9ffa7a0..eefe74c 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
new file mode 100644
index 0000000..493947c
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
@@ -0,0 +1,184 @@
+/*
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ *
+ * 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.
+ *
+ * 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/;
+
+#include "sun50i-h5-emlid-neutis-n5.dtsi"
+
+/ {
+	model = "Emlid Neutis N5 Developer board";
+	compatible = "emlid,emlid-neutis-n5-devboard",
+		"emlid,emlid-neutis-n5",
+		"allwinner,sun50i-h5";
+
+	aliases {
+		serial0 = &uart0;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	connector {
+		compatible = "hdmi-connector";
+		type = "a";
+
+		port {
+			hdmi_con_in: endpoint {
+				remote-endpoint = <&hdmi_out_con>;
+			};
+		};
+	};
+
+	reg_usb0_vbus: usb0-vbus {
+		compatible = "regulator-fixed";
+		regulator-name = "usb0-vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		enable-active-high;
+		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;   /* PL9 */
+		status = "okay";
+	};
+
+	vdd_cpux: gpio-regulator {
+		compatible = "regulator-gpio";
+		pinctrl-names = "default";
+		regulator-name = "vdd-cpux";
+		regulator-type = "voltage";
+		regulator-boot-on;
+		regulator-always-on;
+		regulator-min-microvolt = <1100000>;
+		regulator-max-microvolt = <1300000>;
+		regulator-ramp-delay = <50>; /* 4ms */
+		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
+		gpios-states = <0x1>;
+		states = <1100000 0x0
+			  1300000 0x1>;
+	};
+};
+
+&codec {
+	allwinner,audio-routing =
+		"Line Out", "LINEOUT",
+		"LINEIN", "Line In",
+		"MIC1", "Mic",
+		"MIC2", "Mic",
+		"Mic",  "MBIAS";
+	status = "okay";
+};
+
+&de {
+	status = "okay";
+};
+
+&ehci0 {
+	status = "okay";
+};
+
+&ehci1 {
+	status = "okay";
+};
+
+&ehci2 {
+	status = "okay";
+};
+
+&ehci3 {
+	status = "okay";
+};
+
+&ohci0 {
+	status = "okay";
+};
+
+&ohci1 {
+	status = "okay";
+};
+
+&ohci2 {
+	status = "okay";
+};
+
+&ohci3 {
+	status = "okay";
+};
+
+&emac {
+	phy-handle = <&int_mii_phy>;
+	phy-mode = "mii";
+	allwinner,leds-active-low;
+	status = "okay";
+};
+
+&hdmi {
+	status = "okay";
+};
+
+&hdmi_out {
+	hdmi_out_con: endpoint {
+		remote-endpoint = <&hdmi_con_in>;
+	};
+};
+
+&mmc0 {
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <4>;
+	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
+	status = "okay";
+};
+
+&uart0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart0_pins_a>;
+	status = "okay";
+};
+
+&usb_otg {
+	dr_mode = "otg";
+	status = "okay";
+};
+
+&usbphy {
+	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+	usb0_vbus-supply = <&reg_usb0_vbus>;
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
new file mode 100644
index 0000000..8e1e37d
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ *
+ * 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.
+ *
+ * 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/;
+
+#include "sun50i-h5.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	reg_vcc3v3: vcc3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	wifi_pwrseq: wifi_pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		pinctrl-names = "default";
+		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
+		post-power-on-delay-ms = <200>;
+	};
+};
+
+&mmc1 {
+	vmmc-supply = <&reg_vcc3v3>;
+	vqmmc-supply = <&reg_vcc3v3>;
+	mmc-pwrseq = <&wifi_pwrseq>;
+	bus-width = <4>;
+	non-removable;
+	status = "okay";
+
+	brcmf: wifi@1 {
+		reg = <1>;
+		compatible = "brcm,bcm4329-fmac";
+		interrupt-parent = <&r_pio>;
+		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
+		interrupt-names = "host-wake";
+	};
+};
+
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_8bit_pins>;
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	status = "okay";
+};
+
+&uart1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+	status = "okay";
+};
-- 
2.7.4


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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-05 13:25 ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
@ 2018-10-05 14:48   ` Maxime Ripard
  2018-10-08 15:20   ` [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
  1 sibling, 0 replies; 22+ messages in thread
From: Maxime Ripard @ 2018-10-05 14:48 UTC (permalink / raw)
  To: Aleksandr Aleksandrov; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 702 bytes --]

Hi,

On Fri, Oct 05, 2018 at 04:25:49PM +0300, Aleksandr Aleksandrov wrote:
> Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
> module, DDR3 RAM and eMMC.
> 
> - add neutis n5 dtsi file for SoM needs
> - add neutis devboard dts file
> - add neutis devboard target to dtb makefile
> - new vendor prefix - emlid
> 
> Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>

It's still not the correct recipient list, and I have no idea where
the v2 went, or what did you change between v1, v2 and v3.

Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* [PATCH v3] Neutis N5 support
  2018-10-05 13:25 ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  2018-10-05 14:48   ` Maxime Ripard
@ 2018-10-08 15:20   ` Aleksandr Aleksandrov
  2018-10-08 15:20     ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  1 sibling, 1 reply; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-08 15:20 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, Thierry Reding, David Lechner,
	Noralf Trønnes, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

This patch addes Neutis N5 support.
Emlid Neutis N5 is a SoM based on Allwinner H5.
The patch includes device tree file for Dev board
and dtsi file for SoM needs.

Changes from v1: separate dts file: dtsi for SoM
and motherboard dts file that inlcudes dtsi file.

Changes from v2 (5 oct 2018):
- makefile: dtb-$(CONFIG_ARCH_SUNXI) - ordered alphabetically

Aleksandr Aleksandrov (1):
  arm64: new board - Emlid Neutis N5

 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 184 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  96 +++++++++++
 4 files changed, 282 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

-- 
2.7.4


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

* [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-08 15:20   ` [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
@ 2018-10-08 15:20     ` Aleksandr Aleksandrov
  2018-10-10 14:49       ` Maxime Ripard
  2018-10-12 10:23       ` [PATCH v4 0/2] Neutis N5 support Aleksandr Aleksandrov
  0 siblings, 2 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-08 15:20 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Noralf Trønnes, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
module, DDR3 RAM and eMMC.

- add neutis n5 dtsi file for SoM needs
- add neutis devboard dts file
- add neutis devboard target to dtb makefile
- new vendor prefix - emlid

Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
---
 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 184 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  96 +++++++++++
 4 files changed, 282 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc51..2336e44 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -112,6 +112,7 @@ edt	Emerging Display Technologies
 eeti	eGalax_eMPIA Technology Inc
 elan	Elan Microelectronic Corp.
 embest	Shenzhen Embest Technology Co., Ltd.
+emlid	Emlid, Ltd.
 emmicro	EM Microelectronic
 emtrion	emtrion GmbH
 energymicro	Silicon Laboratories (formerly Energy Micro AS)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 9ffa7a0..eefe74c 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
new file mode 100644
index 0000000..493947c
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
@@ -0,0 +1,184 @@
+/*
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ *
+ * 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.
+ *
+ * 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/;
+
+#include "sun50i-h5-emlid-neutis-n5.dtsi"
+
+/ {
+	model = "Emlid Neutis N5 Developer board";
+	compatible = "emlid,emlid-neutis-n5-devboard",
+		"emlid,emlid-neutis-n5",
+		"allwinner,sun50i-h5";
+
+	aliases {
+		serial0 = &uart0;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	connector {
+		compatible = "hdmi-connector";
+		type = "a";
+
+		port {
+			hdmi_con_in: endpoint {
+				remote-endpoint = <&hdmi_out_con>;
+			};
+		};
+	};
+
+	reg_usb0_vbus: usb0-vbus {
+		compatible = "regulator-fixed";
+		regulator-name = "usb0-vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		enable-active-high;
+		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;   /* PL9 */
+		status = "okay";
+	};
+
+	vdd_cpux: gpio-regulator {
+		compatible = "regulator-gpio";
+		pinctrl-names = "default";
+		regulator-name = "vdd-cpux";
+		regulator-type = "voltage";
+		regulator-boot-on;
+		regulator-always-on;
+		regulator-min-microvolt = <1100000>;
+		regulator-max-microvolt = <1300000>;
+		regulator-ramp-delay = <50>; /* 4ms */
+		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
+		gpios-states = <0x1>;
+		states = <1100000 0x0
+			  1300000 0x1>;
+	};
+};
+
+&codec {
+	allwinner,audio-routing =
+		"Line Out", "LINEOUT",
+		"LINEIN", "Line In",
+		"MIC1", "Mic",
+		"MIC2", "Mic",
+		"Mic",  "MBIAS";
+	status = "okay";
+};
+
+&de {
+	status = "okay";
+};
+
+&ehci0 {
+	status = "okay";
+};
+
+&ehci1 {
+	status = "okay";
+};
+
+&ehci2 {
+	status = "okay";
+};
+
+&ehci3 {
+	status = "okay";
+};
+
+&ohci0 {
+	status = "okay";
+};
+
+&ohci1 {
+	status = "okay";
+};
+
+&ohci2 {
+	status = "okay";
+};
+
+&ohci3 {
+	status = "okay";
+};
+
+&emac {
+	phy-handle = <&int_mii_phy>;
+	phy-mode = "mii";
+	allwinner,leds-active-low;
+	status = "okay";
+};
+
+&hdmi {
+	status = "okay";
+};
+
+&hdmi_out {
+	hdmi_out_con: endpoint {
+		remote-endpoint = <&hdmi_con_in>;
+	};
+};
+
+&mmc0 {
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <4>;
+	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
+	status = "okay";
+};
+
+&uart0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart0_pins_a>;
+	status = "okay";
+};
+
+&usb_otg {
+	dr_mode = "otg";
+	status = "okay";
+};
+
+&usbphy {
+	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+	usb0_vbus-supply = <&reg_usb0_vbus>;
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
new file mode 100644
index 0000000..8e1e37d
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ *
+ * 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.
+ *
+ * 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/;
+
+#include "sun50i-h5.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	reg_vcc3v3: vcc3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	wifi_pwrseq: wifi_pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		pinctrl-names = "default";
+		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
+		post-power-on-delay-ms = <200>;
+	};
+};
+
+&mmc1 {
+	vmmc-supply = <&reg_vcc3v3>;
+	vqmmc-supply = <&reg_vcc3v3>;
+	mmc-pwrseq = <&wifi_pwrseq>;
+	bus-width = <4>;
+	non-removable;
+	status = "okay";
+
+	brcmf: wifi@1 {
+		reg = <1>;
+		compatible = "brcm,bcm4329-fmac";
+		interrupt-parent = <&r_pio>;
+		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
+		interrupt-names = "host-wake";
+	};
+};
+
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_8bit_pins>;
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	status = "okay";
+};
+
+&uart1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+	status = "okay";
+};
-- 
2.7.4


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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-08 15:20     ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
@ 2018-10-10 14:49       ` Maxime Ripard
       [not found]         ` <9398571539259289@myt4-929fb874f3f2.qloud-c.yandex.net>
  2018-10-12 10:23       ` [PATCH v4 0/2] Neutis N5 support Aleksandr Aleksandrov
  1 sibling, 1 reply; 22+ messages in thread
From: Maxime Ripard @ 2018-10-10 14:49 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Rob Herring, Mark Rutland, Chen-Yu Tsai, Andreas Färber,
	David Lechner, Thierry Reding, Noralf Trønnes, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

Hi,

On Mon, Oct 08, 2018 at 06:20:42PM +0300, Aleksandr Aleksandrov wrote:
> Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
> module, DDR3 RAM and eMMC.
> 
> - add neutis n5 dtsi file for SoM needs
> - add neutis devboard dts file
> - add neutis devboard target to dtb makefile
> - new vendor prefix - emlid
> 
> Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>

Your commit prefix is wrong, it should be arm64: dts: allwinner: 

> ---
>  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
>  arch/arm64/boot/dts/allwinner/Makefile             |   1 +
>  .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 184 +++++++++++++++++++++
>  .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  96 +++++++++++
>  4 files changed, 282 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
>  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
> 
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> index 2c3fc51..2336e44 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -112,6 +112,7 @@ edt	Emerging Display Technologies
>  eeti	eGalax_eMPIA Technology Inc
>  elan	Elan Microelectronic Corp.
>  embest	Shenzhen Embest Technology Co., Ltd.
> +emlid	Emlid, Ltd.
>  emmicro	EM Microelectronic
>  emtrion	emtrion GmbH
>  energymicro	Silicon Laboratories (formerly Energy Micro AS)

This should be in a separate patch.

> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
> index 9ffa7a0..eefe74c 100644
> --- a/arch/arm64/boot/dts/allwinner/Makefile
> +++ b/arch/arm64/boot/dts/allwinner/Makefile
> @@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
> new file mode 100644
> index 0000000..493947c
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
> @@ -0,0 +1,184 @@
> +/*
> + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> + *
> + * 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.
> + *
> + * 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.
> + */

You should use an SPDX header instead of the full license text.

> +
> +/dts-v1/;
> +
> +#include "sun50i-h5-emlid-neutis-n5.dtsi"
> +
> +/ {
> +	model = "Emlid Neutis N5 Developer board";
> +	compatible = "emlid,emlid-neutis-n5-devboard",
> +		"emlid,emlid-neutis-n5",

Do you need the two emlid there? What comes before the comma is the
vendor, while what is after is the model.

Also, please align those strings

> +		"allwinner,sun50i-h5";
> +
> +	aliases {
> +		serial0 = &uart0;
> +	};
> +
> +	chosen {
> +		stdout-path = "serial0:115200n8";
> +	};
> +
> +	connector {
> +		compatible = "hdmi-connector";
> +		type = "a";
> +
> +		port {
> +			hdmi_con_in: endpoint {
> +				remote-endpoint = <&hdmi_out_con>;
> +			};
> +		};
> +	};
> +
> +	reg_usb0_vbus: usb0-vbus {
> +		compatible = "regulator-fixed";
> +		regulator-name = "usb0-vbus";
> +		regulator-min-microvolt = <5000000>;
> +		regulator-max-microvolt = <5000000>;
> +		enable-active-high;
> +		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;   /* PL9 */
> +		status = "okay";
> +	};
> +
> +	vdd_cpux: gpio-regulator {
> +		compatible = "regulator-gpio";
> +		pinctrl-names = "default";
> +		regulator-name = "vdd-cpux";
> +		regulator-type = "voltage";
> +		regulator-boot-on;
> +		regulator-always-on;
> +		regulator-min-microvolt = <1100000>;
> +		regulator-max-microvolt = <1300000>;
> +		regulator-ramp-delay = <50>; /* 4ms */
> +		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
> +		gpios-states = <0x1>;
> +		states = <1100000 0x0
> +			  1300000 0x1>;
> +	};
> +};
> +
> +&codec {
> +	allwinner,audio-routing =
> +		"Line Out", "LINEOUT",
> +		"LINEIN", "Line In",
> +		"MIC1", "Mic",
> +		"MIC2", "Mic",
> +		"Mic",  "MBIAS";
> +	status = "okay";
> +};
> +
> +&de {
> +	status = "okay";
> +};
> +
> +&ehci0 {
> +	status = "okay";
> +};
> +
> +&ehci1 {
> +	status = "okay";
> +};
> +
> +&ehci2 {
> +	status = "okay";
> +};
> +
> +&ehci3 {
> +	status = "okay";
> +};
> +
> +&ohci0 {
> +	status = "okay";
> +};
> +
> +&ohci1 {
> +	status = "okay";
> +};
> +
> +&ohci2 {
> +	status = "okay";
> +};
> +
> +&ohci3 {
> +	status = "okay";
> +};
> +
> +&emac {
> +	phy-handle = <&int_mii_phy>;
> +	phy-mode = "mii";
> +	allwinner,leds-active-low;
> +	status = "okay";
> +};
> +
> +&hdmi {
> +	status = "okay";
> +};
> +
> +&hdmi_out {
> +	hdmi_out_con: endpoint {
> +		remote-endpoint = <&hdmi_con_in>;
> +	};
> +};
> +
> +&mmc0 {
> +	vmmc-supply = <&reg_vcc3v3>;
> +	bus-width = <4>;
> +	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
> +	status = "okay";
> +};
> +
> +&uart0 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart0_pins_a>;
> +	status = "okay";
> +};
> +
> +&usb_otg {
> +	dr_mode = "otg";
> +	status = "okay";
> +};
> +
> +&usbphy {
> +	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
> +	usb0_vbus-supply = <&reg_usb0_vbus>;
> +	status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
> new file mode 100644
> index 0000000..8e1e37d
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
> @@ -0,0 +1,96 @@
> +/*
> + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> + *
> + * 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.
> + *
> + * 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/;
> +
> +#include "sun50i-h5.dtsi"
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +/ {
> +	reg_vcc3v3: vcc3v3 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vcc3v3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +	};
> +
> +	wifi_pwrseq: wifi_pwrseq {
> +		compatible = "mmc-pwrseq-simple";
> +		pinctrl-names = "default";
> +		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
> +		post-power-on-delay-ms = <200>;
> +	};
> +};
> +
> +&mmc1 {
> +	vmmc-supply = <&reg_vcc3v3>;
> +	vqmmc-supply = <&reg_vcc3v3>;
> +	mmc-pwrseq = <&wifi_pwrseq>;
> +	bus-width = <4>;
> +	non-removable;
> +	status = "okay";
> +
> +	brcmf: wifi@1 {
> +		reg = <1>;
> +		compatible = "brcm,bcm4329-fmac";
> +		interrupt-parent = <&r_pio>;
> +		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
> +		interrupt-names = "host-wake";
> +	};
> +};
> +
> +&mmc2 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&mmc2_8bit_pins>;
> +	vmmc-supply = <&reg_vcc3v3>;
> +	bus-width = <8>;
> +	non-removable;
> +	cap-mmc-hw-reset;
> +	status = "okay";
> +};
> +
> +&uart1 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> +	status = "okay";
> +};

I guess this is for bluetooth? Have you tested serdev drivers?

Also, I have a general comments, and it really depends on what your
intention about the board ecosystem is. Do you expect the SOM to be
swappable in multiple boards, or do you expect to send it as something
that is just fixed into a daughter board?

In the former case, you probably want to use overlays instead. In the
latter, you're fine.

Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
       [not found]         ` <9398571539259289@myt4-929fb874f3f2.qloud-c.yandex.net>
@ 2018-10-11 13:20           ` Andreas Färber
  2018-10-11 16:40             ` Maxime Ripard
  2018-10-12  9:35             ` Aleksandr Aleksandrov
  0 siblings, 2 replies; 22+ messages in thread
From: Andreas Färber @ 2018-10-11 13:20 UTC (permalink / raw)
  To: aleksandr.aleksandrov, Maxime Ripard, Rob Herring
  Cc: Mark Rutland, Chen-Yu Tsai, David Lechner, Thierry Reding,
	Noralf Trønnes, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Hi Aleksandr,

Please keep your replies in text-only format, not HTML.

Am 11.10.18 um 14:01 schrieb aleksandr.aleksandrov@emlid.com:
>>      +/ {
>>      + model = "Emlid Neutis N5 Developer board";
>>      + compatible = "emlid,emlid-neutis-n5-devboard",
>>      + "emlid,emlid-neutis-n5",
>>
>> Do you need the two emlid there? What comes before the comma is the
>> vendor, while what is after is the model.
>  
> I think emlid-neutis-n5 module could be useful in the future, no need
> this now.

You misunderstand: The point would be to use, e.g., "emlid,neutis-n5"
instead of "emlid,emlid-neutis-n5" with duplicate "emlid,emlid-". It is
orthogonal to having multiple compatible strings.

>>  +&uart1 {
>>  + pinctrl-names = "default";
>>  + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
>>  + status = "okay";
>>  +};
>>
>> I guess this is for bluetooth? Have you tested serdev drivers?
>>
> Yes, bluetooth is connected over uart1.
> You mean if I have tested bluetooth stack via serial device?

Not quite, we're missing a child node within uart1 for a serdev driver.
Is there no such driver yet for your Bluetooth chipset, or did you not
yet check?

> Bluez works stably with bcm43xx over uart 1500000 baud rate.
>  
>>
>> Also, I have a general comments, and it really depends on what your
>> intention about the board ecosystem is. Do you expect the SOM to be
>> swappable in multiple boards, or do you expect to send it as something
>> that is just fixed into a daughter board?
>>
>> In the former case, you probably want to use overlays instead. In the
>> latter, you're fine.
>>
> Right, we expect the SoM to be swappable. I agree, to use overlays is
> more convenient, but
> the devboard DT file will be a reference for the overlays and the future
> boards based on Neutis.

What about just keeping the common nodes enabled in a SoM .dts, so that
the average board doesn't need an Overlay for booting?

@Maxime/Rob, is it possible to merge .dtso files these days? If not,
could that be considered in the big dts Makefile refactoring? :)

Cheers,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-11 13:20           ` Andreas Färber
@ 2018-10-11 16:40             ` Maxime Ripard
  2018-10-12  9:35             ` Aleksandr Aleksandrov
  1 sibling, 0 replies; 22+ messages in thread
From: Maxime Ripard @ 2018-10-11 16:40 UTC (permalink / raw)
  To: Andreas Färber
  Cc: aleksandr.aleksandrov, Rob Herring, Mark Rutland, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Noralf Trønnes, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

On Thu, Oct 11, 2018 at 03:20:11PM +0200, Andreas Färber wrote:
> >> Also, I have a general comments, and it really depends on what your
> >> intention about the board ecosystem is. Do you expect the SOM to be
> >> swappable in multiple boards, or do you expect to send it as something
> >> that is just fixed into a daughter board?
> >>
> >> In the former case, you probably want to use overlays instead. In the
> >> latter, you're fine.
> >>
> > Right, we expect the SoM to be swappable. I agree, to use overlays is
> > more convenient, but
> > the devboard DT file will be a reference for the overlays and the future
> > boards based on Neutis.
> 
> What about just keeping the common nodes enabled in a SoM .dts, so that
> the average board doesn't need an Overlay for booting?

I guess the fundamental difference would be if the SoM can be run
free-standing or not. If it is, then overlays would be best. If not,
then I'm fine with using the include like Aleksandr has used.

> @Maxime/Rob, is it possible to merge .dtso files these days? If not,
> could that be considered in the big dts Makefile refactoring? :)

I don't really know what is that big dts Makefile refactoring you're
mentionning, but I don't think we can merge dtso before having the DT
connectors in place.

Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-11 13:20           ` Andreas Färber
  2018-10-11 16:40             ` Maxime Ripard
@ 2018-10-12  9:35             ` Aleksandr Aleksandrov
  2018-10-12  9:57               ` Maxime Ripard
  1 sibling, 1 reply; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-12  9:35 UTC (permalink / raw)
  To: Andreas Färber
  Cc: Maxime Ripard, Rob Herring, Mark Rutland, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Noralf Trønnes, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

Hi,

> >>      +/ {
> >>      + model = "Emlid Neutis N5 Developer board";
> >>      + compatible = "emlid,emlid-neutis-n5-devboard",
> >>      + "emlid,emlid-neutis-n5",
> >>
> >> Do you need the two emlid there? What comes before the comma is the
> >> vendor, while what is after is the model.
> >  
> > I think emlid-neutis-n5 module could be useful in the future, no need
> > this now.
> 
> You misunderstand: The point would be to use, e.g., "emlid,neutis-n5"
> instead of "emlid,emlid-neutis-n5" with duplicate "emlid,emlid-". It is
> orthogonal to having multiple compatible strings.

Oh, I agree. No need to duplicate "emlid". Thank you!

> >>  +&uart1 {
> >>  + pinctrl-names = "default";
> >>  + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> >>  + status = "okay";
> >>  +};
> >>
> >> I guess this is for bluetooth? Have you tested serdev drivers?
> >>
> > Yes, bluetooth is connected over uart1.
> > You mean if I have tested bluetooth stack via serial device?
> 
> Not quite, we're missing a child node within uart1 for a serdev driver.
> Is there no such driver yet for your Bluetooth chipset, or did you not
> yet check?

Got it. I haven't checked a serdev driver.

Maxim, the SoM can't be run without a motherboard. According to your last message
I don't change dts files, right?

Aleksandr 


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

* Re: [PATCH v3] arm64: new board - Emlid Neutis N5
  2018-10-12  9:35             ` Aleksandr Aleksandrov
@ 2018-10-12  9:57               ` Maxime Ripard
  0 siblings, 0 replies; 22+ messages in thread
From: Maxime Ripard @ 2018-10-12  9:57 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Andreas Färber, Rob Herring, Mark Rutland, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Noralf Trønnes, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 911 bytes --]

On Fri, Oct 12, 2018 at 12:35:23PM +0300, Aleksandr Aleksandrov wrote:
> > >>  +&uart1 {
> > >>  + pinctrl-names = "default";
> > >>  + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> > >>  + status = "okay";
> > >>  +};
> > >>
> > >> I guess this is for bluetooth? Have you tested serdev drivers?
> > >>
> > > Yes, bluetooth is connected over uart1.
> > > You mean if I have tested bluetooth stack via serial device?
> > 
> > Not quite, we're missing a child node within uart1 for a serdev driver.
> > Is there no such driver yet for your Bluetooth chipset, or did you not
> > yet check?
> 
> Got it. I haven't checked a serdev driver.
> 
> Maxim, the SoM can't be run without a motherboard. According to your last message
> I don't change dts files, right?

Yep, that works for me.

Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* [PATCH v4 0/2] Neutis N5 support
  2018-10-08 15:20     ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  2018-10-10 14:49       ` Maxime Ripard
@ 2018-10-12 10:23       ` Aleksandr Aleksandrov
  2018-10-12 10:23         ` [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  2018-10-12 10:23         ` [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid Aleksandr Aleksandrov
  1 sibling, 2 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-12 10:23 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Greg Kroah-Hartman, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

This patch addes Neutis N5 support.
Emlid Neutis N5 is a SoM based on Allwinner H5.
The patch includes device tree file for Dev board
and dtsi file for SoM needs.

Changes from v1: separate dts file: dtsi for SoM
and motherboard dts file that inlcudes dtsi file.

Changes from v2 (5 oct 2018):
- makefile: dtb-$(CONFIG_ARCH_SUNXI) - ordered alphabetically

Changes from v3 (12 oct 2018):
- fix commit prefix for 1/2 patch
- use an SPDX header instead of the full license text
- compatible: "emlid,neutis-n5" instead of "emlid,emlid-neutis-n5"

Aleksandr Aleksandrov (2):
  arm64: dts: allwinner: new board - Emlid Neutis N5
  doc: devicetree: vendor-prefixes: new vendor - Emlid

 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 147 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  59 +++++++++
 4 files changed, 208 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

-- 
2.7.4


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

* [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-12 10:23       ` [PATCH v4 0/2] Neutis N5 support Aleksandr Aleksandrov
@ 2018-10-12 10:23         ` Aleksandr Aleksandrov
  2018-10-12 12:19           ` Andreas Färber
  2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
  2018-10-12 10:23         ` [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid Aleksandr Aleksandrov
  1 sibling, 2 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-12 10:23 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Florian Fainelli, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
module, DDR3 RAM and eMMC.

- add neutis n5 dtsi file for SoM needs
- add neutis devboard dts file
- add neutis devboard target to dtb makefile

Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
---
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 147 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  59 +++++++++
 3 files changed, 207 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 9ffa7a0..eefe74c 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
new file mode 100644
index 0000000..1086029
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
@@ -0,0 +1,147 @@
+/* SPDX-License-Identifier: (GPL-2.0+ OR X11)
+ *
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ */
+
+/dts-v1/;
+
+#include "sun50i-h5-emlid-neutis-n5.dtsi"
+
+/ {
+	model = "Emlid Neutis N5 Developer board";
+	compatible = "emlid,neutis-n5-devboard",
+		     "emlid,neutis-n5",
+		     "allwinner,sun50i-h5";
+
+	aliases {
+		serial0 = &uart0;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	connector {
+		compatible = "hdmi-connector";
+		type = "a";
+
+		port {
+			hdmi_con_in: endpoint {
+				remote-endpoint = <&hdmi_out_con>;
+			};
+		};
+	};
+
+	reg_usb0_vbus: usb0-vbus {
+		compatible = "regulator-fixed";
+		regulator-name = "usb0-vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		enable-active-high;
+		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;   /* PL9 */
+		status = "okay";
+	};
+
+	vdd_cpux: gpio-regulator {
+		compatible = "regulator-gpio";
+		pinctrl-names = "default";
+		regulator-name = "vdd-cpux";
+		regulator-type = "voltage";
+		regulator-boot-on;
+		regulator-always-on;
+		regulator-min-microvolt = <1100000>;
+		regulator-max-microvolt = <1300000>;
+		regulator-ramp-delay = <50>; /* 4ms */
+		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
+		gpios-states = <0x1>;
+		states = <1100000 0x0
+			  1300000 0x1>;
+	};
+};
+
+&codec {
+	allwinner,audio-routing =
+		"Line Out", "LINEOUT",
+		"LINEIN", "Line In",
+		"MIC1", "Mic",
+		"MIC2", "Mic",
+		"Mic",  "MBIAS";
+	status = "okay";
+};
+
+&de {
+	status = "okay";
+};
+
+&ehci0 {
+	status = "okay";
+};
+
+&ehci1 {
+	status = "okay";
+};
+
+&ehci2 {
+	status = "okay";
+};
+
+&ehci3 {
+	status = "okay";
+};
+
+&ohci0 {
+	status = "okay";
+};
+
+&ohci1 {
+	status = "okay";
+};
+
+&ohci2 {
+	status = "okay";
+};
+
+&ohci3 {
+	status = "okay";
+};
+
+&emac {
+	phy-handle = <&int_mii_phy>;
+	phy-mode = "mii";
+	allwinner,leds-active-low;
+	status = "okay";
+};
+
+&hdmi {
+	status = "okay";
+};
+
+&hdmi_out {
+	hdmi_out_con: endpoint {
+		remote-endpoint = <&hdmi_con_in>;
+	};
+};
+
+&mmc0 {
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <4>;
+	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
+	status = "okay";
+};
+
+&uart0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart0_pins_a>;
+	status = "okay";
+};
+
+&usb_otg {
+	dr_mode = "otg";
+	status = "okay";
+};
+
+&usbphy {
+	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+	usb0_vbus-supply = <&reg_usb0_vbus>;
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
new file mode 100644
index 0000000..b098658
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: (GPL-2.0+ OR X11)
+ *
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ */
+
+/dts-v1/;
+
+#include "sun50i-h5.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	reg_vcc3v3: vcc3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	wifi_pwrseq: wifi_pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		pinctrl-names = "default";
+		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
+		post-power-on-delay-ms = <200>;
+	};
+};
+
+&mmc1 {
+	vmmc-supply = <&reg_vcc3v3>;
+	vqmmc-supply = <&reg_vcc3v3>;
+	mmc-pwrseq = <&wifi_pwrseq>;
+	bus-width = <4>;
+	non-removable;
+	status = "okay";
+
+	brcmf: wifi@1 {
+		reg = <1>;
+		compatible = "brcm,bcm4329-fmac";
+		interrupt-parent = <&r_pio>;
+		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
+		interrupt-names = "host-wake";
+	};
+};
+
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_8bit_pins>;
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	status = "okay";
+};
+
+&uart1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+	status = "okay";
+};
-- 
2.7.4


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

* [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid
  2018-10-12 10:23       ` [PATCH v4 0/2] Neutis N5 support Aleksandr Aleksandrov
  2018-10-12 10:23         ` [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
@ 2018-10-12 10:23         ` Aleksandr Aleksandrov
  2018-10-12 11:39           ` Rob Herring
  1 sibling, 1 reply; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-12 10:23 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, Thierry Reding, David Lechner,
	Greg Kroah-Hartman, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc51..2336e44 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -112,6 +112,7 @@ edt	Emerging Display Technologies
 eeti	eGalax_eMPIA Technology Inc
 elan	Elan Microelectronic Corp.
 embest	Shenzhen Embest Technology Co., Ltd.
+emlid	Emlid, Ltd.
 emmicro	EM Microelectronic
 emtrion	emtrion GmbH
 energymicro	Silicon Laboratories (formerly Energy Micro AS)
-- 
2.7.4


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

* Re: [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid
  2018-10-12 10:23         ` [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid Aleksandr Aleksandrov
@ 2018-10-12 11:39           ` Rob Herring
  0 siblings, 0 replies; 22+ messages in thread
From: Rob Herring @ 2018-10-12 11:39 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Mark Rutland, Maxime Ripard, Chen-Yu Tsai, Andreas Färber,
	Thierry Reding, David Lechner, Greg Kroah-Hartman, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

On Fri, Oct 12, 2018 at 01:23:59PM +0300, Aleksandr Aleksandrov wrote:

Commit message?

"dt-bindings: vendor-prefix: ..." is the preferred subject prefix.

> Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> ---
>  Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
>  1 file changed, 1 insertion(+)

With that,

Acked-by: Rob Herring <robh@kernel.org>

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

* Re: [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-12 10:23         ` [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
@ 2018-10-12 12:19           ` Andreas Färber
  2018-10-12 13:39             ` Aleksandr Aleksandrov
  2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
  1 sibling, 1 reply; 22+ messages in thread
From: Andreas Färber @ 2018-10-12 12:19 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Florian Fainelli, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

Hi,

Am 12.10.18 um 12:23 schrieb Aleksandr Aleksandrov:
> Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
> module, DDR3 RAM and eMMC.
> 
> - add neutis n5 dtsi file for SoM needs
> - add neutis devboard dts file
> - add neutis devboard target to dtb makefile
> 
> Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> ---
>  arch/arm64/boot/dts/allwinner/Makefile             |   1 +
>  .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 147 +++++++++++++++++++++
>  .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  59 +++++++++
>  3 files changed, 207 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
>  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
> 
> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
> index 9ffa7a0..eefe74c 100644
> --- a/arch/arm64/boot/dts/allwinner/Makefile
> +++ b/arch/arm64/boot/dts/allwinner/Makefile
> @@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
> new file mode 100644
> index 0000000..1086029
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
> @@ -0,0 +1,147 @@
> +/* SPDX-License-Identifier: (GPL-2.0+ OR X11)

Note that the new SPDX identifier would be "GPL-2.0-or-later", but both
are still valid.

I stumbled over "X11", should that be "MIT" instead?

Also, is this combined comment style of SPDX + copyright acceptable?

Same nits in the .dtsi file.

> + *
> + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> + */
> +
> +/dts-v1/;
> +
> +#include "sun50i-h5-emlid-neutis-n5.dtsi"
> +
> +/ {
> +	model = "Emlid Neutis N5 Developer board";
> +	compatible = "emlid,neutis-n5-devboard",
> +		     "emlid,neutis-n5",

You are lacking bindings definitions for these new identifiers. The
vendor prefix should be patch 1/3, the SoM/board compatibles 2/3 and
this .dts[i] patch 3/3, so that only vendor prefixes and compatibles
that are defined and don't result in checkpatch.pl warnings get used.

One more nit below...

> +		     "allwinner,sun50i-h5";
[...]
> +&de {
> +	status = "okay";
> +};
> +
> +&ehci0 {
> +	status = "okay";
> +};
> +
> +&ehci1 {
> +	status = "okay";
> +};
> +
> +&ehci2 {
> +	status = "okay";
> +};
> +
> +&ehci3 {
> +	status = "okay";
> +};
> +
> +&ohci0 {
> +	status = "okay";
> +};
> +
> +&ohci1 {
> +	status = "okay";
> +};
> +
> +&ohci2 {
> +	status = "okay";
> +};
> +
> +&ohci3 {
> +	status = "okay";
> +};

'o' is out of alphabetical order here.

Otherwise looks okay to me.

Regards,
Andreas

> +
> +&emac {
> +	phy-handle = <&int_mii_phy>;
> +	phy-mode = "mii";
> +	allwinner,leds-active-low;
> +	status = "okay";
> +};
> +
> +&hdmi {
> +	status = "okay";
> +};
> +
> +&hdmi_out {
> +	hdmi_out_con: endpoint {
> +		remote-endpoint = <&hdmi_con_in>;
> +	};
> +};
> +
> +&mmc0 {
> +	vmmc-supply = <&reg_vcc3v3>;
> +	bus-width = <4>;
> +	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
> +	status = "okay";
> +};
> +
> +&uart0 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&uart0_pins_a>;
> +	status = "okay";
> +};
> +
> +&usb_otg {
> +	dr_mode = "otg";
> +	status = "okay";
> +};
> +
> +&usbphy {
> +	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
> +	usb0_vbus-supply = <&reg_usb0_vbus>;
> +	status = "okay";
> +};
[snip]


-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

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

* Re: [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-12 12:19           ` Andreas Färber
@ 2018-10-12 13:39             ` Aleksandr Aleksandrov
  2018-10-12 20:23               ` Maxime Ripard
  0 siblings, 1 reply; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-12 13:39 UTC (permalink / raw)
  To: Andreas Färber
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Florian Fainelli, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

Hi Andreas,

Thanks for your feedback!

> > + *
> > + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> > + */
> > +
> > +/dts-v1/;
> > +
> > +#include "sun50i-h5-emlid-neutis-n5.dtsi"
> > +
> > +/ {
> > +	model = "Emlid Neutis N5 Developer board";
> > +	compatible = "emlid,neutis-n5-devboard",
> > +		     "emlid,neutis-n5",
> 
> You are lacking bindings definitions for these new identifiers. The
> vendor prefix should be patch 1/3, the SoM/board compatibles 2/3 and
> this .dts[i] patch 3/3, so that only vendor prefixes and compatibles
> that are defined and don't result in checkpatch.pl warnings get used.

Patch 2/3:

commit 46dcb8632b36644cb20e6b35ede12ff0088a60eb
Author: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
Date:   Fri Oct 12 16:22:28 2018 +0300

    dt-bindings: arm: sunxi: emlid,neutis-n5(-devboard)
    
    sunxi: add new compatibles for Emlid Neutis Dev board and SoM module
    
    Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>

diff --git a/Documentation/devicetree/bindings/arm/sunxi.txt b/Documentation/devicetree/bindings/arm/sunxi.txt
index e4beec3..a907e52 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.txt
+++ b/Documentation/devicetree/bindings/arm/sunxi.txt
@@ -19,3 +19,5 @@ using one of the following compatible strings:
   allwinner,sun9i-a80
   allwinner,sun50i-a64
   nextthing,gr8
+  emlid,neutis-n5
+  emlid,neutis-n5-devboard

Is this right place for the neutis compatibles?

Aleksandr


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

* Re: [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-12 13:39             ` Aleksandr Aleksandrov
@ 2018-10-12 20:23               ` Maxime Ripard
  2018-10-13  2:26                 ` Chen-Yu Tsai
  0 siblings, 1 reply; 22+ messages in thread
From: Maxime Ripard @ 2018-10-12 20:23 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Andreas Färber, Rob Herring, Mark Rutland, Chen-Yu Tsai,
	David Lechner, Thierry Reding, Florian Fainelli, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

On Fri, Oct 12, 2018 at 04:39:14PM +0300, Aleksandr Aleksandrov wrote:
> Hi Andreas,
> 
> Thanks for your feedback!
> 
> > > + *
> > > + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> > > + */
> > > +
> > > +/dts-v1/;
> > > +
> > > +#include "sun50i-h5-emlid-neutis-n5.dtsi"
> > > +
> > > +/ {
> > > +	model = "Emlid Neutis N5 Developer board";
> > > +	compatible = "emlid,neutis-n5-devboard",
> > > +		     "emlid,neutis-n5",
> > 
> > You are lacking bindings definitions for these new identifiers. The
> > vendor prefix should be patch 1/3, the SoM/board compatibles 2/3 and
> > this .dts[i] patch 3/3, so that only vendor prefixes and compatibles
> > that are defined and don't result in checkpatch.pl warnings get used.
> 
> Patch 2/3:
> 
> commit 46dcb8632b36644cb20e6b35ede12ff0088a60eb
> Author: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> Date:   Fri Oct 12 16:22:28 2018 +0300
> 
>     dt-bindings: arm: sunxi: emlid,neutis-n5(-devboard)
>     
>     sunxi: add new compatibles for Emlid Neutis Dev board and SoM module
>     
>     Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> 
> diff --git a/Documentation/devicetree/bindings/arm/sunxi.txt b/Documentation/devicetree/bindings/arm/sunxi.txt
> index e4beec3..a907e52 100644
> --- a/Documentation/devicetree/bindings/arm/sunxi.txt
> +++ b/Documentation/devicetree/bindings/arm/sunxi.txt
> @@ -19,3 +19,5 @@ using one of the following compatible strings:
>    allwinner,sun9i-a80
>    allwinner,sun50i-a64
>    nextthing,gr8
> +  emlid,neutis-n5
> +  emlid,neutis-n5-devboard
> 
> Is this right place for the neutis compatibles?

No, those are for SoCs compatible. I'm not sure we ever created a
board compatible files.

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* Re: [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-12 20:23               ` Maxime Ripard
@ 2018-10-13  2:26                 ` Chen-Yu Tsai
  0 siblings, 0 replies; 22+ messages in thread
From: Chen-Yu Tsai @ 2018-10-13  2:26 UTC (permalink / raw)
  To: Maxime Ripard
  Cc: aleksandr.aleksandrov, Andreas Färber, Rob Herring,
	Mark Rutland, david, Thierry Reding, Florian Fainelli, johan,
	devicetree, linux-kernel, linux-arm-kernel

On Sat, Oct 13, 2018 at 4:23 AM Maxime Ripard <maxime.ripard@bootlin.com> wrote:
>
> On Fri, Oct 12, 2018 at 04:39:14PM +0300, Aleksandr Aleksandrov wrote:
> > Hi Andreas,
> >
> > Thanks for your feedback!
> >
> > > > + *
> > > > + * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> > > > + */
> > > > +
> > > > +/dts-v1/;
> > > > +
> > > > +#include "sun50i-h5-emlid-neutis-n5.dtsi"
> > > > +
> > > > +/ {
> > > > + model = "Emlid Neutis N5 Developer board";
> > > > + compatible = "emlid,neutis-n5-devboard",
> > > > +              "emlid,neutis-n5",
> > >
> > > You are lacking bindings definitions for these new identifiers. The
> > > vendor prefix should be patch 1/3, the SoM/board compatibles 2/3 and
> > > this .dts[i] patch 3/3, so that only vendor prefixes and compatibles
> > > that are defined and don't result in checkpatch.pl warnings get used.
> >
> > Patch 2/3:
> >
> > commit 46dcb8632b36644cb20e6b35ede12ff0088a60eb
> > Author: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> > Date:   Fri Oct 12 16:22:28 2018 +0300
> >
> >     dt-bindings: arm: sunxi: emlid,neutis-n5(-devboard)
> >
> >     sunxi: add new compatibles for Emlid Neutis Dev board and SoM module
> >
> >     Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
> >
> > diff --git a/Documentation/devicetree/bindings/arm/sunxi.txt b/Documentation/devicetree/bindings/arm/sunxi.txt
> > index e4beec3..a907e52 100644
> > --- a/Documentation/devicetree/bindings/arm/sunxi.txt
> > +++ b/Documentation/devicetree/bindings/arm/sunxi.txt
> > @@ -19,3 +19,5 @@ using one of the following compatible strings:
> >    allwinner,sun9i-a80
> >    allwinner,sun50i-a64
> >    nextthing,gr8
> > +  emlid,neutis-n5
> > +  emlid,neutis-n5-devboard
> >
> > Is this right place for the neutis compatibles?
>
> No, those are for SoCs compatible. I'm not sure we ever created a
> board compatible files.

We never did. We don't even have all vendor prefixes in, only the ones
that seem more popular, and actually have an identifiable website.

ChenYu

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

* [PATCH v5 0/2] Neutis N5 support
  2018-10-12 10:23         ` [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  2018-10-12 12:19           ` Andreas Färber
@ 2018-10-15 11:49           ` Aleksandr Aleksandrov
  2018-10-15 11:49             ` [PATCH v5 1/2] dt-bindings: vendor-prefix: new vendor - Emlid Aleksandr Aleksandrov
                               ` (2 more replies)
  1 sibling, 3 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-15 11:49 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Noralf Trønnes, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

This patch addes Neutis N5 support.
Emlid Neutis N5 is a SoM based on Allwinner H5.
The patch includes device tree file for Dev board
and dtsi file for SoM needs.

Changes from v1: separate dts file: dtsi for SoM
and motherboard dts file that inlcudes dtsi file.

Changes from v2 (5 oct 2018):
- makefile: dtb-$(CONFIG_ARCH_SUNXI) - ordered alphabetically

Changes from v3 (12 oct 2018):
- fix commit prefix for 1/2 patch
- use an SPDX header instead of the full license text
- compatible: "emlid,neutis-n5" instead of "emlid,emlid-neutis-n5"

Changes from v4 (15 oct 2018):
- fix dt-bindings commit prefix
- update license header for dts files
- make interfaces be alphabetically in devboard dts file

Aleksandr Aleksandrov (2):
  dt-bindings: vendor-prefix: new vendor - Emlid
  arm64: dts: allwinner: new board - Emlid Neutis N5

 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 149 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  61 +++++++++
 4 files changed, 212 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

-- 
2.7.4


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

* [PATCH v5 1/2] dt-bindings: vendor-prefix: new vendor - Emlid
  2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
@ 2018-10-15 11:49             ` Aleksandr Aleksandrov
  2018-10-15 11:49             ` [PATCH v5 2/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
  2018-10-16  7:21             ` [PATCH v5 0/2] Neutis N5 support Maxime Ripard
  2 siblings, 0 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-15 11:49 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Greg Kroah-Hartman, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Add vendor Emlid Ltd to vendor-prefixes.txt

Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc51..2336e44 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -112,6 +112,7 @@ edt	Emerging Display Technologies
 eeti	eGalax_eMPIA Technology Inc
 elan	Elan Microelectronic Corp.
 embest	Shenzhen Embest Technology Co., Ltd.
+emlid	Emlid, Ltd.
 emmicro	EM Microelectronic
 emtrion	emtrion GmbH
 energymicro	Silicon Laboratories (formerly Energy Micro AS)
-- 
2.7.4


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

* [PATCH v5 2/2] arm64: dts: allwinner: new board - Emlid Neutis N5
  2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
  2018-10-15 11:49             ` [PATCH v5 1/2] dt-bindings: vendor-prefix: new vendor - Emlid Aleksandr Aleksandrov
@ 2018-10-15 11:49             ` Aleksandr Aleksandrov
  2018-10-16  7:21             ` [PATCH v5 0/2] Neutis N5 support Maxime Ripard
  2 siblings, 0 replies; 22+ messages in thread
From: Aleksandr Aleksandrov @ 2018-10-15 11:49 UTC (permalink / raw)
  Cc: Aleksandr Aleksandrov, Rob Herring, Mark Rutland, Maxime Ripard,
	Chen-Yu Tsai, Andreas Färber, David Lechner, Thierry Reding,
	Noralf Trønnes, Johan Hovold, devicetree, linux-kernel,
	linux-arm-kernel

Emlid Neutis N5 is a SoM based on Allwinner H5, has a WiFi & BT
module, DDR3 RAM and eMMC.

- add neutis n5 dtsi file for SoM needs
- add neutis devboard dts file
- add neutis devboard target to dtb makefile

Signed-off-by: Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
---
 arch/arm64/boot/dts/allwinner/Makefile             |   1 +
 .../sun50i-h5-emlid-neutis-n5-devboard.dts         | 149 +++++++++++++++++++++
 .../dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi   |  61 +++++++++
 3 files changed, 211 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi

diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 9ffa7a0..eefe74c 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-libretech-all-h3-cc.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
new file mode 100644
index 0000000..85e7993
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5-devboard.dts
@@ -0,0 +1,149 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * DTS for Emlid Neutis N5 Dev board.
+ *
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ */
+
+/dts-v1/;
+
+#include "sun50i-h5-emlid-neutis-n5.dtsi"
+
+/ {
+	model = "Emlid Neutis N5 Developer board";
+	compatible = "emlid,neutis-n5-devboard",
+		     "emlid,neutis-n5",
+		     "allwinner,sun50i-h5";
+
+	aliases {
+		serial0 = &uart0;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	connector {
+		compatible = "hdmi-connector";
+		type = "a";
+
+		port {
+			hdmi_con_in: endpoint {
+				remote-endpoint = <&hdmi_out_con>;
+			};
+		};
+	};
+
+	reg_usb0_vbus: usb0-vbus {
+		compatible = "regulator-fixed";
+		regulator-name = "usb0-vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		enable-active-high;
+		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;   /* PL9 */
+		status = "okay";
+	};
+
+	vdd_cpux: gpio-regulator {
+		compatible = "regulator-gpio";
+		pinctrl-names = "default";
+		regulator-name = "vdd-cpux";
+		regulator-type = "voltage";
+		regulator-boot-on;
+		regulator-always-on;
+		regulator-min-microvolt = <1100000>;
+		regulator-max-microvolt = <1300000>;
+		regulator-ramp-delay = <50>; /* 4ms */
+		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
+		gpios-states = <0x1>;
+		states = <1100000 0x0
+			  1300000 0x1>;
+	};
+};
+
+&codec {
+	allwinner,audio-routing =
+		"Line Out", "LINEOUT",
+		"LINEIN", "Line In",
+		"MIC1", "Mic",
+		"MIC2", "Mic",
+		"Mic",  "MBIAS";
+	status = "okay";
+};
+
+&de {
+	status = "okay";
+};
+
+&ehci0 {
+	status = "okay";
+};
+
+&ehci1 {
+	status = "okay";
+};
+
+&ehci2 {
+	status = "okay";
+};
+
+&ehci3 {
+	status = "okay";
+};
+
+&emac {
+	phy-handle = <&int_mii_phy>;
+	phy-mode = "mii";
+	allwinner,leds-active-low;
+	status = "okay";
+};
+
+&hdmi {
+	status = "okay";
+};
+
+&hdmi_out {
+	hdmi_out_con: endpoint {
+		remote-endpoint = <&hdmi_con_in>;
+	};
+};
+
+&mmc0 {
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <4>;
+	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
+	status = "okay";
+};
+
+&ohci0 {
+	status = "okay";
+};
+
+&ohci1 {
+	status = "okay";
+};
+
+&ohci2 {
+	status = "okay";
+};
+
+&ohci3 {
+	status = "okay";
+};
+
+&uart0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart0_pins_a>;
+	status = "okay";
+};
+
+&usb_otg {
+	dr_mode = "otg";
+	status = "okay";
+};
+
+&usbphy {
+	usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+	usb0_vbus-supply = <&reg_usb0_vbus>;
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
new file mode 100644
index 0000000..e4d5037
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-emlid-neutis-n5.dtsi
@@ -0,0 +1,61 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * DTSI for Emlid Neutis N5 SoM.
+ *
+ * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
+ */
+
+/dts-v1/;
+
+#include "sun50i-h5.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	reg_vcc3v3: vcc3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+	};
+
+	wifi_pwrseq: wifi_pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		pinctrl-names = "default";
+		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
+		post-power-on-delay-ms = <200>;
+	};
+};
+
+&mmc1 {
+	vmmc-supply = <&reg_vcc3v3>;
+	vqmmc-supply = <&reg_vcc3v3>;
+	mmc-pwrseq = <&wifi_pwrseq>;
+	bus-width = <4>;
+	non-removable;
+	status = "okay";
+
+	brcmf: wifi@1 {
+		reg = <1>;
+		compatible = "brcm,bcm4329-fmac";
+		interrupt-parent = <&r_pio>;
+		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
+		interrupt-names = "host-wake";
+	};
+};
+
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_8bit_pins>;
+	vmmc-supply = <&reg_vcc3v3>;
+	bus-width = <8>;
+	non-removable;
+	cap-mmc-hw-reset;
+	status = "okay";
+};
+
+&uart1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+	status = "okay";
+};
-- 
2.7.4


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

* Re: [PATCH v5 0/2] Neutis N5 support
  2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
  2018-10-15 11:49             ` [PATCH v5 1/2] dt-bindings: vendor-prefix: new vendor - Emlid Aleksandr Aleksandrov
  2018-10-15 11:49             ` [PATCH v5 2/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
@ 2018-10-16  7:21             ` Maxime Ripard
  2 siblings, 0 replies; 22+ messages in thread
From: Maxime Ripard @ 2018-10-16  7:21 UTC (permalink / raw)
  To: Aleksandr Aleksandrov
  Cc: Rob Herring, Mark Rutland, Chen-Yu Tsai, Andreas Färber,
	David Lechner, Thierry Reding, Noralf Trønnes, Johan Hovold,
	devicetree, linux-kernel, linux-arm-kernel

On Mon, Oct 15, 2018 at 02:49:48PM +0300, Aleksandr Aleksandrov wrote:
> This patch addes Neutis N5 support.
> Emlid Neutis N5 is a SoM based on Allwinner H5.
> The patch includes device tree file for Dev board
> and dtsi file for SoM needs.
> 
> Changes from v1: separate dts file: dtsi for SoM
> and motherboard dts file that inlcudes dtsi file.
> 
> Changes from v2 (5 oct 2018):
> - makefile: dtb-$(CONFIG_ARCH_SUNXI) - ordered alphabetically
> 
> Changes from v3 (12 oct 2018):
> - fix commit prefix for 1/2 patch
> - use an SPDX header instead of the full license text
> - compatible: "emlid,neutis-n5" instead of "emlid,emlid-neutis-n5"
> 
> Changes from v4 (15 oct 2018):
> - fix dt-bindings commit prefix
> - update license header for dts files
> - make interfaces be alphabetically in devboard dts file

Queued both for 4.21, thanks!
Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

end of thread, other threads:[~2018-10-16  7:21 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-05 13:25 [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
2018-10-05 13:25 ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
2018-10-05 14:48   ` Maxime Ripard
2018-10-08 15:20   ` [PATCH v3] Neutis N5 support Aleksandr Aleksandrov
2018-10-08 15:20     ` [PATCH v3] arm64: new board - Emlid Neutis N5 Aleksandr Aleksandrov
2018-10-10 14:49       ` Maxime Ripard
     [not found]         ` <9398571539259289@myt4-929fb874f3f2.qloud-c.yandex.net>
2018-10-11 13:20           ` Andreas Färber
2018-10-11 16:40             ` Maxime Ripard
2018-10-12  9:35             ` Aleksandr Aleksandrov
2018-10-12  9:57               ` Maxime Ripard
2018-10-12 10:23       ` [PATCH v4 0/2] Neutis N5 support Aleksandr Aleksandrov
2018-10-12 10:23         ` [PATCH v4 1/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
2018-10-12 12:19           ` Andreas Färber
2018-10-12 13:39             ` Aleksandr Aleksandrov
2018-10-12 20:23               ` Maxime Ripard
2018-10-13  2:26                 ` Chen-Yu Tsai
2018-10-15 11:49           ` [PATCH v5 0/2] Neutis N5 support Aleksandr Aleksandrov
2018-10-15 11:49             ` [PATCH v5 1/2] dt-bindings: vendor-prefix: new vendor - Emlid Aleksandr Aleksandrov
2018-10-15 11:49             ` [PATCH v5 2/2] arm64: dts: allwinner: new board - Emlid Neutis N5 Aleksandr Aleksandrov
2018-10-16  7:21             ` [PATCH v5 0/2] Neutis N5 support Maxime Ripard
2018-10-12 10:23         ` [PATCH v4 2/2] doc: devicetree: vendor-prefixes: new vendor - Emlid Aleksandr Aleksandrov
2018-10-12 11:39           ` Rob Herring

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