Skip to contentSkip to conversation

ARM: dts: imx6q: add support for the Utilite Pro

PATCH New christopher.spinrath at rwth-aachen.de 5 participants 18 messages May 22, 2016 – Jun 6, 2016 7 messages not in the archive

Subsystems (3)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): 1463957258-4893-1-git-send-email-christopher.spinrath@rwth-aachen.de

#1 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

From: Christopher Spinrath <[email protected]>

The CompuLab Utilite Pro is a miniature fanless desktop pc based on the i.MX6 Quad powered cm-fx6 module. It features two serial ports, USB OTG, 4x USB, analog audio and S/PDIF, 2x Gb Ethernet, HDMI and DVI ports, an on-board 32GB SSD, a mmc slot, and on-board wifi/bt.

Add initial support for it including USB, Ethernet (both ports), sata and HDMI support.

---
 arch/arm/boot/dts/Makefile              |   1 +
 arch/arm/boot/dts/imx6q-utilite-pro.dts | 128 ++++++++++++++++++++++++++++++++
 2 files changed, 129 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6q-utilite-pro.dts
arch/arm/boot/dts/Makefile +1 -0
index 515a428..287044c 100644
@@ -369,6 +369,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6q-tx6q-1110.dtb \
 	imx6q-tx6q-11x0-mb7.dtb \
 	imx6q-udoo.dtb \
+	imx6q-utilite-pro.dtb \
 	imx6q-wandboard.dtb \
 	imx6q-wandboard-revb1.dtb \
 	imx6qp-nitrogen6_max.dtb \
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +128 -0

128 lines not on this page · raw message

Signature · 1 line
2.8.2
reviewer
#2 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Quoted 8 lines · On Sun, May 22, 2016 at 7:47 PM, <[email protected]> wrote:
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +2 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath

arch/arm/boot/dts/imx6q-utilite-pro.dts line 12

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *     Copyright 2013 CompuLab Ltd.
+ *     Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:

Can you make this dual GPL/X11 license?

For reference take a look at:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx6sl-warp.dts?id=refs/tags/v4.6

arch/arm/boot/dts/imx6q-utilite-pro.dts line 34

