[v2,3/6] ARM: dts: sun8i: s3: Add dtsi for the Elimo Impetus SoM
diff mbox series

Message ID 20201030234325.5865-4-matteo.scordino@gmail.com
State New
Headers show
Series
  • Untitled series #469734
Related show

Commit Message

Matteo Scordino Oct. 30, 2020, 11:43 p.m. UTC
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 <matteo.scordino@gmail.com>
---
 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

Comments

Maxime Ripard Nov. 2, 2020, 10:05 a.m. UTC | #1
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 <matteo.scordino@gmail.com>
> ---
>  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 <matteo@elimo.io>
> + */
> +
> +/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
Maxime Ripard Nov. 4, 2020, 7:04 p.m. UTC | #2
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 <matteo.scordino@gmail.com>
> > > ---
> > >  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 <matteo@elimo.io>
> > > + */
> > > +
> > > +/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

Patch
diff mbox series

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 <matteo@elimo.io>
+ */
+
+/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";
+};