mvebu: Add kmod-turris-omnia-mcu
authorMarek Mojík <marek.mojik@nic.cz>
Fri, 20 Oct 2023 09:29:37 +0000 (11:29 +0200)
committerRobert Marko <robimarko@gmail.com>
Fri, 2 Aug 2024 20:11:05 +0000 (22:11 +0200)
Add support for the MCU driver on CZ.NIC's Turris Omnia. This adds
the ability to do a true board poweroff, and to configure various
features (for example the user may configure that after poweroff, the
router should automatically wake up at a specific time).

Signed-off-by: Marek Mojík <marek.mojik@nic.cz>
Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/13799
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/mvebu/image/cortexa9.mk
target/linux/mvebu/modules.mk

index b3b8960a32bf5824eb903d23a2c301356a6ee2f3..5c8e61da46149c847727464e19461334ee0b0536 100644 (file)
@@ -106,7 +106,8 @@ define Device/cznic_turris-omnia
   DEVICE_PACKAGES :=  \
     mkf2fs e2fsprogs kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 \
     wpad-basic-mbedtls kmod-ath9k kmod-ath10k-ct ath10k-firmware-qca988x-ct \
-    kmod-mt7915-firmware partx-utils kmod-i2c-mux-pca954x kmod-leds-turris-omnia
+    kmod-mt7915-firmware partx-utils kmod-i2c-mux-pca954x kmod-leds-turris-omnia \
+    kmod-turris-omnia-mcu kmod-gpio-button-hotplug
   IMAGES := sysupgrade.img.gz
   IMAGE/sysupgrade.img.gz := boot-scr | boot-img | sdcard-img | gzip | append-metadata
   SUPPORTED_DEVICES += armada-385-turris-omnia
index 311cc07c7f4226e17883254fabd82f2f27f2013d..e6fa6ab3ede8e87326403f6a53c072884cccb743 100644 (file)
@@ -17,6 +17,27 @@ endef
 $(eval $(call KernelPackage,linkstation-poweroff))
 
 
+define KernelPackage/turris-omnia-mcu
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=CZ.NIC's Turris Omnia MCU driver
+  DEPENDS:=@TARGET_mvebu_cortexa9
+  KCONFIG:= \
+   CONFIG_CZNIC_PLATFORMS=y \
+   CONFIG_TURRIS_OMNIA_MCU
+  FILES:=$(LINUX_DIR)/drivers/platform/cznic/turris-omnia-mcu.ko
+  AUTOLOAD:=$(call AutoProbe,turris-omnia-mcu,1)
+endef
+
+define KernelPackage/turris-omnia-mcu/description
+  This adds support for the features implemented by the microcontroller
+  on the CZ.NIC's Turris Omnia SOHO router, including true board
+  poweroff, the ability to configure wake up from powered off state at
+  a specific time, MCU watchdog and MCU connected GPIO pins.
+endef
+
+$(eval $(call KernelPackage,turris-omnia-mcu))
+
+
 define KernelPackage/leds-turris-omnia
    SUBMENU:=$(LEDS_MENU)
    TITLE:=LED support for CZ.NIC's Turris Omnia