From: Jan Kiszka <jan.kis...@siemens.com>

This allows to use the watchdog in custom scripts but does not enforce
that the OS has to support it as well.

Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>
---
 arch/arm/dts/k3-am65-iot2050-boot-image.dtsi | 25 ++++++++++++++++++++
 configs/iot2050_defconfig                    |  6 +++++
 tools/binman/missing-blob-help               |  5 ++++
 3 files changed, 36 insertions(+)

diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi 
b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
index 1e02cece6c..69479d7b18 100644
--- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
+++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
@@ -80,6 +80,19 @@
                                                filename = 
"arch/arm/dts/k3-am6548-iot2050-advanced-pg2.dtb";
                                        };
                                };
+
+#ifdef CONFIG_WDT_K3_RTI_FW_FILE
+                               k3-rti-wdt-firmware {
+                                       type = "firmware";
+                                       load = <0x82000000>;
+                                       arch = "arm";
+                                       compression = "none";
+                                       blob-ext {
+                                               filename = 
CONFIG_WDT_K3_RTI_FW_FILE;
+                                               missing-msg = 
"k3-rti-wdt-firmware";
+                                       };
+                               };
+#endif
                        };
 
                        configurations {
@@ -89,24 +102,36 @@
                                        description = "iot2050-basic";
                                        firmware = "u-boot";
                                        fdt = "fdt-iot2050-basic";
+#ifdef CONFIG_WDT_K3_RTI_FW_FILE
+                                       loadables = "k3-rti-wdt-firmware";
+#endif
                                };
 
                                conf-iot2050-basic-pg2 {
                                        description = "iot2050-basic-pg2";
                                        firmware = "u-boot";
                                        fdt = "fdt-iot2050-basic-pg2";
+#ifdef CONFIG_WDT_K3_RTI_FW_FILE
+                                       loadables = "k3-rti-wdt-firmware";
+#endif
                                };
 
                                conf-iot2050-advanced {
                                        description = "iot2050-advanced";
                                        firmware = "u-boot";
                                        fdt = "fdt-iot2050-advanced";
+#ifdef CONFIG_WDT_K3_RTI_FW_FILE
+                                       loadables = "k3-rti-wdt-firmware";
+#endif
                                };
 
                                conf-iot2050-advanced-pg2 {
                                        description = "iot2050-advanced-pg2";
                                        firmware = "u-boot";
                                        fdt = "fdt-iot2050-advanced-pg2";
+#ifdef CONFIG_WDT_K3_RTI_FW_FILE
+                                       loadables = "k3-rti-wdt-firmware";
+#endif
                                };
                        };
                };
diff --git a/configs/iot2050_defconfig b/configs/iot2050_defconfig
index b5c5fd7ac1..72ee5c83f1 100644
--- a/configs/iot2050_defconfig
+++ b/configs/iot2050_defconfig
@@ -50,6 +50,7 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_PCI=y
 CONFIG_CMD_REMOTEPROC=y
 CONFIG_CMD_USB=y
+CONFIG_CMD_WDT=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_TIME=y
 # CONFIG_ISO_PARTITION is not set
@@ -127,4 +128,9 @@ CONFIG_USB_XHCI_DWC3=y
 CONFIG_USB_DWC3=y
 CONFIG_USB_DWC3_GENERIC=y
 CONFIG_USB_KEYBOARD=y
+# CONFIG_WATCHDOG is not set
+# CONFIG_WATCHDOG_AUTOSTART is not set
+CONFIG_WDT=y
+CONFIG_WDT_K3_RTI=y
+CONFIG_WDT_K3_RTI_LOAD_FW=y
 CONFIG_OF_LIBFDT_OVERLAY=y
diff --git a/tools/binman/missing-blob-help b/tools/binman/missing-blob-help
index f7bc80ea83..dc2d9c9811 100644
--- a/tools/binman/missing-blob-help
+++ b/tools/binman/missing-blob-help
@@ -17,3 +17,8 @@ board/sunxi/README.sunxi64
 scp-sunxi:
 SCP firmware is required for system suspend, but is otherwise optional.
 Please read the section on SCP firmware in board/sunxi/README.sunxi64
+
+k3-rti-wdt-firmware:
+If CONFIG_WDT_K3_RTI_LOAD_FW is enabled, a firmware image is needed for
+the R5F core(s) to trigger the system reset. One possible source is
+https://github.com/siemens/k3-rti-wdt.
-- 
2.31.1

Reply via email to