linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB
@ 2019-11-14 15:47 Corentin Labbe
  2019-11-14 15:47 ` [PATCH v5 1/2] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA Corentin Labbe
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Corentin Labbe @ 2019-11-14 15:47 UTC (permalink / raw)
  To: mark.rutland, mripard, robh+dt, wens
  Cc: devicetree, linux-arm-kernel, linux-kernel, linux-sunxi, Corentin Labbe

Hello

Pineh64 have two existing model (A and B) with some hardware difference and
so need two different DT file.
But the current situation has only one file for both.
This serie fix this situation by being more clear on which DT file is
needed for both model.

Regards

Changes since v4:
- reverted compatible change for model A
- renamed compatible of model B

Change since v3:
- state the current file is model A and add a new modelB file.

Change since v2:
- Added the HDMI connector node to model A

Changes since v1:
- Added the first patch for stating which model support the
  sun50i-h6-pine-h64.dts

Corentin Labbe (2):
  ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA
  ARM64: dts: allwinner: add pineh64 model B

 .../devicetree/bindings/arm/sunxi.yaml        |  7 ++++++-
 arch/arm64/boot/dts/allwinner/Makefile        |  1 +
 .../allwinner/sun50i-h6-pine-h64-model-b.dts  | 21 +++++++++++++++++++
 .../boot/dts/allwinner/sun50i-h6-pine-h64.dts | 17 ++++++++++++---
 4 files changed, 42 insertions(+), 4 deletions(-)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts

-- 
2.23.0


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

* [PATCH v5 1/2] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA
  2019-11-14 15:47 [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Corentin Labbe
@ 2019-11-14 15:47 ` Corentin Labbe
  2019-11-14 15:47 ` [PATCH v5 2/2] ARM64: dts: allwinner: add pineh64 model B Corentin Labbe
  2019-11-14 19:27 ` [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Maxime Ripard
  2 siblings, 0 replies; 4+ messages in thread
From: Corentin Labbe @ 2019-11-14 15:47 UTC (permalink / raw)
  To: mark.rutland, mripard, robh+dt, wens
  Cc: devicetree, linux-arm-kernel, linux-kernel, linux-sunxi, Corentin Labbe

The current sun50i-h6-pine-h64 DT does not specify which model (A or B)
it supports.
When this file was created, only modelA was existing, but now both model
exists and with the time, this DT drifted to support the model B since it is
the most common one.
Furtheremore, some part of the model A does not work with it like ethernet and
HDMI connector (as confirmed by Jernej on IRC).

So it is time to settle the issue, and the easiest way was to state that
this DT is for model B.
Easiest since only a small name changes is required.
Doing the opposite (stating this file is for model A) will add changes (for
ethernet and HDMI) and so, will break too many setup.

But as asked by the maintainer this patch state this file is for model A.
In the process this patch adds the missing compoments to made it work on
model A.

Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
---
 .../devicetree/bindings/arm/sunxi.yaml          |  2 +-
 .../boot/dts/allwinner/sun50i-h6-pine-h64.dts   | 17 ++++++++++++++---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 8a1e38a1d7ab..a02baa374adc 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -599,7 +599,7 @@ properties:
           - const: pine64,pine64-plus
           - const: allwinner,sun50i-a64
 
-      - description: Pine64 PineH64
+      - description: Pine64 PineH64 model A
         items:
           - const: pine64,pine-h64
           - const: allwinner,sun50i-h6
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
index 74899ede00fb..4fcda71f1688 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
@@ -10,7 +10,7 @@
 #include <dt-bindings/gpio/gpio.h>
 
 / {
-	model = "Pine H64";
+	model = "Pine H64 model A";
 	compatible = "pine64,pine-h64", "allwinner,sun50i-h6";
 
 	aliases {
@@ -22,9 +22,10 @@
 		stdout-path = "serial0:115200n8";
 	};
 
-	connector {
+	hdmi_connector: connector {
 		compatible = "hdmi-connector";
 		type = "a";
+		ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */
 
 		port {
 			hdmi_con_in: endpoint {
@@ -52,6 +53,16 @@
 		};
 	};
 
+	reg_gmac_3v3: gmac-3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc-gmac-3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		startup-delay-us = <100000>;
+		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
 	reg_usb_vbus: vbus {
 		compatible = "regulator-fixed";
 		regulator-name = "usb-vbus";
@@ -68,7 +79,7 @@
 	pinctrl-0 = <&ext_rgmii_pins>;
 	phy-mode = "rgmii";
 	phy-handle = <&ext_rgmii_phy>;
-	phy-supply = <&reg_aldo2>;
+	phy-supply = <&reg_gmac_3v3>;
 	allwinner,rx-delay-ps = <200>;
 	allwinner,tx-delay-ps = <200>;
 	status = "okay";
-- 
2.23.0


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

* [PATCH v5 2/2] ARM64: dts: allwinner: add pineh64 model B
  2019-11-14 15:47 [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Corentin Labbe
  2019-11-14 15:47 ` [PATCH v5 1/2] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA Corentin Labbe
@ 2019-11-14 15:47 ` Corentin Labbe
  2019-11-14 19:27 ` [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Maxime Ripard
  2 siblings, 0 replies; 4+ messages in thread
From: Corentin Labbe @ 2019-11-14 15:47 UTC (permalink / raw)
  To: mark.rutland, mripard, robh+dt, wens
  Cc: devicetree, linux-arm-kernel, linux-kernel, linux-sunxi, Corentin Labbe

This patch adds the model B of the PineH64.
The model B is smaller than the pine64 model A and has no PCIE slot.

The only devicetree difference with the pineH64 model A, is the PHY
regulator and the HDMI connector node.

Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
---
 .../devicetree/bindings/arm/sunxi.yaml        |  5 +++++
 arch/arm64/boot/dts/allwinner/Makefile        |  1 +
 .../allwinner/sun50i-h6-pine-h64-model-b.dts  | 21 +++++++++++++++++++
 3 files changed, 27 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index a02baa374adc..3e3e74cfa3c3 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -604,6 +604,11 @@ properties:
           - const: pine64,pine-h64
           - const: allwinner,sun50i-h6
 
+      - description: Pine64 PineH64 model B
+        items:
+          - const: pine64,pine-h64-model-b
+          - const: allwinner,sun50i-h6
+
       - description: Pine64 LTS
         items:
           - const: pine64,pine64-lts
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index d2418021768b..62bc43f187bf 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -26,4 +26,5 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts
new file mode 100644
index 000000000000..f4c8966a6497
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts
@@ -0,0 +1,21 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2019 Corentin LABBE <clabbe@baylibre.com>
+ */
+
+#include "sun50i-h6-pine-h64.dts"
+
+/ {
+	model = "Pine H64 model B";
+	compatible = "pine64,pine-h64-model-b", "allwinner,sun50i-h6";
+
+	/delete-node/ reg_gmac_3v3;
+};
+
+&hdmi_connector {
+	/delete-property/ ddc-en-gpios;
+};
+
+&emac {
+	phy-supply = <&reg_aldo2>;
+};
-- 
2.23.0


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

* Re: [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB
  2019-11-14 15:47 [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Corentin Labbe
  2019-11-14 15:47 ` [PATCH v5 1/2] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA Corentin Labbe
  2019-11-14 15:47 ` [PATCH v5 2/2] ARM64: dts: allwinner: add pineh64 model B Corentin Labbe
@ 2019-11-14 19:27 ` Maxime Ripard
  2 siblings, 0 replies; 4+ messages in thread
From: Maxime Ripard @ 2019-11-14 19:27 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: mark.rutland, robh+dt, wens, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

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

Hi,

On Thu, Nov 14, 2019 at 03:47:31PM +0000, Corentin Labbe wrote:
> Hello
>
> Pineh64 have two existing model (A and B) with some hardware difference and
> so need two different DT file.
> But the current situation has only one file for both.
> This serie fix this situation by being more clear on which DT file is
> needed for both model.

sorry I didn't tell you on v1, the prefix for arm64 is lowercase
(unlike arm where it's uppercase).

I've fixed it while applying, thanks!
Maxime

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

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

end of thread, other threads:[~2019-11-14 19:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-14 15:47 [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Corentin Labbe
2019-11-14 15:47 ` [PATCH v5 1/2] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelA Corentin Labbe
2019-11-14 15:47 ` [PATCH v5 2/2] ARM64: dts: allwinner: add pineh64 model B Corentin Labbe
2019-11-14 19:27 ` [PATCH v5 0/2] ARM64: dts: allwinner: Add devicetree for pineH64 modelB Maxime Ripard

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