Initial commit: CCU621_M firmware project with BLE debug link support.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+118
@@ -0,0 +1,118 @@
|
||||
/*
|
||||
* Copyright (C) 2015-2018 Alibaba Group Holding Limited
|
||||
*/
|
||||
#include "iotx_dm_internal.h"
|
||||
|
||||
#ifdef DEVICE_MODEL_ENABLED
|
||||
|
||||
static dm_opt_ctx g_dm_opt = {
|
||||
0, 0, 1, 1, 1, 60 * 1000, 0
|
||||
};
|
||||
|
||||
int dm_opt_set(dm_opt_t opt, void *data)
|
||||
{
|
||||
int res = SUCCESS_RETURN;
|
||||
|
||||
if (data == NULL) {
|
||||
return STATE_USER_INPUT_INVALID;
|
||||
}
|
||||
|
||||
switch (opt) {
|
||||
#if !defined(DEVICE_MODEL_RAWDATA_SOLO)
|
||||
case DM_OPT_DOWNSTREAM_PROPERTY_POST_REPLY: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.prop_post_reply_opt = opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_DOWNSTREAM_EVENT_POST_REPLY: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.event_post_reply_opt = opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_UPSTREAM_PROPERTY_SET_REPLY: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.prop_set_reply_opt = opt;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
#ifdef DEVICE_MODEL_SHADOW
|
||||
case DM_OPT_DOWNSTREAM_EVENT_PROPERTY_DESIRED_GET_REPLY: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.prop_desired_get_reply_opt = opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_DOWNSTREAM_EVENT_PROPERTY_DESIRED_DELETE_REPLY: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.prop_desired_delete_reply_opt = opt;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
case DM_OPT_FOTA_RETRY_TIMEOUT_MS: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.fota_retry_timeout_ms = opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_PROXY_PRODUCT_REGISTER: {
|
||||
int opt = *(int *)(data);
|
||||
g_dm_opt.proxy_product_register = opt;
|
||||
}
|
||||
break;
|
||||
default: {
|
||||
res = STATE_USER_INPUT_INVALID;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
int dm_opt_get(dm_opt_t opt, void *data)
|
||||
{
|
||||
int res = SUCCESS_RETURN;
|
||||
|
||||
if (data == NULL) {
|
||||
return STATE_USER_INPUT_INVALID;
|
||||
}
|
||||
|
||||
switch (opt) {
|
||||
#if !defined(DEVICE_MODEL_RAWDATA_SOLO)
|
||||
case DM_OPT_DOWNSTREAM_PROPERTY_POST_REPLY: {
|
||||
*(int *)(data) = g_dm_opt.prop_post_reply_opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_DOWNSTREAM_EVENT_POST_REPLY: {
|
||||
*(int *)(data) = g_dm_opt.event_post_reply_opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_UPSTREAM_PROPERTY_SET_REPLY: {
|
||||
*(int *)(data) = g_dm_opt.prop_set_reply_opt;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
#ifdef DEVICE_MODEL_SHADOW
|
||||
case DM_OPT_DOWNSTREAM_EVENT_PROPERTY_DESIRED_DELETE_REPLY: {
|
||||
*(int *)(data) = g_dm_opt.prop_desired_delete_reply_opt;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_DOWNSTREAM_EVENT_PROPERTY_DESIRED_GET_REPLY: {
|
||||
*(int *)(data) = g_dm_opt.prop_desired_get_reply_opt;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
case DM_OPT_FOTA_RETRY_TIMEOUT_MS: {
|
||||
*(int *)(data) = g_dm_opt.fota_retry_timeout_ms;
|
||||
}
|
||||
break;
|
||||
case DM_OPT_PROXY_PRODUCT_REGISTER: {
|
||||
*(int *)(data) = g_dm_opt.proxy_product_register;
|
||||
}
|
||||
break;
|
||||
default: {
|
||||
res = STATE_DEV_MODEL_INVALID_DM_OPTION;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user