use zephyr tincybor instead of mcuboot build-in tinycbor
Zephyr has build-in tinycbor code of version which doesn't
require newlib-c by default. Also the cborattr module is now
taken form the zephyr code.
This patch decrease flash consumption by 10 KB for serial recovery build.
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
diff --git a/boot/boot_serial/src/boot_serial.c b/boot/boot_serial/src/boot_serial.c
index 7467c9f..e23040c 100644
--- a/boot/boot_serial/src/boot_serial.c
+++ b/boot/boot_serial/src/boot_serial.c
@@ -35,6 +35,7 @@
#include <crc16.h>
#include <serial_adapter/serial_adapter.h>
#include <base64.h>
+#include <cbor.h>
#else
#include <bsp/bsp.h>
#include <hal/hal_system.h>
@@ -43,10 +44,10 @@
#include <console/console.h>
#include <crc/crc16.h>
#include <base64/base64.h>
-#endif /* __ZEPHYR__ */
-
#include <tinycbor/cbor.h>
#include <tinycbor/cbor_buf_reader.h>
+#endif /* __ZEPHYR__ */
+
#include <cborattr/cborattr.h>
#include <flash_map/flash_map.h>
@@ -216,7 +217,11 @@
memset(img_data, 0, sizeof(img_data));
cbor_buf_reader_init(&reader, (uint8_t *)buf, len);
+#ifdef __ZEPHYR__
+ cbor_parser_cust_reader_init(&reader.r, 0, &parser, &value);
+#else
cbor_parser_init(&reader.r, 0, &parser, &value);
+#endif
rc = cbor_read_object(&value, attr);
if (rc || off == UINT_MAX) {
rc = MGMT_ERR_EINVAL;
@@ -326,7 +331,11 @@
buf += sizeof(*hdr);
len -= sizeof(*hdr);
bs_writer.bytes_written = 0;
+#ifdef __ZEPHYR__
+ cbor_encoder_cust_writer_init(&bs_root, &bs_writer, 0);
+#else
cbor_encoder_init(&bs_root, &bs_writer, 0);
+#endif
/*
* Limited support for commands.