ARM: dts: turris-omnia: Add MCU system-controller node

Turris Omnia's MCU provides various features that can be configured over
I2C at address 0x2a. Add device-tree node.

This does not carry a Fixes tag - we do not want this to get backported
to stable kernels for the following reason: U-Boot since v2022.10
inserts a phy-reset-gpio property into the WAN ethernet node pointing to
the MCU node if it finds the MCU node with a cznic,turris-omnia-mcu
compatible. Thus if this change got backported to a stable kernel, the
WAN interface driver would defer probe indefinitely (since it would wait
for the turris-omnia-mcu driver which would not be present).

Signed-off-by: Marek Behún <kabel@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Andy Shevchenko <andy@kernel.org>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20240701113010.16447-8-kabel@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Marek Behún
2024-07-01 13:30:09 +02:00
committed by Arnd Bergmann
parent 8181a2f151
commit 04515932e5

View File

@@ -218,7 +218,22 @@ i2c@0 {
#size-cells = <0>;
reg = <0>;
/* STM32F0 command interface at address 0x2a */
mcu: system-controller@2a {
compatible = "cznic,turris-omnia-mcu";
reg = <0x2a>;
pinctrl-names = "default";
pinctrl-0 = <&mcu_pins>;
interrupt-parent = <&gpio1>;
interrupts = <11 IRQ_TYPE_NONE>;
gpio-controller;
#gpio-cells = <3>;
interrupt-controller;
#interrupt-cells = <2>;
};
led-controller@2b {
compatible = "cznic,turris-omnia-leds";
@@ -501,6 +516,11 @@ fixed-link {
};
&pinctrl {
mcu_pins: mcu-pins {
marvell,pins = "mpp43";
marvell,function = "gpio";
};
pcawan_pins: pcawan-pins {
marvell,pins = "mpp46";
marvell,function = "gpio";