2020-10-29 08:55:31

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH 0/5] Elimo Impetus and Initium support

The Elimo Impetus is an Open Source Hardware System-on-Module based on the
SoChip S3 SoC.
It is meant for integration into carrier boards or, more generally, larger
designs, and uses an M2 connector to facilitate that.
The Elimo Initium is a carrier board for the Impetus, together they provide a
fully open source SBC.

This patch set adds support for both. It it based off the sunxi/dt-for-5.11
branch of the https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git
tree.

Matteo Scordino (5):
dt-bindings: vendors: add Elimo Engineering vendor prefix
ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi
ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM
dt-bindings: arm: sunxi: add Elimo bindings
ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

.../devicetree/bindings/arm/sunxi.yaml | 10 ++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 27 ++++++++++
arch/arm/boot/dts/sun8i-v3.dtsi | 5 ++
6 files changed, 96 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

--
2.20.1


2020-10-29 08:56:31

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH 1/5] dt-bindings: vendors: add Elimo Engineering vendor prefix

Add elimo as vendor prefix for dt bindings, since we are adding a dtsi
for a SoM and a dts for an SBC

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 2735be1a8470..b877a3516277 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -319,6 +319,8 @@ patternProperties:
description: Elgin S/A.
"^elida,.*":
description: Shenzhen Elida Technology Co., Ltd.
+ "^elimo,.*":
+ description: Elimo Engineering Ltd.
"^embest,.*":
description: Shenzhen Embest Technology Co., Ltd.
"^emlid,.*":
--
2.20.1

2020-10-29 08:57:11

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH 5/5] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

The Elimo Engineering Initium is an Open Source Hardware Single Board
Computer based on the Elimo Impetus SoM.

It is meant as the first development platform for the Impetus, providing
convenient access to the peripherals on the Impetus.

It provides:
USB-C power input
UART-to-USB bridge on the USB-C connector, connected to UART1
USB-A connector for USB2.0 (Host, Device, OTG)
Audio Line In/Out
Pin header to access all signals on the M2 connector of the SoM

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 27 ++++++++++++++++++++
2 files changed, 28 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4f0adfead547..dcfb8d39c267 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-r40-bananapi-m2-ultra.dtb \
sun8i-s3-lichee-zero-plus.dtb \
sun8i-s3-pinecube.dtb \
+ sun8i-s3-elimo-initium.dtb \
sun8i-t3-cqa3t-bv3.dtb \
sun8i-v3s-licheepi-zero.dtb \
sun8i-v3s-licheepi-zero-dock.dtb \
diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
new file mode 100644
index 000000000000..5ddd4dbd636c
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
@@ -0,0 +1,27 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-s3-elimo-impetus.dtsi"
+
+/ {
+ model = "Elimo Initium";
+ compatible = "elimo,initium", "elimo,impetus", "allwinner,sun8i-s3";
+
+ aliases {
+ serial0 = &uart0;
+ serial1 = &uart1;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&emac {
+ phy-handle = <&int_mii_phy>;
+ phy-mode = "mii";
+ status = "okay";
+};
--
2.20.1

2020-10-29 08:57:11

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH 4/5] dt-bindings: arm: sunxi: add Elimo bindings

Document board compatible names for Elimo Engineering Impetus and Initium

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 0f23133672a3..55405809ec91 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -898,3 +898,13 @@ properties:
items:
- const: xunlong,orangepi-zero-plus2-h3
- const: allwinner,sun8i-h3
+
+ - description: Elimo Engineering Impetus SoM
+ items:
+ - const: elimo,impetus
+ - const: allwinner,sun8i-s3
+
+ - description: Elimo Engineering Initium
+ items:
+ - const: elimo,initium
+ - const: allwinner,sun8i-s3
--
2.20.1

2020-10-29 08:57:22

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH 2/5] ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi

The Allwinner V3 and S3 can use PG6/7 as RX/TX for UART1. Since no other
functions are assigned to those pins, they are a convenient choice for
a debugging or application UART.
This is specific to V3/S3 as the V3s's non-BGA package did not have
those pins.

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-v3.dtsi | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/sun8i-v3.dtsi b/arch/arm/boot/dts/sun8i-v3.dtsi
index ca4672ed2e02..c279e13583ba 100644
--- a/arch/arm/boot/dts/sun8i-v3.dtsi
+++ b/arch/arm/boot/dts/sun8i-v3.dtsi
@@ -24,4 +24,9 @@

&pio {
compatible = "allwinner,sun8i-v3-pinctrl";
+
+ uart1_pg_pins: uart1-pg-pins {
+ pins = "PG6", "PG7";
+ function = "uart1";
+ };
};
--
2.20.1

2020-10-29 10:08:21

by Paul Kocialkowski

[permalink] [raw]
Subject: Re: [PATCH 2/5] ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi

Hi,

On Thu 29 Oct 20, 02:19, Matteo Scordino wrote:
> The Allwinner V3 and S3 can use PG6/7 as RX/TX for UART1. Since no other
> functions are assigned to those pins, they are a convenient choice for
> a debugging or application UART.
> This is specific to V3/S3 as the V3s's non-BGA package did not have
> those pins.

Looks good to me, I've had to make the same change when bringing up both
another S3 and another V3 board.

Reviewed-by: Paul Kocialkowski <[email protected]>

Cheers,

Paul

> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/sun8i-v3.dtsi | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/arch/arm/boot/dts/sun8i-v3.dtsi b/arch/arm/boot/dts/sun8i-v3.dtsi
> index ca4672ed2e02..c279e13583ba 100644
> --- a/arch/arm/boot/dts/sun8i-v3.dtsi
> +++ b/arch/arm/boot/dts/sun8i-v3.dtsi
> @@ -24,4 +24,9 @@
>
> &pio {
> compatible = "allwinner,sun8i-v3-pinctrl";
> +
> + uart1_pg_pins: uart1-pg-pins {
> + pins = "PG6", "PG7";
> + function = "uart1";
> + };
> };
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com


Attachments:
(No filename) (1.36 kB)
signature.asc (499.00 B)
Download all attachments

2020-10-29 10:08:53

by Paul Kocialkowski

[permalink] [raw]
Subject: Re: [PATCH 1/5] dt-bindings: vendors: add Elimo Engineering vendor prefix

Hi,

On Thu 29 Oct 20, 02:19, Matteo Scordino wrote:
> Add elimo as vendor prefix for dt bindings, since we are adding a dtsi
> for a SoM and a dts for an SBC

LGTM.

Reviewed-by: Paul Kocialkowski <[email protected]>

Cheers,

Paul

> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> index 2735be1a8470..b877a3516277 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> @@ -319,6 +319,8 @@ patternProperties:
> description: Elgin S/A.
> "^elida,.*":
> description: Shenzhen Elida Technology Co., Ltd.
> + "^elimo,.*":
> + description: Elimo Engineering Ltd.
> "^embest,.*":
> description: Shenzhen Embest Technology Co., Ltd.
> "^emlid,.*":
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com


