Thread (12 messages) 12 messages, 5 authors, 2022-09-06

Re: [PATCH] ARM: dts: turris-omnia: Add mcu node

From: Pali Rohár <pali@kernel.org>
Date: 2022-09-03 15:27:44
Also in: linux-devicetree, lkml

On Friday 02 September 2022 00:45:58 Andrew Lunn wrote:
On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
quoted
PING?

On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
quoted
At i2c address 0x2a is MCU command interface which provides access to GPIOs
connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.

Signed-off-by: Pali Rohár <pali@kernel.org>

---
Same change was already sent to U-Boot project together with driver. As
Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
this change also in Linux. There is a plan to write also Linux driver for
Turris Omnia MCU, like there is already in U-Boot.

https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
---
 arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
index f4878df39753..f655e9229d68 100644
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
@@ -184,7 +184,13 @@
 			#size-cells = <0>;
 			reg = <0>;
 
-			/* STM32F0 command interface at address 0x2a */
+			/* MCU command i2c API */
+			mcu: mcu@2a {
+				compatible = "cznic,turris-omnia-mcu";
+				reg = <0x2a>;
+				gpio-controller;
+				#gpio-cells = <3>;
+			};
Please document the binding, preferably in yaml.
I'm not going to send any new yaml dt binding document as I see that
dt bindings is clearly deprecated project. Either patches for dt
bindings are waiting without any answer for months (maybe year?) or
patches are ignored/not accepted by beyond reasons or there are request
for changes which cannot work on the real hardware or that new yaml
cannot be parsed/validated due to ton of bugs in other schemas.

Sorry, this is just a waste of time and energy to write new those yamls
as it does not bring any value.
I'm also not sure what the DT people will say about the node name mcu.
I don't see any examples of that in the binding documentation. They
might request you rename it to gpio-controller, unless it does more
than GPIO? And if it does do more than GPIO we are then into mfd
territory, and the binding then becomes much more interesting. Then we
start the questions, are you defining a ABI now, before there is even
a driver for it?

       Andrew
Yes, there is already driver. See my previous email, I mentioned it and
also I wrote link for this driver. Moreover now driver is merged in
upstream u-boot.

Driver has currently implemented only GPIO support, but other functions
supported by MCU would be implemented later.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help