Dash7Board Code Upgrade Protocol demonstration code.

Dependencies:   modem_ref_helper CRC

Revision:
0:5589104abba0
Child:
2:49acddddec25
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/files.cpp	Thu Feb 01 11:42:42 2018 +0000
@@ -0,0 +1,58 @@
+#include "files.h"
+#include "hwcfg.h"
+
+#include "kal_fs.h"
+
+#define __DEVICE_ID__               0x00000019
+
+alp_file_header_t h_rev = {
+    .perm = RW_R,
+    .prop = FS_PERMANENT_NOTIF,
+    .afid = FID_ACTP_RPT_FULL,
+    .ifid = IFID_REPORT,
+    .size = HAL_U32_BYTE_SWAP((uint32_t)sizeof(revision_t)),
+    .alloc= HAL_U32_BYTE_SWAP((uint32_t)sizeof(revision_t))
+};
+
+revision_t f_rev = {
+    .manufacturer_id     = __MANUFACTURER_ID__,
+    /// Device ID: Arbitrary number, at user/customer choice
+    .device_id           = __DEVICE_ID__,
+    /// Hardware Board ID:
+    .hw_version          = __HW_VERSION__,
+    /// Firmware Version: made of
+    ///  - major,minor and patch indexes
+    ///  - fw_id : "build-flavour"
+    ///  FW_ID | MAJOR | MINOR | PATCH | HASH |
+    //     1B  |  1B   |  1B   |   2B  |  4B  |
+    .fw_version.id       = 0,
+    .fw_version.major    = 1,
+    .fw_version.minor    = 0,
+    .fw_version.patch    = 0,
+    .fw_version.hash     = 0x00000000,
+    /// Maximum size for CUP code
+    .cup_max_size        = CUP_FILE_MAX_SIZE
+};
+
+alp_file_header_t h_cup_cfg = {
+    .perm = RW_R, // This file is accessed as ROOT
+    .prop = FS_VOLATILE,
+    .afid = 0,
+    .ifid = 0,
+    .size = HAL_U32_BYTE_SWAP((uint32_t)sizeof(cup_cfg_t)),
+    .alloc= HAL_U32_BYTE_SWAP((uint32_t)sizeof(cup_cfg_t))
+};
+
+cup_cfg_t f_cup_cfg = {
+    .cmd = CUP_CMD_UPGRADE_DONE,
+    .arch_nb = 0,
+};
+
+alp_file_header_t h_cup_code = {
+    .perm = RW_RW, // This file is written as GUEST (no encryption)
+    .prop = FS_PERMANENT,
+    .afid = 0,
+    .ifid = 0,
+    .size = HAL_U32_BYTE_SWAP((uint32_t)CUP_FILE_MAX_SIZE),
+    .alloc= HAL_U32_BYTE_SWAP((uint32_t)CUP_FILE_MAX_SIZE)
+};