Attachments:
(No filename) (1.32 kB)
signature.asc (499.00 B)
Download all attachments

2020-10-29 10:13:19

by Paul Kocialkowski

[permalink] [raw]
Subject: Re: [PATCH 5/5] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

Hi,

On Thu 29 Oct 20, 02:20, Matteo Scordino wrote:
> The Elimo Engineering Initium is an Open Source Hardware Single Board
> Computer based on the Elimo Impetus SoM.
>
> It is meant as the first development platform for the Impetus, providing
> convenient access to the peripherals on the Impetus.
>
> It provides:
> USB-C power input
> UART-to-USB bridge on the USB-C connector, connected to UART1
> USB-A connector for USB2.0 (Host, Device, OTG)
> Audio Line In/Out
> Pin header to access all signals on the M2 connector of the SoM
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 27 ++++++++++++++++++++
> 2 files changed, 28 insertions(+)
> create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 4f0adfead547..dcfb8d39c267 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> sun8i-r40-bananapi-m2-ultra.dtb \
> sun8i-s3-lichee-zero-plus.dtb \
> sun8i-s3-pinecube.dtb \
> + sun8i-s3-elimo-initium.dtb \
> sun8i-t3-cqa3t-bv3.dtb \
> sun8i-v3s-licheepi-zero.dtb \
> sun8i-v3s-licheepi-zero-dock.dtb \
> diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> new file mode 100644
> index 000000000000..5ddd4dbd636c
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> @@ -0,0 +1,27 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> + */
> +
> +/dts-v1/;
> +#include "sun8i-s3-elimo-impetus.dtsi"
> +
> +/ {
> + model = "Elimo Initium";
> + compatible = "elimo,initium", "elimo,impetus", "allwinner,sun8i-s3";

Same comment as before about having an extra "allwinner,sun8i-v3" here.

Cheers,

Paul

> +
> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart1;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +};
> +
> +&emac {
> + phy-handle = <&int_mii_phy>;
> + phy-mode = "mii";
> + status = "okay";
> +};
> --
> 2.20.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com


Attachments:
(No filename) (2.51 kB)
signature.asc (499.00 B)
Download all attachments

2020-10-29 10:15:45

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH 4/5] dt-bindings: arm: sunxi: add Elimo bindings

Hi,

On Thu, Oct 29, 2020 at 02:19:59AM +0000, Matteo Scordino wrote:
> Document board compatible names for Elimo Engineering Impetus and Initium
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> index 0f23133672a3..55405809ec91 100644
> --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> @@ -898,3 +898,13 @@ properties:
> items:
> - const: xunlong,orangepi-zero-plus2-h3
> - const: allwinner,sun8i-h3
> +
> + - description: Elimo Engineering Impetus SoM
> + items:
> + - const: elimo,impetus
> + - const: allwinner,sun8i-s3
> +
> + - description: Elimo Engineering Initium
> + items:
> + - const: elimo,initium
> + - const: allwinner,sun8i-s3

This should be ordered alphabetically, and most importantly, must match
the ones you have in the DT.

Here, we have kind of a mess already: the Lichee Zero+ uses
,sipeed,lichee-zero-plus, sochip,s3, allwinner,sun8i-v3, while the
pinecube uses pine64,pinecube, allwinner,sun8i-s3

IIRC the S3 and V3 are pretty much the same SoCs, so the first one seems
to make more sense to me, but then we should fix the pinecube.

Maxime


Attachments:
(No filename) (1.47 kB)
signature.asc (235.00 B)
Download all attachments

2020-10-29 10:27:57

by Icenowy Zheng

[permalink] [raw]
Subject: Re: [PATCH 4/5] dt-bindings: arm: sunxi: add Elimo bindings



于 2020年10月29日 GMT+08:00 下午6:13:04, Maxime Ripard <[email protected]> 写到:
>Hi,
>
>On Thu, Oct 29, 2020 at 02:19:59AM +0000, Matteo Scordino wrote:
>> Document board compatible names for Elimo Engineering Impetus and
>Initium
>>
>> Signed-off-by: Matteo Scordino <[email protected]>
>> ---
>> Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
>> 1 file changed, 10 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml
>b/Documentation/devicetree/bindings/arm/sunxi.yaml
>> index 0f23133672a3..55405809ec91 100644
>> --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
>> +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
>> @@ -898,3 +898,13 @@ properties:
>> items:
>> - const: xunlong,orangepi-zero-plus2-h3
>> - const: allwinner,sun8i-h3
>> +
>> + - description: Elimo Engineering Impetus SoM
>> + items:
>> + - const: elimo,impetus
>> + - const: allwinner,sun8i-s3
>> +
>> + - description: Elimo Engineering Initium
>> + items:
>> + - const: elimo,initium
>> + - const: allwinner,sun8i-s3
>
>This should be ordered alphabetically, and most importantly, must match
>the ones you have in the DT.
>
>Here, we have kind of a mess already: the Lichee Zero+ uses
>,sipeed,lichee-zero-plus, sochip,s3, allwinner,sun8i-v3, while the
>pinecube uses pine64,pinecube, allwinner,sun8i-s3
>
>IIRC the S3 and V3 are pretty much the same SoCs, so the first one
>seems
>to make more sense to me, but then we should fix the pinecube.

I agree with this.

PineCube is originally designed for S3L (which is branded under Allwinner)
but switch to S3 finally, so I may made error when adapting.

>
>Maxime

2020-10-30 00:27:01

by Matteo Scordino

[permalink] [raw]
Subject: Re: [PATCH 4/5] dt-bindings: arm: sunxi: add Elimo bindings

Hello,

thank you both for reviewing.

I didn't realise the file was kept in alphabetical order, I will fix that.
And I agree that board/som + "sochip,s3, allwinner,sun8i-v3" makes sense,
I will resubmit the patch with those (and sync them with the dt bindings file).

Should I submit a patch to update the pinecube to use "sochip,s3,
allwinner,sun8i-v3", too?

--
Matteo Scordino

On Thu, 2020-10-29 at 18:24 +0800, Icenowy Zheng wrote:
>
> 于 2020年10月29日 GMT+08:00 下午6:13:04, Maxime Ripard <[email protected]> 写到:
> > Hi,
> >
> > On Thu, Oct 29, 2020 at 02:19:59AM +0000, Matteo Scordino wrote:
> > > Document board compatible names for Elimo Engineering Impetus and
> > Initium
> > > Signed-off-by: Matteo Scordino <[email protected]>
> > > ---
> > > Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
> > > 1 file changed, 10 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml
> > b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > index 0f23133672a3..55405809ec91 100644
> > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > @@ -898,3 +898,13 @@ properties:
> > > items:
> > > - const: xunlong,orangepi-zero-plus2-h3
> > > - const: allwinner,sun8i-h3
> > > +
> > > + - description: Elimo Engineering Impetus SoM
> > > + items:
> > > + - const: elimo,impetus
> > > + - const: allwinner,sun8i-s3
> > > +
> > > + - description: Elimo Engineering Initium
> > > + items:
> > > + - const: elimo,initium
> > > + - const: allwinner,sun8i-s3
> >
> > This should be ordered alphabetically, and most importantly, must match
> > the ones you have in the DT.
> >
> > Here, we have kind of a mess already: the Lichee Zero+ uses
> > ,sipeed,lichee-zero-plus, sochip,s3, allwinner,sun8i-v3, while the
> > pinecube uses pine64,pinecube, allwinner,sun8i-s3
> >
> > IIRC the S3 and V3 are pretty much the same SoCs, so the first one
> > seems
> > to make more sense to me, but then we should fix the pinecube.
>
> I agree with this.
>
> PineCube is originally designed for S3L (which is branded under Allwinner)
> but switch to S3 finally, so I may made error when adapting.
>
> > Maxime


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part

