Dash7Board Code Upgrade Protocol demonstration code.
Dependencies: modem_ref_helper CRC
Diff: files.cpp
- 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) +};