[2/2] arm64: allwinner: a64: add device tree for SOPINE on Pine64 Clusterboard
Commit Message
The Pine64 SOPINE Clusterboard is a mini-ITX sized board capable
of hosting up-to 7 SOPINE modules. It is largely compatible
with the SOPINE baseboard but it omits most of the in- and
output interfaces. Also The Clusterboard needs a tx delay
of 500ps for ethernet to work.
Add a device tree for SOPINE on the Pine64 Clusterboard.
Signed-off-by: Renze Nicolai <renze@rnplus.nl>
---
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../allwinner/sun50i-a64-sopine-clusterboard.dts | 16 ++++++++++++++++
2 files changed, 17 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-
clusterboard.dts
Comments
On Sat, 19 Nov 2022 13:31:59 +0100
Renze Nicolai <renze@rnplus.nl> wrote:
> The Pine64 SOPINE Clusterboard is a mini-ITX sized board capable
> of hosting up-to 7 SOPINE modules. It is largely compatible
> with the SOPINE baseboard but it omits most of the in- and
> output interfaces. Also The Clusterboard needs a tx delay
> of 500ps for ethernet to work.
>
> Add a device tree for SOPINE on the Pine64 Clusterboard.
>
> Signed-off-by: Renze Nicolai <renze@rnplus.nl>
> ---
> arch/arm64/boot/dts/allwinner/Makefile | 1 +
> .../allwinner/sun50i-a64-sopine-clusterboard.dts | 16 ++++++++++++++++
> 2 files changed, 17 insertions(+)
> create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-
> clusterboard.dts
>
> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/
> allwinner/Makefile
> index 6a96494a2e0a..15b011d1aaea 100644
> --- a/arch/arm64/boot/dts/allwinner/Makefile
> +++ b/arch/arm64/boot/dts/allwinner/Makefile
> @@ -15,6 +15,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinephone-1.2.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab-early-adopter.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-clusterboard.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a100-allwinner-perf1.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-clusterboard.dts
> b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-clusterboard.dts
> new file mode 100644
> index 000000000000..f75325d43d76
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-clusterboard.dts
> @@ -0,0 +1,16 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +// Copyright (c) 2022 Renze Nicolai <renze@rnplus.nl>
> +
> +/dts-v1/;
Since you include a complete .dts (not a .dtsi) below, you don't need
the dts-v1 tag, as this is provided by the baseboard.dts. That's the
same situation as with the Pine64 LTS.
Cheers,
Andre
> +
> +#include "sun50i-a64-sopine-baseboard.dts"
> +
> +/ {
> + model = "SOPINE with clusterboard";
> + compatible = "pine64,sopine-clusterboard", "pine64,sopine",
> + "allwinner,sun50i-a64";
> +};
> +
> +&emac {
> + allwinner,tx-delay-ps = <500>;
> +};
> +&emac {
> + allwinner,tx-delay-ps = <500>;
> +};
Is this direct MAC to MAC without a PHY in the middle? And RGMII?
500ps seems odd. It is normally 1000ps. And you need to specify a
delay for both Rx and Tx. I could understand
&emac {
allwinner,tx-delay-ps = <500>;
allwinner,rx-delay-ps = <500>;
};
then each end adds 1/2 the delay on both Rx and Tx.
Andrew
allwinner/Makefile
@@ -15,6 +15,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinephone-1.2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab-early-adopter.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-clusterboard.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a100-allwinner-perf1.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb
b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-clusterboard.dts
new file mode 100644
@@ -0,0 +1,16 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+// Copyright (c) 2022 Renze Nicolai <renze@rnplus.nl>
+
+/dts-v1/;
+
+#include "sun50i-a64-sopine-baseboard.dts"
+
+/ {
+ model = "SOPINE with clusterboard";
+ compatible = "pine64,sopine-clusterboard", "pine64,sopine",
+ "allwinner,sun50i-a64";
+};
+
+&emac {
+ allwinner,tx-delay-ps = <500>;
+};