2020-10-30 00:29:03

by Matteo Scordino

[permalink] [raw]
Subject: Re: [PATCH 5/5] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC


On Thu, 2020-10-29 at 11:10 +0100, Paul Kocialkowski wrote:
> Hi,
>
> On Thu 29 Oct 20, 02:20, Matteo Scordino wrote:
> > The Elimo Engineering Initium is an Open Source Hardware Single Board
> > Computer based on the Elimo Impetus SoM.
> >
> > It is meant as the first development platform for the Impetus, providing
> > convenient access to the peripherals on the Impetus.
> >
> > It provides:
> > USB-C power input
> > UART-to-USB bridge on the USB-C connector, connected to UART1
> > USB-A connector for USB2.0 (Host, Device, OTG)
> > Audio Line In/Out
> > Pin header to access all signals on the M2 connector of the SoM
> >
> > Signed-off-by: Matteo Scordino <[email protected]>
> > ---
> > arch/arm/boot/dts/Makefile | 1 +
> > arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 27 ++++++++++++++++++++
> > 2 files changed, 28 insertions(+)
> > create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> >
> > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> > index 4f0adfead547..dcfb8d39c267 100644
> > --- a/arch/arm/boot/dts/Makefile
> > +++ b/arch/arm/boot/dts/Makefile
> > @@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> > sun8i-r40-bananapi-m2-ultra.dtb \
> > sun8i-s3-lichee-zero-plus.dtb \
> > sun8i-s3-pinecube.dtb \
> > + sun8i-s3-elimo-initium.dtb \
> > sun8i-t3-cqa3t-bv3.dtb \
> > sun8i-v3s-licheepi-zero.dtb \
> > sun8i-v3s-licheepi-zero-dock.dtb \
> > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > new file mode 100644
> > index 000000000000..5ddd4dbd636c
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > @@ -0,0 +1,27 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > + */
> > +
> > +/dts-v1/;
> > +#include "sun8i-s3-elimo-impetus.dtsi"
> > +
> > +/ {
> > + model = "Elimo Initium";
> > + compatible = "elimo,initium", "elimo,impetus", "allwinner,sun8i-s3";
>
> Same comment as before about having an extra "allwinner,sun8i-v3" here.
>
> Cheers,
>
> Paul

As above, I will apply and resubmit

>
> > +
> > + aliases {
> > + serial0 = &uart0;
> > + serial1 = &uart1;
> > + };
> > +
> > + chosen {
> > + stdout-path = "serial0:115200n8";
> > + };
> > +};
> > +
> > +&emac {
> > + phy-handle = <&int_mii_phy>;
> > + phy-mode = "mii";
> > + status = "okay";
> > +};
> > --
> > 2.20.1
> >
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > [email protected]
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part

2020-10-30 10:37:43

by Icenowy Zheng

[permalink] [raw]
Subject: Re: [PATCH 4/5] dt-bindings: arm: sunxi: add Elimo bindings



于 2020年10月30日 GMT+08:00 上午8:24:04, Matteo Scordino <[email protected]> 写到:
>Hello,
>
>thank you both for reviewing.
>
>I didn't realise the file was kept in alphabetical order, I will fix
>that.
>And I agree that board/som + "sochip,s3, allwinner,sun8i-v3" makes
>sense,
>I will resubmit the patch with those (and sync them with the dt
>bindings file).
>
>Should I submit a patch to update the pinecube to use "sochip,s3,
>allwinner,sun8i-v3", too?

If possible, thanks.

2020-10-30 23:45:38

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 1/6] dt-bindings: vendors: add Elimo Engineering vendor prefix

Add elimo as vendor prefix for dt bindings, since we are adding a dtsi
for a SoM and a dts for an SBC

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 2735be1a8470..b877a3516277 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -319,6 +319,8 @@ patternProperties:
description: Elgin S/A.
"^elida,.*":
description: Shenzhen Elida Technology Co., Ltd.
+ "^elimo,.*":
+ description: Elimo Engineering Ltd.
"^embest,.*":
description: Shenzhen Embest Technology Co., Ltd.
"^emlid,.*":
--
2.20.1

2020-10-30 23:45:41

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 5/6] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

The Elimo Engineering Initium is an Open Source Hardware Single Board
Computer based on the Elimo Impetus SoM.

It is meant as the first development platform for the Impetus, providing
convenient access to the peripherals on the Impetus.

It provides:
USB-C power input
UART-to-USB bridge on the USB-C connector, connected to UART1
USB-A connector for USB2.0 (Host, Device, OTG)
Audio Line In/Out
Pin header to access all signals on the M2 connector of the SoM

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 28 ++++++++++++++++++++
2 files changed, 29 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4f0adfead547..dcfb8d39c267 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-r40-bananapi-m2-ultra.dtb \
sun8i-s3-lichee-zero-plus.dtb \
sun8i-s3-pinecube.dtb \
+ sun8i-s3-elimo-initium.dtb \
sun8i-t3-cqa3t-bv3.dtb \
sun8i-v3s-licheepi-zero.dtb \
sun8i-v3s-licheepi-zero-dock.dtb \
diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
new file mode 100644
index 000000000000..7677ddc07bf9
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
@@ -0,0 +1,28 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-s3-elimo-impetus.dtsi"
+
+/ {
+ model = "Elimo Initium";
+ compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
+ "allwinner,sun8i-v3";
+
+ aliases {
+ serial0 = &uart0;
+ serial1 = &uart1;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&emac {
+ phy-handle = <&int_mii_phy>;
+ phy-mode = "mii";
+ status = "okay";
+};
--
2.20.1

2020-10-30 23:45:44

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 6/6] ARM: dts: sunxi: align pinecube compatible property to other S3 boards

The compatible string in the Pine64 Pincube dts diverges from the ones
used in other S3 based boards, like the LicheePi and the Elimo Impetus
and Initium. Discussion on LKML decided the PineCube should align to the
others.

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-s3-pinecube.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/sun8i-s3-pinecube.dts b/arch/arm/boot/dts/sun8i-s3-pinecube.dts
index 9bab6b7f4014..4aa0ee897a0a 100644
--- a/arch/arm/boot/dts/sun8i-s3-pinecube.dts
+++ b/arch/arm/boot/dts/sun8i-s3-pinecube.dts
@@ -10,7 +10,7 @@

/ {
model = "PineCube IP Camera";
- compatible = "pine64,pinecube", "allwinner,sun8i-s3";
+ compatible = "pine64,pinecube", "sochip,s3", "allwinner,sun8i-v3";

aliases {
serial0 = &uart2;
--
2.20.1

2020-10-30 23:46:29

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 2/6] ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi

The Allwinner V3 and S3 can use PG6/7 as RX/TX for UART1. Since no other
functions are assigned to those pins, they are a convenient choice for
a debugging or application UART.
This is specific to V3/S3 as the V3s's non-BGA package did not have
those pins.

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-v3.dtsi | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/sun8i-v3.dtsi b/arch/arm/boot/dts/sun8i-v3.dtsi
index ca4672ed2e02..c279e13583ba 100644
--- a/arch/arm/boot/dts/sun8i-v3.dtsi
+++ b/arch/arm/boot/dts/sun8i-v3.dtsi
@@ -24,4 +24,9 @@

&pio {
compatible = "allwinner,sun8i-v3-pinctrl";
+
+ uart1_pg_pins: uart1-pg-pins {
+ pins = "PG6", "PG7";
+ function = "uart1";
+ };
};
--
2.20.1

2020-10-30 23:46:32

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 3/6] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
based on the SoChip S3 SoC.

It is meant for integration into carrier boards or, more generally,
larger designs, and uses an M2 connector to facilitate that.

Interfaces on the M.2/NGFF 42mm connector:
WiFi IEEE 802. 11abgn (on-module Realtek)
Bluetooth 4.2/BLE (on-module Realtek)
RGB LCD Interface (on-module connector)
MIPI Camera Interface (on-module connector)
IEEE 802. 3u Ethernet MAC (external connecto)
USB2.0 (Host, Device, OTG) (external connector)
Audio Line In/Out (external connector)

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi

diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
new file mode 100644
index 000000000000..f219188fc9ba
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
@@ -0,0 +1,51 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-v3.dtsi"
+#include "sunxi-common-regulators.dtsi"
+
+/ {
+ model = "Elimo Impetus SoM";
+ compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
+
+ aliases {
+ serial0 = &uart0;
+ serial1 = &uart1;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&mmc0 {
+ broken-cd;
+ bus-width = <4>;
+ vmmc-supply = <&reg_vcc3v3>;
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-0 = <&uart0_pb_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&uart1 {
+ pinctrl-0 = <&uart1_pg_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&usb_otg {
+ dr_mode = "otg";
+ status = "okay";
+};
+
+&usbphy {
+ usb0_id_det-gpio = <&pio 5 6 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
--
2.20.1

2020-10-30 23:48:34

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 4/6] dt-bindings: arm: sunxi: add Elimo bindings

Document board compatible names for Elimo Engineering Impetus and Initium

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 13 +++++++++++++
1 file changed, 13 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 0f23133672a3..ef2ce3bd2bed 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -201,6 +201,19 @@ properties:
- const: dserve,dsrv9703c
- const: allwinner,sun4i-a10

+ - description: Elimo Engineering Impetus SoM
+ items:
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
+ - description: Elimo Engineering Initium
+ items:
+ - const: elimo,initium
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
- description: Empire Electronix D709 Tablet
items:
- const: empire-electronix,d709
--
2.20.1

2020-10-30 23:48:40

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v2 0/6] Elimo Impetus and Initium support - rework

Hi,

I applied the suggestions from the discussion that stemmed from V1,
i.e.:

- using "sochip,s3", "allwinner,sun8i-v3" in the compatible string
- add a patch to do the same for the Pine64 PineCube
- alphabetic order in the dt-binding file
- match the dt-binding file with the actual dts files

Matteo Scordino (6):
dt-bindings: vendors: add Elimo Engineering vendor prefix
ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi
ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM
dt-bindings: arm: sunxi: add Elimo bindings
ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC
ARM: dts: sunxi: align pinecube compatible property to other S3 boards

.../devicetree/bindings/arm/sunxi.yaml | 13 +++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 28 ++++++++++
arch/arm/boot/dts/sun8i-s3-pinecube.dts | 2 +-
arch/arm/boot/dts/sun8i-v3.dtsi | 5 ++
7 files changed, 101 insertions(+), 1 deletion(-)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

--
2.20.1

2020-11-02 10:05:06

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 1/6] dt-bindings: vendors: add Elimo Engineering vendor prefix

On Fri, Oct 30, 2020 at 11:43:20PM +0000, Matteo Scordino wrote:
> Add elimo as vendor prefix for dt bindings, since we are adding a dtsi
> for a SoM and a dts for an SBC
>
> Signed-off-by: Matteo Scordino <[email protected]>

Applied, thanks!
Maxime


Attachments:
(No filename) (268.00 B)
signature.asc (235.00 B)
Download all attachments

2020-11-02 10:06:39

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 2/6] ARM: dts: sun8i: V3/S3: Add UART1 pin definitions to the V3/S3 dtsi

On Fri, Oct 30, 2020 at 11:43:21PM +0000, Matteo Scordino wrote:
> The Allwinner V3 and S3 can use PG6/7 as RX/TX for UART1. Since no other
> functions are assigned to those pins, they are a convenient choice for
> a debugging or application UART.
> This is specific to V3/S3 as the V3s's non-BGA package did not have
> those pins.
>
> Signed-off-by: Matteo Scordino <[email protected]>

Applied, thanks

Maxime


Attachments:
(No filename) (433.00 B)
signature.asc (235.00 B)
Download all attachments

2020-11-02 10:09:40

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 6/6] ARM: dts: sunxi: align pinecube compatible property to other S3 boards

On Fri, Oct 30, 2020 at 11:43:25PM +0000, Matteo Scordino wrote:
> The compatible string in the Pine64 Pincube dts diverges from the ones
> used in other S3 based boards, like the LicheePi and the Elimo Impetus
> and Initium. Discussion on LKML decided the PineCube should align to the
> others.
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/sun8i-s3-pinecube.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/sun8i-s3-pinecube.dts b/arch/arm/boot/dts/sun8i-s3-pinecube.dts
> index 9bab6b7f4014..4aa0ee897a0a 100644
> --- a/arch/arm/boot/dts/sun8i-s3-pinecube.dts
> +++ b/arch/arm/boot/dts/sun8i-s3-pinecube.dts
> @@ -10,7 +10,7 @@
>
> / {
> model = "PineCube IP Camera";
> - compatible = "pine64,pinecube", "allwinner,sun8i-s3";
> + compatible = "pine64,pinecube", "sochip,s3", "allwinner,sun8i-v3";

I've applied it with the prefix changed a little, and s/Pincube/Pinecube/ in the commit log.

Maxime


Attachments:
(No filename) (1.00 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-02 10:09:43

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 3/6] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

Hi!

On Fri, Oct 30, 2020 at 11:43:22PM +0000, Matteo Scordino wrote:
> The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
> based on the SoChip S3 SoC.
>
> It is meant for integration into carrier boards or, more generally,
> larger designs, and uses an M2 connector to facilitate that.
>
> Interfaces on the M.2/NGFF 42mm connector:
> WiFi IEEE 802. 11abgn (on-module Realtek)
> Bluetooth 4.2/BLE (on-module Realtek)
> RGB LCD Interface (on-module connector)
> MIPI Camera Interface (on-module connector)
> IEEE 802. 3u Ethernet MAC (external connecto)
> USB2.0 (Host, Device, OTG) (external connector)
> Audio Line In/Out (external connector)
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
> 1 file changed, 51 insertions(+)
> create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
>
> diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> new file mode 100644
> index 000000000000..f219188fc9ba
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> @@ -0,0 +1,51 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> + */
> +
> +/dts-v1/;
> +#include "sun8i-v3.dtsi"
> +#include "sunxi-common-regulators.dtsi"
> +
> +/ {
> + model = "Elimo Impetus SoM";
> + compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
> +
> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart1;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +};
> +
> +&mmc0 {
> + broken-cd;
> + bus-width = <4>;
> + vmmc-supply = <&reg_vcc3v3>;
> + status = "okay";
> +};
> +
> +&uart0 {
> + pinctrl-0 = <&uart0_pb_pins>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
> +
> +&uart1 {
> + pinctrl-0 = <&uart1_pg_pins>;
> + pinctrl-names = "default";
> + status = "okay";
> +};

What is uart1 used for? the BT chip?

Maxime


Attachments:
(No filename) (2.04 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-02 10:10:23

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 5/6] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

On Fri, Oct 30, 2020 at 11:43:24PM +0000, Matteo Scordino wrote:
> The Elimo Engineering Initium is an Open Source Hardware Single Board
> Computer based on the Elimo Impetus SoM.
>
> It is meant as the first development platform for the Impetus, providing
> convenient access to the peripherals on the Impetus.
>
> It provides:
> USB-C power input
> UART-to-USB bridge on the USB-C connector, connected to UART1
> USB-A connector for USB2.0 (Host, Device, OTG)
> Audio Line In/Out
> Pin header to access all signals on the M2 connector of the SoM
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 28 ++++++++++++++++++++
> 2 files changed, 29 insertions(+)
> create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 4f0adfead547..dcfb8d39c267 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> sun8i-r40-bananapi-m2-ultra.dtb \
> sun8i-s3-lichee-zero-plus.dtb \
> sun8i-s3-pinecube.dtb \
> + sun8i-s3-elimo-initium.dtb \

This should be sorted as well

> sun8i-t3-cqa3t-bv3.dtb \
> sun8i-v3s-licheepi-zero.dtb \
> sun8i-v3s-licheepi-zero-dock.dtb \
> diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> new file mode 100644
> index 000000000000..7677ddc07bf9
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> @@ -0,0 +1,28 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> + */
> +
> +/dts-v1/;
> +#include "sun8i-s3-elimo-impetus.dtsi"
> +
> +/ {
> + model = "Elimo Initium";
> + compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
> + "allwinner,sun8i-v3";

You should indent that properly

> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart1;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +};

It's already in the DTSI, there's no need to duplicate it here

Maxime


Attachments:
(No filename) (2.19 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-03 16:32:18

by Matteo Scordino

[permalink] [raw]
Subject: Re: [PATCH v2 3/6] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

--
Matteo Scordino / Embedded Software Consultant
Mobile: +44 (0)7463701446

On Mon, 2020-11-02 at 11:05 +0100, Maxime Ripard wrote:
> Hi!
>
> On Fri, Oct 30, 2020 at 11:43:22PM +0000, Matteo Scordino wrote:
> > The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
> > based on the SoChip S3 SoC.
> >
> > It is meant for integration into carrier boards or, more generally,
> > larger designs, and uses an M2 connector to facilitate that.
> >
> > Interfaces on the M.2/NGFF 42mm connector:
> > WiFi IEEE 802. 11abgn (on-module Realtek)
> > Bluetooth 4.2/BLE (on-module Realtek)
> > RGB LCD Interface (on-module connector)
> > MIPI Camera Interface (on-module connector)
> > IEEE 802. 3u Ethernet MAC (external connecto)
> > USB2.0 (Host, Device, OTG) (external connector)
> > Audio Line In/Out (external connector)
> >
> > Signed-off-by: Matteo Scordino <[email protected]>
> > ---
> > arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
> > 1 file changed, 51 insertions(+)
> > create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> >
> > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> > new file mode 100644
> > index 000000000000..f219188fc9ba
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> > @@ -0,0 +1,51 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > + */
> > +
> > +/dts-v1/;
> > +#include "sun8i-v3.dtsi"
> > +#include "sunxi-common-regulators.dtsi"
> > +
> > +/ {
> > + model = "Elimo Impetus SoM";
> > + compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
> > +
> > + aliases {
> > + serial0 = &uart0;
> > + serial1 = &uart1;
> > + };
> > +
> > + chosen {
> > + stdout-path = "serial0:115200n8";
> > + };
> > +};
> > +
> > +&mmc0 {
> > + broken-cd;
> > + bus-width = <4>;
> > + vmmc-supply = <&reg_vcc3v3>;
> > + status = "okay";
> > +};
> > +
> > +&uart0 {
> > + pinctrl-0 = <&uart0_pb_pins>;
> > + pinctrl-names = "default";
> > + status = "okay";
> > +};
> > +
> > +&uart1 {
> > + pinctrl-0 = <&uart1_pg_pins>;
> > + pinctrl-names = "default";
> > + status = "okay";
> > +};
>
> What is uart1 used for? the BT chip?
>
> Maxime

No, BT is provided over SDIO by a Cypress 43455.
When used with the Initium carrier board, UART1 goes to an FTDI bridge that is
connected to the same USB-C connector that is used for power.
The idea being, if want an application that uses the UART to communicate with a
PC, it's convenient to provide power+connectivity on a single port.

I guess your point is that we would be better off only defining this in the DTS
of the carrier board?


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part

2020-11-03 16:35:50

by Matteo Scordino

[permalink] [raw]
Subject: Re: [PATCH v2 5/6] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

--
Matteo Scordino / Embedded Software Consultant
Mobile: +44 (0)7463701446

On Mon, 2020-11-02 at 11:06 +0100, Maxime Ripard wrote:
> On Fri, Oct 30, 2020 at 11:43:24PM +0000, Matteo Scordino wrote:
> > The Elimo Engineering Initium is an Open Source Hardware Single Board
> > Computer based on the Elimo Impetus SoM.
> >
> > It is meant as the first development platform for the Impetus, providing
> > convenient access to the peripherals on the Impetus.
> >
> > It provides:
> > USB-C power input
> > UART-to-USB bridge on the USB-C connector, connected to UART1
> > USB-A connector for USB2.0 (Host, Device, OTG)
> > Audio Line In/Out
> > Pin header to access all signals on the M2 connector of the SoM
> >
> > Signed-off-by: Matteo Scordino <[email protected]>
> > ---
> > arch/arm/boot/dts/Makefile | 1 +
> > arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 28 ++++++++++++++++++++
> > 2 files changed, 29 insertions(+)
> > create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> >
> > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> > index 4f0adfead547..dcfb8d39c267 100644
> > --- a/arch/arm/boot/dts/Makefile
> > +++ b/arch/arm/boot/dts/Makefile
> > @@ -1210,6 +1210,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> > sun8i-r40-bananapi-m2-ultra.dtb \
> > sun8i-s3-lichee-zero-plus.dtb \
> > sun8i-s3-pinecube.dtb \
> > + sun8i-s3-elimo-initium.dtb \
>
> This should be sorted as well

Ouch. Will do.

>
> > sun8i-t3-cqa3t-bv3.dtb \
> > sun8i-v3s-licheepi-zero.dtb \
> > sun8i-v3s-licheepi-zero-dock.dtb \
> > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > new file mode 100644
> > index 000000000000..7677ddc07bf9
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > @@ -0,0 +1,28 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > + */
> > +
> > +/dts-v1/;
> > +#include "sun8i-s3-elimo-impetus.dtsi"
> > +
> > +/ {
> > + model = "Elimo Initium";
> > + compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
> > + "allwinner,sun8i-v3";
>
> You should indent that properly

Double ouch.
However, how is a multiline dt property supposed to be indented?
I have tried a few combinations but nothing seemed to make checkpatch.pl happy,
except leaving no space at all at the beginning of the line. But I think makes it
quite unreadable?

> > + aliases {
> > + serial0 = &uart0;
> > + serial1 = &uart1;
> > + };
> > +
> > + chosen {
> > + stdout-path = "serial0:115200n8";
> > + };
> > +};
>
> It's already in the DTSI, there's no need to duplicate it here

After your question about the UART1 in the Impetus dtsi, I think it makes more
sense to remove it from the dtsi, since UART1 is directly used in this board (for
an FTDI chip) but not necessarily used in the "bare" Impetus SoM.

> Maxime


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part

2020-11-04 20:40:26

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 5/6] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

On Tue, Nov 03, 2020 at 04:33:26PM +0000, Matteo Scordino wrote:
> >
> > > sun8i-t3-cqa3t-bv3.dtb \
> > > sun8i-v3s-licheepi-zero.dtb \
> > > sun8i-v3s-licheepi-zero-dock.dtb \
> > > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > > new file mode 100644
> > > index 000000000000..7677ddc07bf9
> > > --- /dev/null
> > > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > > @@ -0,0 +1,28 @@
> > > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > > +/*
> > > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > > + */
> > > +
> > > +/dts-v1/;
> > > +#include "sun8i-s3-elimo-impetus.dtsi"
> > > +
> > > +/ {
> > > + model = "Elimo Initium";
> > > + compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
> > > + "allwinner,sun8i-v3";
> >
> > You should indent that properly
>
> Double ouch.
> However, how is a multiline dt property supposed to be indented?
> I have tried a few combinations but nothing seemed to make checkpatch.pl happy,
> except leaving no space at all at the beginning of the line. But I think makes it
> quite unreadable?

We usually pad with tabs, then spaces to match the opening quotes, like

compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
"allwinner,sun8i-v3";

Maxime


Attachments:
(No filename) (1.31 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-04 20:40:29

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v2 3/6] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

Hi

On Tue, Nov 03, 2020 at 04:28:27PM +0000, Matteo Scordino wrote:
> --
> Matteo Scordino / Embedded Software Consultant
> Mobile: +44 (0)7463701446
>
> On Mon, 2020-11-02 at 11:05 +0100, Maxime Ripard wrote:
> > Hi!
> >
> > On Fri, Oct 30, 2020 at 11:43:22PM +0000, Matteo Scordino wrote:
> > > The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
> > > based on the SoChip S3 SoC.
> > >
> > > It is meant for integration into carrier boards or, more generally,
> > > larger designs, and uses an M2 connector to facilitate that.
> > >
> > > Interfaces on the M.2/NGFF 42mm connector:
> > > WiFi IEEE 802. 11abgn (on-module Realtek)
> > > Bluetooth 4.2/BLE (on-module Realtek)
> > > RGB LCD Interface (on-module connector)
> > > MIPI Camera Interface (on-module connector)
> > > IEEE 802. 3u Ethernet MAC (external connecto)
> > > USB2.0 (Host, Device, OTG) (external connector)
> > > Audio Line In/Out (external connector)
> > >
> > > Signed-off-by: Matteo Scordino <[email protected]>
> > > ---
> > > arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 51 +++++++++++++++++++
> > > 1 file changed, 51 insertions(+)
> > > create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> > >
> > > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> > > new file mode 100644
> > > index 000000000000..f219188fc9ba
> > > --- /dev/null
> > > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
> > > @@ -0,0 +1,51 @@
> > > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > > +/*
> > > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > > + */
> > > +
> > > +/dts-v1/;
> > > +#include "sun8i-v3.dtsi"
> > > +#include "sunxi-common-regulators.dtsi"
> > > +
> > > +/ {
> > > + model = "Elimo Impetus SoM";
> > > + compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
> > > +
> > > + aliases {
> > > + serial0 = &uart0;
> > > + serial1 = &uart1;
> > > + };
> > > +
> > > + chosen {
> > > + stdout-path = "serial0:115200n8";
> > > + };
> > > +};
> > > +
> > > +&mmc0 {
> > > + broken-cd;
> > > + bus-width = <4>;
> > > + vmmc-supply = <&reg_vcc3v3>;
> > > + status = "okay";
> > > +};
> > > +
> > > +&uart0 {
> > > + pinctrl-0 = <&uart0_pb_pins>;
> > > + pinctrl-names = "default";
> > > + status = "okay";
> > > +};
> > > +
> > > +&uart1 {
> > > + pinctrl-0 = <&uart1_pg_pins>;
> > > + pinctrl-names = "default";
> > > + status = "okay";
> > > +};
> >
> > What is uart1 used for? the BT chip?
> >
> > Maxime
>
> No, BT is provided over SDIO by a Cypress 43455.
> When used with the Initium carrier board, UART1 goes to an FTDI bridge that is
> connected to the same USB-C connector that is used for power.
> The idea being, if want an application that uses the UART to communicate with a
> PC, it's convenient to provide power+connectivity on a single port.
>
> I guess your point is that we would be better off only defining this in the DTS
> of the carrier board?

I wasn't trying to make any point, it was a legitimate question, we
don't want to enable something that is optional or could be used for
something else (like a UART exposed on a generic pin header).

But from what you're telling me, yeah, it should be moved to the
daughter board DTS.

Maxime


Attachments:
(No filename) (3.30 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-05 14:52:11

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v3 3/3] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

The Elimo Engineering Initium is an Open Source Hardware Single Board
Computer based on the Elimo Impetus SoM.

It is meant as the first development platform for the Impetus, providing
convenient access to the peripherals on the Impetus.

It provides:
USB-C power input
UART-to-USB bridge on the USB-C connector, connected to UART1
USB-A connector for USB2.0 (Host, Device, OTG)
Audio Line In/Out
Pin header to access all signals on the M2 connector of the SoM

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 34 ++++++++++++++++++++
2 files changed, 35 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4f0adfead547..50e438ab8a00 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1208,6 +1208,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-r16-nintendo-super-nes-classic.dtb \
sun8i-r16-parrot.dtb \
sun8i-r40-bananapi-m2-ultra.dtb \
+ sun8i-s3-elimo-initium.dtb \
sun8i-s3-lichee-zero-plus.dtb \
sun8i-s3-pinecube.dtb \
sun8i-t3-cqa3t-bv3.dtb \
diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
new file mode 100644
index 000000000000..2119403fb65e
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-s3-elimo-impetus.dtsi"
+
+/ {
+ model = "Elimo Initium";
+ compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
+ "allwinner,sun8i-v3";
+
+ aliases {
+ serial0 = &uart0;
+ serial1 = &uart1;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&uart1 {
+ pinctrl-0 = <&uart1_pg_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&emac {
+ phy-handle = <&int_mii_phy>;
+ phy-mode = "mii";
+ status = "okay";
+};
--
2.20.1

2020-11-05 14:53:06

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v3 0/3] Elimo Impetus and Initium support

Hi,

I removed the patches that were accepted from V2 and applied the lastest
suggestions from V2, i.e.:

- moved UART1 definition from dtsi to dts of the carrier board
- correct sorting of the dtb in the Makefile
- fixed indentation of compatible property


Matteo Scordino (3):
ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM
dt-bindings: arm: sunxi: add Elimo bindings
ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

.../devicetree/bindings/arm/sunxi.yaml | 13 ++++++
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 44 +++++++++++++++++++
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 34 ++++++++++++++
4 files changed, 92 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

--
2.20.1

2020-11-05 14:54:13

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v3 2/3] dt-bindings: arm: sunxi: add Elimo bindings

Document board compatible names for Elimo Engineering Impetus and Initium

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 13 +++++++++++++
1 file changed, 13 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 0f23133672a3..ef2ce3bd2bed 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -201,6 +201,19 @@ properties:
- const: dserve,dsrv9703c
- const: allwinner,sun4i-a10

+ - description: Elimo Engineering Impetus SoM
+ items:
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
+ - description: Elimo Engineering Initium
+ items:
+ - const: elimo,initium
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
- description: Empire Electronix D709 Tablet
items:
- const: empire-electronix,d709
--
2.20.1

2020-11-05 14:54:15

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v3 1/3] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
based on the SoChip S3 SoC.

It is meant for integration into carrier boards or, more generally,
larger designs, and uses an M2 connector to facilitate that.

Interfaces on the M.2/NGFF 42mm connector:
WiFi IEEE 802. 11abgn (on-module Realtek)
Bluetooth 4.2/BLE (on-module Realtek)
RGB LCD Interface (on-module connector)
MIPI Camera Interface (on-module connector)
IEEE 802. 3u Ethernet MAC (external connecto)
USB2.0 (Host, Device, OTG) (external connector)
Audio Line In/Out (external connector)

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 44 +++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi

diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
new file mode 100644
index 000000000000..24d507cdbcf9
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
@@ -0,0 +1,44 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-v3.dtsi"
+#include "sunxi-common-regulators.dtsi"
+
+/ {
+ model = "Elimo Impetus SoM";
+ compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&mmc0 {
+ broken-cd;
+ bus-width = <4>;
+ vmmc-supply = <&reg_vcc3v3>;
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-0 = <&uart0_pb_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&usb_otg {
+ dr_mode = "otg";
+ status = "okay";
+};
+
+&usbphy {
+ usb0_id_det-gpio = <&pio 5 6 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
--
2.20.1

2020-11-05 15:03:32

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v3 3/3] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

On Thu, Nov 05, 2020 at 02:49:45PM +0000, Matteo Scordino wrote:
> The Elimo Engineering Initium is an Open Source Hardware Single Board
> Computer based on the Elimo Impetus SoM.
>
> It is meant as the first development platform for the Impetus, providing
> convenient access to the peripherals on the Impetus.
>
> It provides:
> USB-C power input
> UART-to-USB bridge on the USB-C connector, connected to UART1
> USB-A connector for USB2.0 (Host, Device, OTG)
> Audio Line In/Out
> Pin header to access all signals on the M2 connector of the SoM
>
> Signed-off-by: Matteo Scordino <[email protected]>
> ---
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 34 ++++++++++++++++++++
> 2 files changed, 35 insertions(+)
> create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 4f0adfead547..50e438ab8a00 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -1208,6 +1208,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> sun8i-r16-nintendo-super-nes-classic.dtb \
> sun8i-r16-parrot.dtb \
> sun8i-r40-bananapi-m2-ultra.dtb \
> + sun8i-s3-elimo-initium.dtb \
> sun8i-s3-lichee-zero-plus.dtb \
> sun8i-s3-pinecube.dtb \
> sun8i-t3-cqa3t-bv3.dtb \
> diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> new file mode 100644
> index 000000000000..2119403fb65e
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> @@ -0,0 +1,34 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> + */
> +
> +/dts-v1/;
> +#include "sun8i-s3-elimo-impetus.dtsi"
> +
> +/ {
> + model = "Elimo Initium";
> + compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
> + "allwinner,sun8i-v3";
> +
> + aliases {
> + serial0 = &uart0;

This alias would come from the DTSI

> + serial1 = &uart1;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };

And this node too

Maxime


Attachments:
(No filename) (2.12 kB)
signature.asc (235.00 B)
Download all attachments

2020-11-05 18:31:40

by Matteo Scordino

[permalink] [raw]
Subject: Re: [PATCH v3 3/3] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

Hi,

On Thu, 2020-11-05 at 16:00 +0100, Maxime Ripard wrote:
> On Thu, Nov 05, 2020 at 02:49:45PM +0000, Matteo Scordino wrote:
> > The Elimo Engineering Initium is an Open Source Hardware Single Board
> > Computer based on the Elimo Impetus SoM.
> >
> > It is meant as the first development platform for the Impetus, providing
> > convenient access to the peripherals on the Impetus.
> >
> > It provides:
> > USB-C power input
> > UART-to-USB bridge on the USB-C connector, connected to UART1
> > USB-A connector for USB2.0 (Host, Device, OTG)
> > Audio Line In/Out
> > Pin header to access all signals on the M2 connector of the SoM
> >
> > Signed-off-by: Matteo Scordino <[email protected]>
> > ---
> > arch/arm/boot/dts/Makefile | 1 +
> > arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 34 ++++++++++++++++++++
> > 2 files changed, 35 insertions(+)
> > create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> >
> > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> > index 4f0adfead547..50e438ab8a00 100644
> > --- a/arch/arm/boot/dts/Makefile
> > +++ b/arch/arm/boot/dts/Makefile
> > @@ -1208,6 +1208,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
> > sun8i-r16-nintendo-super-nes-classic.dtb \
> > sun8i-r16-parrot.dtb \
> > sun8i-r40-bananapi-m2-ultra.dtb \
> > + sun8i-s3-elimo-initium.dtb \
> > sun8i-s3-lichee-zero-plus.dtb \
> > sun8i-s3-pinecube.dtb \
> > sun8i-t3-cqa3t-bv3.dtb \
> > diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > new file mode 100644
> > index 000000000000..2119403fb65e
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
> > @@ -0,0 +1,34 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright (C) 2020 Matteo Scordino <[email protected]>
> > + */
> > +
> > +/dts-v1/;
> > +#include "sun8i-s3-elimo-impetus.dtsi"
> > +
> > +/ {
> > + model = "Elimo Initium";
> > + compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
> > + "allwinner,sun8i-v3";
> > +
> > + aliases {
> > + serial0 = &uart0;
>
> This alias would come from the DTSI

Removing it.
>
> > + serial1 = &uart1;
> > + };
> > +
> > + chosen {
> > + stdout-path = "serial0:115200n8";
> > + };
>
> And this node too

Removing this too. Sorry for the many iterations, as you can probably see by now,
this is my first kernel patch submission =)

> Maxime


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part

2020-11-05 18:34:29

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v4 2/3] dt-bindings: arm: sunxi: add Elimo bindings

Document board compatible names for Elimo Engineering Impetus and Initium

Signed-off-by: Matteo Scordino <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 13 +++++++++++++
1 file changed, 13 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 0f23133672a3..ef2ce3bd2bed 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -201,6 +201,19 @@ properties:
- const: dserve,dsrv9703c
- const: allwinner,sun4i-a10

+ - description: Elimo Engineering Impetus SoM
+ items:
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
+ - description: Elimo Engineering Initium
+ items:
+ - const: elimo,initium
+ - const: elimo,impetus
+ - const: sochip,s3
+ - const: allwinner,sun8i-v3
+
- description: Empire Electronix D709 Tablet
items:
- const: empire-electronix,d709
--
2.20.1

2020-11-05 18:34:31

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v4 0/3] Elimo Impetus and Initium support

Hello,

Removed a redundant node and a redundant alias as suggested for V3

Matteo Scordino (3):
ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM
dt-bindings: arm: sunxi: add Elimo bindings
ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

.../devicetree/bindings/arm/sunxi.yaml | 13 ++++++
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 44 +++++++++++++++++++
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 29 ++++++++++++
4 files changed, 87 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

--
2.20.1

2020-11-05 18:34:44

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v4 3/3] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

The Elimo Engineering Initium is an Open Source Hardware Single Board
Computer based on the Elimo Impetus SoM.

It is meant as the first development platform for the Impetus, providing
convenient access to the peripherals on the Impetus.

It provides:
USB-C power input
UART-to-USB bridge on the USB-C connector, connected to UART1
USB-A connector for USB2.0 (Host, Device, OTG)
Audio Line In/Out
Pin header to access all signals on the M2 connector of the SoM

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/sun8i-s3-elimo-initium.dts | 29 ++++++++++++++++++++
2 files changed, 30 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-initium.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4f0adfead547..50e438ab8a00 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1208,6 +1208,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-r16-nintendo-super-nes-classic.dtb \
sun8i-r16-parrot.dtb \
sun8i-r40-bananapi-m2-ultra.dtb \
+ sun8i-s3-elimo-initium.dtb \
sun8i-s3-lichee-zero-plus.dtb \
sun8i-s3-pinecube.dtb \
sun8i-t3-cqa3t-bv3.dtb \
diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
new file mode 100644
index 000000000000..039677c2cc65
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-initium.dts
@@ -0,0 +1,29 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-s3-elimo-impetus.dtsi"
+
+/ {
+ model = "Elimo Initium";
+ compatible = "elimo,initium", "elimo,impetus", "sochip,s3",
+ "allwinner,sun8i-v3";
+
+ aliases {
+ serial1 = &uart1;
+ };
+};
+
+&uart1 {
+ pinctrl-0 = <&uart1_pg_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&emac {
+ phy-handle = <&int_mii_phy>;
+ phy-mode = "mii";
+ status = "okay";
+};
--
2.20.1

2020-11-05 18:35:46

by Matteo Scordino

[permalink] [raw]
Subject: [PATCH v4 1/3] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM

The Elimo Engineering Impetus is an Open Source Hardware System-on-Module
based on the SoChip S3 SoC.

It is meant for integration into carrier boards or, more generally,
larger designs, and uses an M2 connector to facilitate that.

Interfaces on the M.2/NGFF 42mm connector:
WiFi IEEE 802. 11abgn (on-module Realtek)
Bluetooth 4.2/BLE (on-module Realtek)
RGB LCD Interface (on-module connector)
MIPI Camera Interface (on-module connector)
IEEE 802. 3u Ethernet MAC (external connecto)
USB2.0 (Host, Device, OTG) (external connector)
Audio Line In/Out (external connector)

Signed-off-by: Matteo Scordino <[email protected]>
---
arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi | 44 +++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi

diff --git a/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
new file mode 100644
index 000000000000..24d507cdbcf9
--- /dev/null
+++ b/arch/arm/boot/dts/sun8i-s3-elimo-impetus.dtsi
@@ -0,0 +1,44 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2020 Matteo Scordino <[email protected]>
+ */
+
+/dts-v1/;
+#include "sun8i-v3.dtsi"
+#include "sunxi-common-regulators.dtsi"
+
+/ {
+ model = "Elimo Impetus SoM";
+ compatible = "elimo,impetus", "sochip,s3", "allwinner,sun8i-v3";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&mmc0 {
+ broken-cd;
+ bus-width = <4>;
+ vmmc-supply = <&reg_vcc3v3>;
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-0 = <&uart0_pb_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&usb_otg {
+ dr_mode = "otg";
+ status = "okay";
+};
+
+&usbphy {
+ usb0_id_det-gpio = <&pio 5 6 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
--
2.20.1

2020-11-06 10:50:17

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH v4 3/3] ARM: dts: sun8i: s3: Add dts for the Elimo Initium SBC

On Thu, Nov 05, 2020 at 06:32:31PM +0000, Matteo Scordino wrote:
> The Elimo Engineering Initium is an Open Source Hardware Single Board
> Computer based on the Elimo Impetus SoM.
>
> It is meant as the first development platform for the Impetus, providing
> convenient access to the peripherals on the Impetus.
>
> It provides:
> USB-C power input
> UART-to-USB bridge on the USB-C connector, connected to UART1
> USB-A connector for USB2.0 (Host, Device, OTG)
> Audio Line In/Out
> Pin header to access all signals on the M2 connector of the SoM
>
> Signed-off-by: Matteo Scordino <[email protected]>

Applied all three patches, thanks!
Maxime


Attachments:
(No filename) (675.00 B)
signature.asc (235.00 B)
Download all attachments