* [PATCH v3 1/3] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelB
[not found] <1572438255-26107-1-git-send-email-clabbe@baylibre.com>
@ 2019-10-30 12:24 ` Corentin Labbe
2019-10-31 9:48 ` Maxime Ripard
2019-10-30 12:24 ` [PATCH v3 2/3] ARM64: dts: sun50i-h6-pine-h64: add the hdmi_connector label Corentin Labbe
2019-10-30 12:24 ` [PATCH v3 3/3] ARM64: dts: allwinner: add pineh64 model A Corentin Labbe
2 siblings, 1 reply; 4+ messages in thread
From: Corentin Labbe @ 2019-10-30 12:24 UTC (permalink / raw)
To: mark.rutland, mripard, robh+dt, wens, jernej.skrabec
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 is 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.
Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 4 ++--
arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 972b1e9ee804..9a1e4992b9e9 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -594,9 +594,9 @@ properties:
- const: pine64,pine64-plus
- const: allwinner,sun50i-a64
- - description: Pine64 PineH64
+ - description: Pine64 PineH64 model B
items:
- - const: pine64,pine-h64
+ - const: pine64,pine-h64-modelB
- const: allwinner,sun50i-h6
- description: Pine64 LTS
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 30102daf83cc..f9070d9e6c43 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
@@ -10,8 +10,8 @@
#include <dt-bindings/gpio/gpio.h>
/ {
- model = "Pine H64";
- compatible = "pine64,pine-h64", "allwinner,sun50i-h6";
+ model = "Pine H64 model B";
+ compatible = "pine64,pine-h64-modelB", "allwinner,sun50i-h6";
aliases {
ethernet0 = &emac;
--
2.23.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v3 1/3] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelB
2019-10-30 12:24 ` [PATCH v3 1/3] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelB Corentin Labbe
@ 2019-10-31 9:48 ` Maxime Ripard
0 siblings, 0 replies; 4+ messages in thread
From: Maxime Ripard @ 2019-10-31 9:48 UTC (permalink / raw)
To: Corentin Labbe
Cc: mark.rutland, robh+dt, wens, jernej.skrabec, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
On Wed, Oct 30, 2019 at 12:24:13PM +0000, Corentin Labbe wrote:
> 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 is to state that
> this DT is for model B.
No, this DT was introduced for model A, and we have to keep that. If
some model B changes crept in, that's unfortunate, but it should be
reverted, instead of changing the assumptions like this.
Maxime
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v3 2/3] ARM64: dts: sun50i-h6-pine-h64: add the hdmi_connector label
[not found] <1572438255-26107-1-git-send-email-clabbe@baylibre.com>
2019-10-30 12:24 ` [PATCH v3 1/3] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelB Corentin Labbe
@ 2019-10-30 12:24 ` Corentin Labbe
2019-10-30 12:24 ` [PATCH v3 3/3] ARM64: dts: allwinner: add pineh64 model A Corentin Labbe
2 siblings, 0 replies; 4+ messages in thread
From: Corentin Labbe @ 2019-10-30 12:24 UTC (permalink / raw)
To: mark.rutland, mripard, robh+dt, wens, jernej.skrabec
Cc: devicetree, linux-arm-kernel, linux-kernel, linux-sunxi, Corentin Labbe
For sun50i-h6-pine-h64 model A we will need to modify the connector
node, so let's add a label on it.
Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
---
arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 f9070d9e6c43..448ccbecf82b 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
@@ -22,7 +22,7 @@
stdout-path = "serial0:115200n8";
};
- connector {
+ hdmi_connector: connector {
compatible = "hdmi-connector";
type = "a";
--
2.23.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v3 3/3] ARM64: dts: allwinner: add pineh64 model A
[not found] <1572438255-26107-1-git-send-email-clabbe@baylibre.com>
2019-10-30 12:24 ` [PATCH v3 1/3] ARM64: dts: sun50i-h6-pine-h64: state that the DT supports the modelB Corentin Labbe
2019-10-30 12:24 ` [PATCH v3 2/3] ARM64: dts: sun50i-h6-pine-h64: add the hdmi_connector label Corentin Labbe
@ 2019-10-30 12:24 ` Corentin Labbe
2 siblings, 0 replies; 4+ messages in thread
From: Corentin Labbe @ 2019-10-30 12:24 UTC (permalink / raw)
To: mark.rutland, mripard, robh+dt, wens, jernej.skrabec
Cc: devicetree, linux-arm-kernel, linux-kernel, linux-sunxi, Corentin Labbe
This patch adds the model A of the PineH64.
The model A has the same size of the pine64 and has a PCIE slot.
The only devicetree difference with the pineH64 model B, 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-modelA.dts | 30 +++++++++++++++++++
3 files changed, 36 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA.dts
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 9a1e4992b9e9..0059925a3395 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -594,6 +594,11 @@ properties:
- const: pine64,pine64-plus
- const: allwinner,sun50i-a64
+ - description: Pine64 PineH64 model A
+ items:
+ - const: pine64,pine-h64-modelA
+ - const: allwinner,sun50i-h6
+
- description: Pine64 PineH64 model B
items:
- const: pine64,pine-h64-modelB
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index d2418021768b..6bda5d9961c8 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-modelA.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA.dts
new file mode 100644
index 000000000000..8c6b8978db1a
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA.dts
@@ -0,0 +1,30 @@
+// 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 A";
+ compatible = "pine64,pine-h64-modelA", "allwinner,sun50i-h6";
+
+ 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;
+ };
+
+};
+
+&hdmi_connector {
+ ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */
+};
+
+&emac {
+ phy-supply = <®_gmac_3v3>;
+};
--
2.23.0
^ permalink raw reply related [flat|nested] 4+ messages in thread