Quoted 5 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +5 -0
+       gpio-keys {
+               compatible = "gpio-keys";
+               power {
+                       label = "Power Button";
+                       gpios = <&gpio1 29 1>;

Better to use a label like:
gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;

arch/arm/boot/dts/imx6q-utilite-pro.dts line 77

Quoted 9 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +9 -0
+&iomuxc {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_hog>;
+
+       hog {
+               pinctrl_hog: hoggrp {
+                       fsl,pins = <
+                               /* power button */
+                               MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000

Better to avoid 0x80000000. Replace it with the real iomux value instead so that you don't need to rely on the bootloader configuration.

arch/arm/boot/dts/imx6q-utilite-pro.dts line 88

Quoted 8 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +8 -0
+
+       imx6q-utilite-pro {
+               pinctrl_i2c1: i2c1grp {
+                       fsl,pins = <
+                               MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
+                               MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
+                       >;
+               };

You should better remove one level of indentation. Check this commit for reference:
https://git.kernel.org/cgit/linux/kernel/git/shawnguo/linux.git/commit/arch/arm/boot/dts/imx6q-tbs2910.dts?h=for-next&id=aa7871b53bc3c36b4adefe67f728143e2deeec93

arch/arm/boot/dts/imx6q-utilite-pro.dts line 126

Quoted 6 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +6 -0
+&uart2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_uart2>;
+       fsl,uart-has-rtscts;
+       dma-names = "rx", "tx";
+       dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;

No need to add the dma nodes as they are already present in imx6qdl.dtsi.

#3 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Fabio,

Quoted 23 lines · Fabio Estevam
Quoted 8 lines · On Sun, May 22, 2016 at 7:47 PM, <[email protected]> wrote:
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +2 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath

arch/arm/boot/dts/imx6q-utilite-pro.dts line 12

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *     Copyright 2013 CompuLab Ltd.
+ *     Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:

Can you make this dual GPL/X11 license?

Quoted 2 lines

For reference take a look at:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx6sl-warp.dts?id=refs/tags/v4.6

Please excuse me my ignorance, what is the rationale for this change?

Signature · 2 lines
Regards,
Igor.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#5 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Igor,

Quoted 26 lines · Igor Grinberg

Hi Fabio,

Quoted 23 lines · Fabio Estevam
Quoted 8 lines · On Sun, May 22, 2016 at 7:47 PM, <[email protected]> wrote:
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +2 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath

arch/arm/boot/dts/imx6q-utilite-pro.dts line 12

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *     Copyright 2013 CompuLab Ltd.
+ *     Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:

Can you make this dual GPL/X11 license?

Quoted 5 lines
Quoted 2 lines

For reference take a look at:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx6sl-warp.dts?id=refs/tags/v4.6

Please excuse me my ignorance, what is the rationale for this change?

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Cheers,
Christopher

reviewer
#6 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Yes, that's correct.

#7 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Quoted 11 lines · Fabio Estevam
Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Yes, that's correct.

Thanks for the explanation.

Signature · 2 lines
Regards,
Igor.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#9 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Igor,

Quoted 10 lines · Igor Grinberg
Quoted 9 lines · Fabio Estevam
Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Quoted 5 lines
Quoted 2 lines

Yes, that's correct.

Thanks for the explanation.

Have you/CompuLab made a decision? Do you/CompuLab approve the dual license?

Thanks,
Christopher

#10 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Christopher,

Thanks for bringing this to my attention.

Quoted 13 lines · Christopher Spinrath

Hi Igor,

Quoted 10 lines · Igor Grinberg
Quoted 9 lines · Fabio Estevam
Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Quoted 7 lines
Quoted 5 lines
Quoted 2 lines

Yes, that's correct.

Thanks for the explanation.

Have you/CompuLab made a decision? Do you/CompuLab approve the dual license?

Yes, please use the dual license.
You can count this answer official.

Signature · 2 lines
Regards,
Igor.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#12 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Igor,

Quoted 21 lines · Igor Grinberg

Hi Christopher,

Thanks for bringing this to my attention.

Quoted 16 lines · Christopher Spinrath

Hi Igor,

Quoted 13 lines · Igor Grinberg
Quoted 11 lines · Fabio Estevam
Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Yes, that's correct.

Quoted 8 lines
Quoted 4 lines
Quoted 2 lines

Thanks for the explanation.

Have you/CompuLab made a decision? Do you/CompuLab approve the dual license?

Yes, please use the dual license.
You can count this answer official.

Thank you very much! I will send v2 later today with the dual license (and also changing the license of the cm-fx6 file).

I would be very nice, if you could provide your Acked-By (or whatever) for the license changes (I will keep you in cc).

Cheers,
Christopher

#13 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Quoted 29 lines · Christopher Spinrath

Hi Igor,

Quoted 26 lines · Igor Grinberg

Hi Christopher,

Thanks for bringing this to my attention.

Quoted 20 lines · Christopher Spinrath

Hi Igor,

Quoted 10 lines · Igor Grinberg
Quoted 9 lines · Fabio Estevam
Quoted 5 lines · Christopher Spinrath

Thanks for joining this discussion. I *guess* the rationale is to share the same device tree with projects that are incompatible with the GPL (e.g. *BSD). Even if there is no support for a particular device/board having all (or most) files dual licensed makes it easier to just pull them all in.

Quoted 5 lines
Quoted 2 lines

Yes, that's correct.

Thanks for the explanation.

Have you/CompuLab made a decision? Do you/CompuLab approve the dual license?

Quoted 8 lines
Quoted 3 lines

Yes, please use the dual license.
You can count this answer official.

Thank you very much! I will send v2 later today with the dual license (and also changing the license of the cm-fx6 file).

I would be very nice, if you could provide your Acked-By (or whatever) for the license changes (I will keep you in cc).

Sure! No problem!

Signature · 2 lines
Regards,
Igor.
#14 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

In reply to christopher.spinrath at rwth-aachen.de

Hi Christopher,

Quoted 66 lines

christopher.spinrath at rwth-aachen.de hat am 23. Mai 2016 um 00:47 geschrieben:

From: Christopher Spinrath <[email protected]>

The CompuLab Utilite Pro is a miniature fanless desktop pc based on the i.MX6 Quad powered cm-fx6 module. It features two serial ports, USB OTG, 4x USB, analog audio and S/PDIF, 2x Gb Ethernet, HDMI and DVI ports, an on-board 32GB SSD, a mmc slot, and on-board wifi/bt.

Add initial support for it including USB, Ethernet (both ports), sata and HDMI support.

---
 arch/arm/boot/dts/Makefile              |   1 +
 arch/arm/boot/dts/imx6q-utilite-pro.dts | 128
++++++++++++++++++++++++++++++++
 2 files changed, 129 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6q-utilite-pro.dts

...

arch/arm/boot/dts/imx6q-utilite-pro.dts new file +36 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *	Copyright 2013 CompuLab Ltd.
+ *	Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:
+ *
+ * http://www.opensource.org/licenses/gpl-license.html
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
...
+
+		pinctrl_uart2: uart2grp {
+			fsl,pins = <
+				MX6QDL_PAD_GPIO_7__UART2_TX_DATA 0x1b0b1
+				MX6QDL_PAD_GPIO_8__UART2_RX_DATA 0x1b0b1
+				MX6QDL_PAD_SD4_DAT5__UART2_RTS_B 0x1b0b1
+				MX6QDL_PAD_SD4_DAT6__UART2_CTS_B 0x1b0b1
+			>;
+		};
+	};
+};
+
+&pcie {
+	pcie at 0,0 {
+		reg = <0x000000 0 0 0 0>;
+		#address-cells = <3>;
+		#size-cells = <2>;
+
+		/* non-removable i211 ethernet card */

arch/arm/boot/dts/imx6q-utilite-pro.dts line 124

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+		eth1: intel,i211 at pcie0,0 {
+			reg = <0x010000 0 0 0 0>;
+		};
+	};
+};
+
+&uart2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_uart2>;
+	fsl,uart-has-rtscts;

this property is deprecated so please use the generic one:

https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=1006ed7e1b258dac3e85c9fafe9d38b6020c917f

Stefan

Quoted 12 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +4 -0
+	dma-names = "rx", "tx";
+	dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
+	status = "okay";
+};
Signature · 7 lines
2.8.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

A message that is not in the archive (sent off-list or not yet received): [email protected]

#16 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Fabio,

Quoted 23 lines · Fabio Estevam
Quoted 8 lines · On Sun, May 22, 2016 at 7:47 PM, <[email protected]> wrote:
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +2 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath

arch/arm/boot/dts/imx6q-utilite-pro.dts line 12

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *     Copyright 2013 CompuLab Ltd.
+ *     Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:

Can you make this dual GPL/X11 license?

Quoted 3 lines

For reference take a look at:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx6sl-warp.dts?id=refs/tags/v4.6

I would like to but I'm not sure if I'm allowed to. As I stated in the license header some nodes are copied (and cleaned up) from the vendor kernel/devicetree. They are licensed GPL-v2 only. So I don't know, can I add the X11 license?

Quoted 20 lines

arch/arm/boot/dts/imx6q-utilite-pro.dts line 34

Quoted 6 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +5 -0
+       gpio-keys {
+               compatible = "gpio-keys";
+               power {
+                       label = "Power Button";
+                       gpios = <&gpio1 29 1>;

Better to use a label like:
gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;

arch/arm/boot/dts/imx6q-utilite-pro.dts line 77

Quoted 9 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +9 -0
+&iomuxc {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_hog>;
+
+       hog {
+               pinctrl_hog: hoggrp {
+                       fsl,pins = <
+                               /* power button */
+                               MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000
Quoted 3 lines

Better to avoid 0x80000000. Replace it with the real iomux value instead so that you don't need to rely on the bootloader configuration.

hmm, I don't know how to determine this value. The device documentation I have does not say anything about it and the vendor kernel uses 0x80000000...

Quoted 10 lines

arch/arm/boot/dts/imx6q-utilite-pro.dts line 88

Quoted 9 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +8 -0
+
+       imx6q-utilite-pro {
+               pinctrl_i2c1: i2c1grp {
+                       fsl,pins = <
+                               MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
+                               MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
+                       >;
+               };
Quoted 4 lines

You should better remove one level of indentation. Check this commit for reference:
https://git.kernel.org/cgit/linux/kernel/git/shawnguo/linux.git/commit/arch/arm/boot/dts/imx6q-tbs2910.dts?h=for-next&id=aa7871b53bc3c36b4adefe67f728143e2deeec93

OK, done (I also had to change this in the imx6q-cm-fx6.dts to make it work).

Quoted 9 lines

arch/arm/boot/dts/imx6q-utilite-pro.dts line 126

Quoted 6 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +6 -0
+&uart2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_uart2>;
+       fsl,uart-has-rtscts;
+       dma-names = "rx", "tx";
+       dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;

No need to add the dma nodes as they are already present in imx6qdl.dtsi.

Indeed, I removed them.

Thanks for your review!

Cheers,
Christopher

reviewer
#17 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Christopher,

Quoted 4 lines · Christopher Spinrath

I would like to but I'm not sure if I'm allowed to. As I stated in the license header some nodes are copied (and cleaned up) from the vendor kernel/devicetree. They are licensed GPL-v2 only. So I don't know, can I add the X11 license?

Maybe you could contact the original author anc check?

Quoted 6 lines
Quoted 3 lines

Better to avoid 0x80000000. Replace it with the real iomux value instead so that you don't need to rely on the bootloader configuration.

hmm, I don't know how to determine this value. The device documentation I have does not say anything about it and the vendor kernel uses 0x80000000...

The default value of register IOMUXC_SW_PAD_CTL_PAD_ENET_TX_DATA1 is 0x1b0b0, so you can use this value.

Another thing I forgot to comment: instead of putting this pin inside the hog group you could put it inside the gpio-keys node.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#19 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Fabio,

Quoted 5 lines · Fabio Estevam

Hi Christopher,

On Mon, May 23, 2016 at 8:08 PM, Christopher Spinrath <[email protected]> wrote:

Quoted 7 lines
Quoted 4 lines

I would like to but I'm not sure if I'm allowed to. As I stated in the license header some nodes are copied (and cleaned up) from the vendor kernel/devicetree. They are licensed GPL-v2 only. So I don't know, can I add the X11 license?

Maybe you could contact the original author anc check?

I have sent an email to the author and will wait about a week for a reply before I send v2.

Quoted 7 lines
Quoted 6 lines
Quoted 3 lines

Better to avoid 0x80000000. Replace it with the real iomux value instead so that you don't need to rely on the bootloader configuration.

hmm, I don't know how to determine this value. The device documentation I have does not say anything about it and the vendor kernel uses 0x80000000...

Quoted 6 lines

The default value of register IOMUXC_SW_PAD_CTL_PAD_ENET_TX_DATA1 is 0x1b0b0, so you can use this value.

Another thing I forgot to comment: instead of putting this pin inside the hog group you could put it inside the gpio-keys node.

OK, done. Can I always use the default value in this case? If yes, can you point me to a proper documentation of these?

Thanks,
Christopher

reviewer
#20 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Quoted 2 lines · Christopher Spinrath

OK, done. Can I always use the default value in this case? If yes, can you point me to a proper documentation of these?

You can look at
"36.4.316 Pad Control Register (IOMUXC_SW_PAD_CTL_PAD_ENET_TX_DATA1)" in the mx6quad reference manual.

For GPIO functionality the default power-on-reset value should work fine.

You can confirm this by reading address 0x20E0500 in the bootloader:
mw.l 0x20E0500 1

and then use this value on the dts. This way the kernel will always have a sane value instead of relying in the value passed from the bootloader.

#21 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

In reply to Christopher Spinrath
Quoted 2 lines

OK, done. Can I always use the default value in this case? If yes, can you point me to a proper documentation of these?

Just google for "i.MX6Q Reference Manual", it's chapter 36 ("IOMUXC"), or to be more specific, it at 36.4.316.

It's nice that Freescale/NXP is way better here than Marvell. You can download this stuff without any problem.

When Marvell bought the PXA stuff from Intel and put everything under NDA / download after approvement, I was hugely p.... off. I never touched any Marvell chip after it :-)

#22 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

In reply to a message not in the archive

Hi Fabio,

sorry I forgot in my last reply to mention:

On 05/23/2016 07:49 PM, Fabio Estevam wrote:

-- snip --

Quoted 9 lines

arch/arm/boot/dts/imx6q-utilite-pro.dts line 34

Quoted 6 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +5 -0
+       gpio-keys {
+               compatible = "gpio-keys";
+               power {
+                       label = "Power Button";
+                       gpios = <&gpio1 29 1>;

Better to use a label like:
gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;

Will do. Thanks!

Cheers,
Christopher

Quoted 37 lines

arch/arm/boot/dts/imx6q-utilite-pro.dts line 77

Quoted 10 lines

+&iomuxc {

arch/arm/boot/dts/imx6q-utilite-pro.dts new file +8 -0
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_hog>;
+
+       hog {
+               pinctrl_hog: hoggrp {
+                       fsl,pins = <
+                               /* power button */
+                               MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000

Better to avoid 0x80000000. Replace it with the real iomux value instead so that you don't need to rely on the bootloader configuration.

arch/arm/boot/dts/imx6q-utilite-pro.dts line 88

Quoted 8 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +8 -0
+
+       imx6q-utilite-pro {
+               pinctrl_i2c1: i2c1grp {
+                       fsl,pins = <
+                               MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
+                               MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
+                       >;
+               };

You should better remove one level of indentation. Check this commit for reference:
https://git.kernel.org/cgit/linux/kernel/git/shawnguo/linux.git/commit/arch/arm/boot/dts/imx6q-tbs2910.dts?h=for-next&id=aa7871b53bc3c36b4adefe67f728143e2deeec93

arch/arm/boot/dts/imx6q-utilite-pro.dts line 126

Quoted 6 lines

+&uart2 {

arch/arm/boot/dts/imx6q-utilite-pro.dts new file +5 -0
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_uart2>;
+       fsl,uart-has-rtscts;
+       dma-names = "rx", "tx";
+       dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;

No need to add the dma nodes as they are already present in imx6qdl.dtsi.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#24 lore raw

PATCH 2/2 ARM: dts: imx6q: add support for the Utilite Pro

Hi Stefan,

Quoted 81 lines · Stefan Wahren

Hi Christopher,

Quoted 66 lines

christopher.spinrath at rwth-aachen.de hat am 23. Mai 2016 um 00:47 geschrieben:

From: Christopher Spinrath <[email protected]>

The CompuLab Utilite Pro is a miniature fanless desktop pc based on the i.MX6 Quad powered cm-fx6 module. It features two serial ports, USB OTG, 4x USB, analog audio and S/PDIF, 2x Gb Ethernet, HDMI and DVI ports, an on-board 32GB SSD, a mmc slot, and on-board wifi/bt.

Add initial support for it including USB, Ethernet (both ports), sata and HDMI support.

---
 arch/arm/boot/dts/Makefile              |   1 +
 arch/arm/boot/dts/imx6q-utilite-pro.dts | 128
++++++++++++++++++++++++++++++++
 2 files changed, 129 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6q-utilite-pro.dts

...

arch/arm/boot/dts/imx6q-utilite-pro.dts new file +36 -0
new file mode 100644
index 0000000..bcd8e0d
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2016 Christopher Spinrath
+ * Copyright 2013 CompuLab Ltd.
+ *
+ * Based on the GPLv2 licensed devicetree distributed with the vendor
+ * kernel for the Utilite Pro:
+ *	Copyright 2013 CompuLab Ltd.
+ *	Author: Valentin Raevsky <[email protected]>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:
+ *
+ * http://www.opensource.org/licenses/gpl-license.html
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
...
+
+		pinctrl_uart2: uart2grp {
+			fsl,pins = <
+				MX6QDL_PAD_GPIO_7__UART2_TX_DATA 0x1b0b1
+				MX6QDL_PAD_GPIO_8__UART2_RX_DATA 0x1b0b1
+				MX6QDL_PAD_SD4_DAT5__UART2_RTS_B 0x1b0b1
+				MX6QDL_PAD_SD4_DAT6__UART2_CTS_B 0x1b0b1
+			>;
+		};
+	};
+};
+
+&pcie {
+	pcie at 0,0 {
+		reg = <0x000000 0 0 0 0>;
+		#address-cells = <3>;
+		#size-cells = <2>;
+
+		/* non-removable i211 ethernet card */

arch/arm/boot/dts/imx6q-utilite-pro.dts line 124

Quoted 10 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +10 -0
+		eth1: intel,i211 at pcie0,0 {
+			reg = <0x010000 0 0 0 0>;
+		};
+	};
+};
+
+&uart2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_uart2>;
+	fsl,uart-has-rtscts;

this property is deprecated so please use the generic one:

Quoted 2 lines

https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=1006ed7e1b258dac3e85c9fafe9d38b6020c917f

Thanks for pointing that out. I will switch to the generic property.

Cheers,
Christopher

Quoted 14 lines

Stefan

Quoted 12 lines
arch/arm/boot/dts/imx6q-utilite-pro.dts new file +4 -0
+	dma-names = "rx", "tx";
+	dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
+	status = "okay";
+};
Signature · 7 lines
2.8.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel