summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis McCollum <x85446@yahoo.com>2021-04-01 00:16:51 -0500
committerTravis McCollum <x85446@yahoo.com>2021-04-01 00:16:51 -0500
commit8d759af3d1a1566b215cef6e7893523b4552071a (patch)
tree4c575a1485f5773259e88aae2a9f72edc279d69a
parent5fcfe5e6154575afaa4ad4ced005152e95b55827 (diff)
less harsh reboot avoids corrupting sw tpm. Author: Pete Dyer
-rw-r--r--recipes-connectivity/mbed-edge-core/files/0008-ordered-reboot.patch33
-rw-r--r--recipes-connectivity/mbed-edge-core/mbed-edge-core-imx8mmevk.bb3
-rw-r--r--recipes-connectivity/mbed-edge-core/mbed-edge-core-uz.bb3
3 files changed, 37 insertions, 2 deletions
diff --git a/recipes-connectivity/mbed-edge-core/files/0008-ordered-reboot.patch b/recipes-connectivity/mbed-edge-core/files/0008-ordered-reboot.patch
new file mode 100644
index 0000000..af9acfb
--- /dev/null
+++ b/recipes-connectivity/mbed-edge-core/files/0008-ordered-reboot.patch
@@ -0,0 +1,33 @@
+diff --git a/lib/mbed-cloud-client/mbed-client-pal/Source/Port/Reference-Impl/OS_Specific/Linux/RTOS/pal_plat_rtos.c b/lib/mbed-cloud-client/mbed-client-pal/Source/Port/Reference-Impl/OS_Specific/Linux/RTOS/pal_plat_rtos.c
+index 8c94312..4948f42 100644
+--- a/lib/mbed-cloud-client/mbed-client-pal/Source/Port/Reference-Impl/OS_Specific/Linux/RTOS/pal_plat_rtos.c
++++ b/lib/mbed-cloud-client/mbed-client-pal/Source/Port/Reference-Impl/OS_Specific/Linux/RTOS/pal_plat_rtos.c
+@@ -99,26 +99,8 @@ PAL_PRIVATE void palTimerThread(void const *args);
+ */
+ void pal_plat_osReboot(void)
+ {
+-//Simulator is currently for Linux only
+-#if (PAL_SIMULATE_RTOS_REBOOT == 1)
+- const char *argv[] = {"0" , 0};
+- char *const envp[] = { 0 };
+- argv[0] = program_invocation_name;
+-
+- PAL_LOG_INFO("pal_plat_osReboot -> simulated reboot with execve(%s).\r\n", argv[0]);
+-
+- if (-1 == execve(argv[0], (char **)argv , envp))
+- {
+- PAL_LOG_ERR("child process execve failed [%s]\r\n", argv[0]);
+- }
+-#else
+- PAL_LOG_INFO("Rebooting the system\r\n");
+-
+- // Syncronize cached files to persistant storage.
+- sync();
+- // Reboot the device
+- reboot(RB_AUTOBOOT);
+-#endif
++ PAL_LOG_INFO("pal_plat_osReboot.\r\n");
++ system("reboot");
+ }
+
+ /*! Initialize all data structures (semaphores, mutexs, memory pools, message queues) at system initialization.
diff --git a/recipes-connectivity/mbed-edge-core/mbed-edge-core-imx8mmevk.bb b/recipes-connectivity/mbed-edge-core/mbed-edge-core-imx8mmevk.bb
index baa715f..60a9bca 100644
--- a/recipes-connectivity/mbed-edge-core/mbed-edge-core-imx8mmevk.bb
+++ b/recipes-connectivity/mbed-edge-core/mbed-edge-core-imx8mmevk.bb
@@ -21,7 +21,8 @@ SRC_URI += "file://target.cmake \
file://deploy_ostree_delta_update.sh \
file://0006-fota-callback.patch \
file://0001-fix_psa_storage_location.patch \
- file://pal_plat_imx8.c"
+ file://pal_plat_imx8.c \
+ file://0008-ordered-reboot.patch "
SCRIPT_DIR = "${WORKDIR}/git/lib/mbed-cloud-client/update-client-hub/modules/pal-linux/scripts"
diff --git a/recipes-connectivity/mbed-edge-core/mbed-edge-core-uz.bb b/recipes-connectivity/mbed-edge-core/mbed-edge-core-uz.bb
index 10e2229..61425dd 100644
--- a/recipes-connectivity/mbed-edge-core/mbed-edge-core-uz.bb
+++ b/recipes-connectivity/mbed-edge-core/mbed-edge-core-uz.bb
@@ -21,7 +21,8 @@ SRC_URI += "file://target.cmake \
file://deploy_ostree_delta_update.sh \
file://0006-fota-callback.patch \
file://0001-fix_psa_storage_location.patch \
- file://pal_plat_uz.c"
+ file://pal_plat_uz.c \
+ file://0008-ordered-reboot.patch "
SCRIPT_DIR = "${WORKDIR}/git/lib/mbed-cloud-client/update-client-hub/modules/pal-linux/scripts"