From dfc57ae390f579aedee4e4d2512c6f8df7d472d7 Mon Sep 17 00:00:00 2001 From: Dominik Ermel Date: Wed, 20 Oct 2021 12:56:23 +0000 Subject: [PATCH] mgmt/mcumgr/lib: Remove non-Zephyr code The commit removes MYNEWT sepcific code and code that has been conditionally compiled with "ifndef _ZEPHYR_". Signed-off-by: Dominik Ermel --- .../lib/cborattr/include/cborattr/cborattr.h | 69 ------ .../mgmt/mcumgr/lib/cborattr/src/cborattr.c | 229 ------------------ .../lib/cborattr/test/src/test_cborattr.c | 12 - .../fs_mgmt/include/fs_mgmt/fs_mgmt_config.h | 19 -- .../include/img_mgmt/img_mgmt_config.h | 21 -- .../os_mgmt/include/os_mgmt/os_mgmt_config.h | 18 -- .../include/shell_mgmt/shell_mgmt_config.h | 17 -- .../include/stat_mgmt/stat_mgmt_config.h | 16 -- 8 files changed, 401 deletions(-) diff --git a/subsys/mgmt/mcumgr/lib/cborattr/include/cborattr/cborattr.h b/subsys/mgmt/mcumgr/lib/cborattr/include/cborattr/cborattr.h index d025e6404d0..ef773c5eb83 100644 --- a/subsys/mgmt/mcumgr/lib/cborattr/include/cborattr/cborattr.h +++ b/subsys/mgmt/mcumgr/lib/cborattr/include/cborattr/cborattr.h @@ -28,10 +28,6 @@ #include #include "tinycbor/cbor.h" -#ifdef MYNEWT -#include -#endif - #ifdef __cplusplus extern "C" { #endif @@ -127,44 +123,6 @@ struct cbor_attr_t { bool nodefault; }; -#ifndef __ZEPHYR__ -/** An array value to be encoded as CBOR. */ -struct cbor_out_arr_val_t { - struct cbor_out_val_t *elems; - size_t len; -}; - -/** A single value to be encoded as CBOR. */ -struct cbor_out_val_t { - /** The type of data. */ - CborAttrType type; - - /** The data value. */ - union { - long long int integer; - long long unsigned int uinteger; - double real; - float fval; - uint16_t halffloat; - const char *string; - bool boolean; - struct { - const uint8_t *data; - size_t len; - } bytestring; - struct cbor_out_arr_val_t array; - struct cbor_out_attr_t *obj; /* Terminated with a type=0 entry. */ - }; -}; - -/** An object key-value pair to be encoded as CBOR. */ -struct cbor_out_attr_t { - const char *attribute; /** The attribute name (key). */ - struct cbor_out_val_t val; /** The attribute value. */ - bool omit; /** Attribute ignored if true. */ -}; -#endif - /* * Use the following macros to declare template initializers for * CborAttrStructObjectType arrays. Writing the equivalents out by hand is @@ -192,33 +150,6 @@ int cbor_read_array(struct CborValue *, const struct cbor_array_t *); int cbor_read_flat_attrs(const uint8_t *data, int len, const struct cbor_attr_t *attrs); -#ifdef MYNEWT -int cbor_read_mbuf_attrs(struct os_mbuf *m, uint16_t off, uint16_t len, - const struct cbor_attr_t *attrs); - -/** - * @brief Encodes a CBOR representation of the specified key-value map. - * - * @param enc The CBOR encoder to write to. - * @param attrs The key-value map to encode. - * - * @return 0 on success; SYS_E[...] error on failure. - */ -int cbor_write_object(struct CborEncoder *enc, - const struct cbor_out_attr_t *attrs); - -/** - * @brief Encodes a CBOR representation of the specified key-value map into an - * msys mbuf chain. - * - * @param attrs The key-value map to encode. - * @param out_om On success, points to the populate mbuf chain. - * - * @return 0 on success; SYS_E[...] error on failure. - */ -int cbor_write_object_msys(const struct cbor_out_attr_t *attrs, - struct os_mbuf **out_om); -#endif #ifdef __cplusplus } #endif diff --git a/subsys/mgmt/mcumgr/lib/cborattr/src/cborattr.c b/subsys/mgmt/mcumgr/lib/cborattr/src/cborattr.c index ea686616e08..39980d2b039 100644 --- a/subsys/mgmt/mcumgr/lib/cborattr/src/cborattr.c +++ b/subsys/mgmt/mcumgr/lib/cborattr/src/cborattr.c @@ -21,22 +21,12 @@ #include "tinycbor/cbor.h" #include "tinycbor/cbor_buf_reader.h" -#ifdef __ZEPHYR__ #include #ifdef CONFIG_MGMT_CBORATTR_MAX_SIZE #define CBORATTR_MAX_SIZE CONFIG_MGMT_CBORATTR_MAX_SIZE #else #define CBORATTR_MAX_SIZE 512 #endif -#endif - -#ifdef MYNEWT -#include "syscfg/syscfg.h" -#include "tinycbor/cbor_mbuf_reader.h" -#include "tinycbor/cbor_mbuf_writer.h" -#include "os/os_mbuf.h" -#define CBORATTR_MAX_SIZE MYNEWT_VAL(CBORATTR_MAX_SIZE) -#endif /* this maps a CborType to a matching CborAtter Type. The mapping is not * one-to-one because of signedness of integers @@ -424,222 +414,3 @@ cbor_read_flat_attrs(const uint8_t *data, int len, } return cbor_read_object(&value, attrs); } - -#ifdef MYNEWT -static int cbor_write_val(struct CborEncoder *enc, - const struct cbor_out_val_t *val); - -/* - * Read in cbor key/values from os_mbuf pointed by m, and fill them - * into attrs. - * - * @param m Pointer to os_mbuf containing cbor encoded data - * @param off Offset into mbuf where cbor data begins - * @param len Number of bytes to decode - * @param attrs Array of cbor objects to look for. - * - * @return 0 on success; non-zero on failure. - */ -int -cbor_read_mbuf_attrs(struct os_mbuf *m, uint16_t off, uint16_t len, - const struct cbor_attr_t *attrs) -{ - struct cbor_mbuf_reader cmr; - struct CborParser parser; - struct CborValue value; - CborError err; - - cbor_mbuf_reader_init(&cmr, m, off); - err = cbor_parser_init(&cmr.r, 0, &parser, &value); - if (err != CborNoError) { - return -1; - } - return cbor_read_object(&value, attrs); -} - -static int -cbor_write_arr_val(struct CborEncoder *enc, - const struct cbor_out_arr_val_t *arr) -{ - struct CborEncoder arr_enc; - size_t i; - int rc; - - rc = cbor_encoder_create_array(enc, &arr_enc, arr->len); - if (rc != 0) { - return SYS_ENOMEM; - } - - for (i = 0; i < arr->len; i++) { - rc = cbor_write_val(&arr_enc, &arr->elems[i]); - if (rc != 0) { - return SYS_ENOMEM; - } - } - - rc = cbor_encoder_close_container(enc, &arr_enc); - if (rc != 0) { - return SYS_ENOMEM; - } - - return 0; -} - -static int -cbor_write_val(struct CborEncoder *enc, const struct cbor_out_val_t *val) -{ - int len; - int rc; - - switch (val->type) { - case CborAttrNullType: - rc = cbor_encode_null(enc); - break; - - case CborAttrBooleanType: - rc = cbor_encode_boolean(enc, val->boolean); - break; - - case CborAttrIntegerType: - rc = cbor_encode_int(enc, val->integer); - break; - - case CborAttrUnsignedIntegerType: - rc = cbor_encode_uint(enc, val->uinteger); - break; - -#if FLOAT_SUPPORT - case CborAttrHalfFloatType: - rc = cbor_encode_half_float(enc, &val->halffloat); - break; - - case CborAttrFloatType: - rc = cbor_encode_float(enc, val->fval); - break; - - case CborAttrDoubleType: - rc = cbor_encode_double(enc, val->real); - break; -#endif - - case CborAttrByteStringType: - if (val->bytestring.data == NULL && - val->bytestring.len != 0) { - - return SYS_EINVAL; - } - - rc = cbor_encode_byte_string(enc, val->bytestring.data, - val->bytestring.len); - break; - - case CborAttrTextStringType: - if (val->string == NULL) { - len = 0; - } else { - len = strlen(val->string); - } - rc = cbor_encode_text_string(enc, val->string, len); - break; - - case CborAttrObjectType: - rc = cbor_write_object(enc, val->obj); - break; - - case CborAttrArrayType: - rc = cbor_write_arr_val(enc, &val->array); - break; - - default: - return SYS_ENOTSUP; - } - - if (rc != 0) { - return SYS_ENOMEM; - } - - return 0; -} - -static int -cbor_write_attr(struct CborEncoder *enc, const struct cbor_out_attr_t *attr) -{ - int len; - int rc; - - if (attr->omit) { - return 0; - } - - if (!attr->attribute) { - rc = SYS_EINVAL; - return rc; - } - - len = strlen(attr->attribute); - rc = cbor_encode_text_string(enc, attr->attribute, len); - if (rc != 0) { - return rc; - } - - rc = cbor_write_val(enc, &attr->val); - if (rc != 0) { - return rc; - } - - return 0; -} - -int -cbor_write_object(struct CborEncoder *enc, const struct cbor_out_attr_t *attrs) -{ - const struct cbor_out_attr_t *attr; - struct CborEncoder map; - int rc; - - rc = cbor_encoder_create_map(enc, &map, CborIndefiniteLength); - if (rc != 0) { - return SYS_ENOMEM; - } - - for (attr = attrs; attr->val.type != 0; attr++) { - rc = cbor_write_attr(&map, attr); - if (rc != 0) { - return rc; - } - } - - rc = cbor_encoder_close_container(enc, &map); - if (rc != 0) { - return SYS_ENOMEM; - } - - return 0; -} - -int -cbor_write_object_msys(const struct cbor_out_attr_t *attrs, - struct os_mbuf **out_om) -{ - struct cbor_mbuf_writer writer; - struct CborEncoder encoder; - int rc; - - *out_om = os_msys_get_pkthdr(0, 0); - if (*out_om == NULL) { - return SYS_ENOMEM; - } - - cbor_mbuf_writer_init(&writer, *out_om); - cbor_encoder_init(&encoder, &writer.enc, 0); - - rc = cbor_write_object(&encoder, attrs); - if (rc != 0) { - os_mbuf_free_chain(*out_om); - *out_om = NULL; - return rc; - } - - return 0; -} -#endif diff --git a/subsys/mgmt/mcumgr/lib/cborattr/test/src/test_cborattr.c b/subsys/mgmt/mcumgr/lib/cborattr/test/src/test_cborattr.c index 0a6403953e7..91dba2e0c77 100644 --- a/subsys/mgmt/mcumgr/lib/cborattr/test/src/test_cborattr.c +++ b/subsys/mgmt/mcumgr/lib/cborattr/test/src/test_cborattr.c @@ -35,15 +35,3 @@ TEST_SUITE(test_cborattr_suite) test_cborattr_decode_unnamed_array(); test_cborattr_decode_substring_key(); } - -#if MYNEWT_VAL(SELFTEST) -int -main(int argc, char **argv) -{ - sysinit(); - - test_cborattr_suite(); - - return tu_any_failed; -} -#endif diff --git a/subsys/mgmt/mcumgr/lib/cmd/fs_mgmt/include/fs_mgmt/fs_mgmt_config.h b/subsys/mgmt/mcumgr/lib/cmd/fs_mgmt/include/fs_mgmt/fs_mgmt_config.h index 2fd7ae04b49..4e8c9be7da8 100644 --- a/subsys/mgmt/mcumgr/lib/cmd/fs_mgmt/include/fs_mgmt/fs_mgmt_config.h +++ b/subsys/mgmt/mcumgr/lib/cmd/fs_mgmt/include/fs_mgmt/fs_mgmt_config.h @@ -20,17 +20,6 @@ #ifndef H_FS_MGMT_CONFIG_ #define H_FS_MGMT_CONFIG_ -#if defined MYNEWT - -#include "syscfg/syscfg.h" - -#define FS_MGMT_DL_CHUNK_SIZE MYNEWT_VAL(FS_MGMT_DL_CHUNK_SIZE) -#define FS_MGMT_PATH_SIZE MYNEWT_VAL(FS_MGMT_PATH_SIZE) -#define FS_MGMT_UL_CHUNK_SIZE MYNEWT_VAL(FS_MGMT_UL_CHUNK_SIZE) - -#elif defined __ZEPHYR__ - - #define MCUMGR_BUF_SIZE CONFIG_MCUMGR_BUF_SIZE /* File chunk needs to fit into MCUGMR_BUF_SZIE with all required headers * and other data fields; following information takes space off the @@ -73,12 +62,4 @@ #define FS_MGMT_PATH_SIZE CONFIG_FS_MGMT_PATH_SIZE #define FS_MGMT_UL_CHUNK_SIZE CONFIG_FS_MGMT_UL_CHUNK_SIZE -#else - -/* No direct support for this OS. The application needs to define the above - * settings itself. - */ - -#endif - #endif diff --git a/subsys/mgmt/mcumgr/lib/cmd/img_mgmt/include/img_mgmt/img_mgmt_config.h b/subsys/mgmt/mcumgr/lib/cmd/img_mgmt/include/img_mgmt/img_mgmt_config.h index 6f781aa7f44..862e04b56bb 100644 --- a/subsys/mgmt/mcumgr/lib/cmd/img_mgmt/include/img_mgmt/img_mgmt_config.h +++ b/subsys/mgmt/mcumgr/lib/cmd/img_mgmt/include/img_mgmt/img_mgmt_config.h @@ -25,18 +25,6 @@ /* Image status list will only contain image attributes that are true/non-zero */ #define IMG_MGMT_FRUGAL_LIST 0 -#if defined MYNEWT - -#include "syscfg/syscfg.h" - -#define IMG_MGMT_UL_CHUNK_SIZE MYNEWT_VAL(IMG_MGMT_UL_CHUNK_SIZE) -#define IMG_MGMT_VERBOSE_ERR MYNEWT_VAL(IMG_MGMT_VERBOSE_ERR) -#define IMG_MGMT_LAZY_ERASE MYNEWT_VAL(IMG_MGMT_LAZY_ERASE) -#define IMG_MGMT_DUMMY_HDR MYNEWT_VAL(IMG_MGMT_DUMMY_HDR) -#define IMG_MGMT_BOOT_CURR_SLOT boot_current_slot - -#elif defined __ZEPHYR__ - #define IMG_MGMT_UL_CHUNK_SIZE CONFIG_IMG_MGMT_UL_CHUNK_SIZE #define IMG_MGMT_VERBOSE_ERR CONFIG_IMG_MGMT_VERBOSE_ERR #define IMG_MGMT_LAZY_ERASE CONFIG_IMG_ERASE_PROGRESSIVELY @@ -52,13 +40,4 @@ #define IMG_MGMT_FRUGAL_LIST CONFIG_IMG_MGMT_FRUGAL_LIST #endif -#else - -/* No direct support for this OS. The application needs to define the above - * settings itself. - */ -#error "Unknown OS/missing configuration" - -#endif - #endif diff --git a/subsys/mgmt/mcumgr/lib/cmd/os_mgmt/include/os_mgmt/os_mgmt_config.h b/subsys/mgmt/mcumgr/lib/cmd/os_mgmt/include/os_mgmt/os_mgmt_config.h index 94e99c8b8e4..5ad01e12d7d 100644 --- a/subsys/mgmt/mcumgr/lib/cmd/os_mgmt/include/os_mgmt/os_mgmt_config.h +++ b/subsys/mgmt/mcumgr/lib/cmd/os_mgmt/include/os_mgmt/os_mgmt_config.h @@ -20,26 +20,8 @@ #ifndef H_OS_MGMT_CONFIG_ #define H_OS_MGMT_CONFIG_ -#if defined MYNEWT - -#include "syscfg/syscfg.h" - -#define OS_MGMT_RESET_MS MYNEWT_VAL(OS_MGMT_RESET_MS) -#define OS_MGMT_TASKSTAT MYNEWT_VAL(OS_MGMT_TASKSTAT) -#define OS_MGMT_ECHO MYNEWT_VAL(OS_MGMT_ECHO) - -#elif defined __ZEPHYR__ - #define OS_MGMT_RESET_MS CONFIG_OS_MGMT_RESET_MS #define OS_MGMT_TASKSTAT CONFIG_OS_MGMT_TASKSTAT #define OS_MGMT_ECHO CONFIG_OS_MGMT_ECHO -#else - -/* No direct support for this OS. The application needs to define the above - * settings itself. - */ - -#endif - #endif diff --git a/subsys/mgmt/mcumgr/lib/cmd/shell_mgmt/include/shell_mgmt/shell_mgmt_config.h b/subsys/mgmt/mcumgr/lib/cmd/shell_mgmt/include/shell_mgmt/shell_mgmt_config.h index 60206d72335..f982b9a7f05 100644 --- a/subsys/mgmt/mcumgr/lib/cmd/shell_mgmt/include/shell_mgmt/shell_mgmt_config.h +++ b/subsys/mgmt/mcumgr/lib/cmd/shell_mgmt/include/shell_mgmt/shell_mgmt_config.h @@ -20,24 +20,7 @@ #ifndef H_SHELL_MGMT_CONFIG_ #define H_SHELL_MGMT_CONFIG_ -#if defined MYNEWT - -#include "syscfg/syscfg.h" - -#define SHELL_MGMT_MAX_LINE_LEN MYNEWT_VAL(SHELL_BRIDGE_MAX_IN_LEN) -#define SHELL_MGMT_MAX_ARGC MYNEWT_VAL(SHELL_CMD_ARGC_MAX) - -#elif defined __ZEPHYR__ - #define SHELL_MGMT_MAX_LINE_LEN CONFIG_SHELL_CMD_BUFF_SIZE #define SHELL_MGMT_MAX_ARGC CONFIG_SHELL_ARGC_MAX -#else - -/* No direct support for this OS. The application needs to define the above - * settings itself. - */ - -#endif - #endif diff --git a/subsys/mgmt/mcumgr/lib/cmd/stat_mgmt/include/stat_mgmt/stat_mgmt_config.h b/subsys/mgmt/mcumgr/lib/cmd/stat_mgmt/include/stat_mgmt/stat_mgmt_config.h index 6c7cbcaefb5..255965cdf1d 100644 --- a/subsys/mgmt/mcumgr/lib/cmd/stat_mgmt/include/stat_mgmt/stat_mgmt_config.h +++ b/subsys/mgmt/mcumgr/lib/cmd/stat_mgmt/include/stat_mgmt/stat_mgmt_config.h @@ -20,22 +20,6 @@ #ifndef H_STAT_MGMT_CONFIG_ #define H_STAT_MGMT_CONFIG_ -#if defined MYNEWT - -#include "syscfg/syscfg.h" - -#define STAT_MGMT_MAX_NAME_LEN MYNEWT_VAL(STAT_MGMT_MAX_NAME_LEN) - -#elif defined __ZEPHYR__ - #define STAT_MGMT_MAX_NAME_LEN CONFIG_STAT_MGMT_MAX_NAME_LEN -#else - -/* No direct support for this OS. The application needs to define the above - * settings itself. - */ - -#endif - #endif