Skip to content

Commit f38cad1

Browse files
author
Memfault Inc
committed
Memfault Firmware SDK 1.7.4 (Build 7065)
1 parent 12832aa commit f38cad1

File tree

85 files changed

+386
-290
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+386
-290
lines changed

CHANGELOG.md

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,30 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to
77
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
88

9+
## [1.7.4] - 2024-03-26
10+
11+
### :chart_with_upwards_trend: Improvements
12+
13+
- nRF-Connect SDK:
14+
15+
- Update the Memfault SDK's nRF-Connect SDK
16+
[example apps](examples/nrf-connect-sdk) to nRF-Connect SDK v2.6.0
17+
18+
- In the Memfault SDK [nRF9160 example app](examples/nrf-connect-sdk/nrf9160),
19+
set the Kconfig flag `CONFIG_DOWNLOAD_CLIENT_HTTP_FRAG_SIZE_1024=y` in
20+
`prj.conf` instead of via a conditional `CMakeLists.txt` expression. This
21+
makes the setting more explicit for users that are referencing the sample
22+
app.
23+
24+
- ESP-IDF:
25+
26+
- Enable disabling the Memfault component by setting the `MEMFAULT_DISABLE=1`
27+
environment variable in the build environment (ex:
28+
`MEMFAULT_DISABLE=1 idf.py build`). This is useful in cases where the
29+
Memfault component can not be n-selected in the application's root
30+
`CMakeLists.txt` but needs to be conditionally excluded, for example when
31+
building a reduced factory firmware image.
32+
933
## [1.7.3] - 2024-03-19
1034

1135
### :chart_with_upwards_trend: Improvements
@@ -571,7 +595,7 @@ and this project adheres to
571595
572596
- Improve the quality of Assert backtraces when using the ARM C Compiler v5.
573597
Certain frames in the assert call stack were missing link register
574-
inforation, due to compiler optimizations based on the `noreturn` and
598+
information, due to compiler optimizations based on the `noreturn` and
575599
unreachable compiler hints. These hints have been removed for `armcc`, which
576600
should permit full stack unwinding for Assert coredumps generated from
577601
builds on that toolchain.
@@ -1293,7 +1317,7 @@ are enough 🤞.
12931317
- Add log capture during coredump to port
12941318
12951319
- Demo CLI
1296-
- Add `mflt test loadaddr` command. This comamnd is used to test specific
1320+
- Add `mflt test loadaddr` command. This command is used to test specific
12971321
faults due to protected regions
12981322
12991323
#### :boom: Breaking Changes
@@ -1330,7 +1354,7 @@ are enough 🤞.
13301354
with Kconfig
13311355
13321356
- The [Heap Stats tracing component](https://mflt.io/mcu-heap-stats) has been
1333-
revamped to make more efficient usage of the bookeeping structure. Usage
1357+
revamped to make more efficient usage of the bookkeeping structure. Usage
13341358
should be the same as before, but now should provide more data without
13351359
significantly expanding the memory utilization.
13361360
@@ -1905,7 +1929,7 @@ Added clarifications around licensing in ports and examples folders. See
19051929

19061930
- Update the STM32 QP/C example ([`examples/qp`](examples/qp)) to compile and
19071931
run correctly now
1908-
- Add intructions for exercising Memfault OTA in the ESP32 example, see the
1932+
- Add instructions for exercising Memfault OTA in the ESP32 example, see the
19091933
"Testing OTA" section in
19101934
[`examples/esp32/README.md`](examples/esp32/README.md)
19111935
- Update the Memfault HTTP client to URL-encode query params when checking for
@@ -2004,7 +2028,7 @@ Added clarifications around licensing in ports and examples folders. See
20042028

20052029
- Updated
20062030
[`modem_key_mgmt_exists`](ports/zephyr/ncs/src/memfault_nrf91_root_cert_storage.c)
2007-
API usage to be compatible with changes upcomming in nRF Connect SDK 1.8.
2031+
API usage to be compatible with changes upcoming in nRF Connect SDK 1.8.
20082032

20092033
### Changes between Memfault SDK 0.26.0 and SDK 0.25.0 - Sept 15, 2021
20102034

@@ -2202,7 +2226,7 @@ Added clarifications around licensing in ports and examples folders. See
22022226

22032227
- Zephyr / nRF Connect SDK port:
22042228
- Made periodic upload a named choice,
2205-
`MEMFAULT_HTTP_PERIODIC_UPLOAD_CONTEXT`, so the default can be overriden
2229+
`MEMFAULT_HTTP_PERIODIC_UPLOAD_CONTEXT`, so the default can be overridden
22062230
from other Kconfig files.
22072231
- Added prompt text for `MEMFAULT_HTTP_DEDICATED_WORKQUEUE_STACK_SIZE`
22082232

@@ -2423,7 +2447,7 @@ Added clarifications around licensing in ports and examples folders. See
24232447
- Dialog DA1468x
24242448
[QSPI coredump storage port](ports/dialog/da1468x/qspi_coredump_storage.c#L1)
24252449
updates:
2426-
- default storage parition (`NVMS_LOG_PART`) can be overridden
2450+
- default storage partition (`NVMS_LOG_PART`) can be overridden
24272451
`MEMFAULT_PLATFORM_COREDUMP_STORAGE_PARTITION`
24282452
- Max space used within partition can be limited using
24292453
`MEMFAULT_PLATFORM_COREDUMP_STORAGE_MAX_SIZE_BYTES`
@@ -2508,7 +2532,7 @@ Added clarifications around licensing in ports and examples folders. See
25082532
#### :house: Internal
25092533

25102534
- [Demo CLI Shell commands](components/demo/src/memfault_demo_shell_commands.c#L50)
2511-
are now defined as weak symbols so they can be overriden with a custom set.
2535+
are now defined as weak symbols so they can be overridden with a custom set.
25122536

25132537
#### :boom: Breaking Changes
25142538

@@ -2848,8 +2872,8 @@ path needs to be updated to `examples`:
28482872
[`ports/freertos/include/memfault/ports/freertos_coredump.h`](ports/freertos/include/memfault/ports/freertos_coredump.h)
28492873
- Previously, if the Memfault event storage buffer was out of space, a "storage
28502874
out of space" error would be printed every time. Now, an error message is
2851-
printed when the issue first happend and an info message is printed when space
2852-
is free again.
2875+
printed when the issue first happened and an info message is printed when
2876+
space is free again.
28532877
- Added a reference software watchdog port for the STM32H7 series LPTIM
28542878
peripheral. Users of the STM32 HAL can now compile in the reference port and
28552879
the `MemfaultWatchdog_Handler`. The handler will save a coredump so the full
@@ -3062,7 +3086,7 @@ void record_temperature(void) {
30623086
#### :chart_with_upwards_trend: Improvements
30633087
30643088
- Fixed a :bug: that would cause the demo shell to get stuck if backspace
3065-
chracters were entered while no other characters had been entered.
3089+
characters were entered while no other characters had been entered.
30663090
- Updated the [GDB chunk test utility](https://mflt.io/send-chunks-via-gdb) to
30673091
automatically detect when the data export API is integrated and post-chunks to
30683092
the cloud directly from GDB when the function is invoked.
@@ -3080,7 +3104,7 @@ void record_temperature(void) {
30803104
30813105
#### :chart_with_upwards_trend: Improvements
30823106
3083-
- Updated code to support compilations with `-Wunused-paramater`, GNU GCC's
3107+
- Updated code to support compilations with `-Wunused-parameter`, GNU GCC's
30843108
`-Wformat-signedness`, and Clang's `-Wno-missing-prototypes` &
30853109
`-Wno-missing-variable-declarations`.
30863110
- Updated unit test setup to compile with newly supported warnings treated as
@@ -3182,7 +3206,7 @@ void record_temperature(void) {
31823206
also make use of two new APIs:
31833207
- `memfault_build_info_dump()` can be called on boot to display the build that
31843208
is running. This can be a useful way to sanity check that your debugger
3185-
succesfully flashed a new image.
3209+
successfully flashed a new image.
31863210
- `memfault_build_info_read()` can be used to read the build id for your own
31873211
use cases. For example you could append a portion of it to a debug version
31883212
to make it unique.
@@ -3219,7 +3243,7 @@ void record_temperature(void) {
32193243

32203244
- Added an assert used internally by the SDK which makes it easier to debug API
32213245
misuse during bringup. The assert is enabled by default but can easily be
3222-
disabled or overriden. For more details see
3246+
disabled or overridden. For more details see
32233247
[`memfault/core/sdk_assert.h`](components/include/memfault/core/sdk_assert.h#L6).
32243248
- Added a default implementation of
32253249
[`memfault_platform_halt_if_debugging()`](components/core/src/arch_arm_cortex_m.c#L20-L34)

VERSION

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
BUILD ID: 6923
2-
GIT COMMIT: 47bd79f60f
3-
VERSION: 1.7.3
1+
BUILD ID: 7065
2+
GIT COMMIT: 3940f71502
3+
VERSION: 1.7.4

components/core/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ your project.
4646
touched by any firmware except for reboot tracking API functions. Reboot info
4747
can be pushed to the event storage for packetization to be sent to Memfault.
4848

49-
# `memfault_trace_event_boot()`: not an allocation but connects a trace event context into the event storge allocation.
49+
# `memfault_trace_event_boot()`: not an allocation but connects a trace event context into the event storage allocation.
5050

5151
- `memfault_log_boot()` to reserve storage for the logging module. The logging
5252
storage gets sent to Memfault as part of the core dump data if enabled.

components/core/src/memfault_build_id_private.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ MEMFAULT_STATIC_ASSERT(((offsetof(sMemfaultBuildIdStorage, type) == 0) &&
5858
extern MEMFAULT_BUILD_ID_QUALIFIER sMemfaultBuildIdStorage g_memfault_build_id;
5959
extern MEMFAULT_BUILD_ID_QUALIFIER uint8_t g_memfault_sdk_derived_build_id[];
6060

61-
//! The layout of a Note section in an ELF. This is how Build Id information is layed out when
61+
//! The layout of a Note section in an ELF. This is how Build Id information is laid out when
6262
//! using kMemfaultBuildIdType_GnuBuildIdSha1
6363
typedef MEMFAULT_PACKED_STRUCT {
6464
uint32_t namesz;

components/demo/src/panics/memfault_demo_panics.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ int memfault_demo_cli_cmd_memmanage(MEMFAULT_UNUSED int argc, MEMFAULT_UNUSED ch
162162
// System space, that is, for addresses 0xE0000000 and higher. System space is always marked as
163163
// XN, Execute Never."
164164
//
165-
// So we can trip a MemManage exception by simply attempting to execute any addresss >=
165+
// So we can trip a MemManage exception by simply attempting to execute any address >=
166166
// 0xE000.0000
167167
void (*bad_func)(void) = (void (*)(void))0xEEEEDEAD;
168168
bad_func();
@@ -213,7 +213,7 @@ int memfault_demo_cli_cmd_dataabort(MEMFAULT_UNUSED int argc, MEMFAULT_UNUSED ch
213213
}
214214

215215
int memfault_demo_cli_cmd_prefetchabort(MEMFAULT_UNUSED int argc, MEMFAULT_UNUSED char *argv[]) {
216-
// We can trip a PrefetchAbort exception by simply attempting to execute any addresss >=
216+
// We can trip a PrefetchAbort exception by simply attempting to execute any address >=
217217
// 0xE000.0000
218218
void (*bad_func)(void) = (void (*)(void))0xEEEEDEAD;
219219
bad_func();

components/include/memfault/core/compiler_gcc.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ extern "C" {
8383
// NB: OSX linker has slightly different placement syntax and requirements
8484
//
8585
// Notably,
86-
// 1. Comma seperated where first item is top level section (i.e __DATA), i.e
86+
// 1. Comma separated where first item is top level section (i.e __DATA), i.e
8787
// __attribute__((section("__DATA," x)))
8888
// 2. total length of name must be between 1-16 characters
8989
//

components/include/memfault/core/custom_data_recording.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ typedef struct MemfaultCdrSourceImpl {
9999
//! @param data The buffer to populate with CDR data
100100
//! @param data_len The size of data to fill in the buffer
101101
//!
102-
//! return true if read was succesful and buf was entirely filled, false otherwise
102+
//! return true if read was successful and buf was entirely filled, false otherwise
103103
bool (*read_data_cb)(uint32_t offset, void *data, size_t data_len);
104104

105105
//! Called once the recording has been processed
@@ -116,7 +116,7 @@ typedef struct MemfaultCdrSourceImpl {
116116
//! @note We recommend invoking this function at bootup and expect that the "impl" passed
117117
//! is of static or global scope
118118
//!
119-
//! @return true if registration was succesful or false if the storage was full. If false is
119+
//! @return true if registration was successful or false if the storage was full. If false is
120120
//! returned MEMFAULT_CDR_MAX_DATA_SOURCES needs to be increased.
121121
bool memfault_cdr_register_source(const sMemfaultCdrSourceImpl *impl);
122122

components/include/memfault/core/errors.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ typedef enum MemfaultInternalReturnCode {
3737
//! A convenience macro for mapping a platform specific error code to a reserved range. For
3838
//! example, this could be used to map the error codes returned from calls to a MCUs flash driver
3939
//! implementation. This way, meaningful error information can still be surfaced for diagnostics.
40-
//! The goal here is to allow a way to avoid the following pattern where a userful error code
40+
//! The goal here is to allow a way to avoid the following pattern where a useful error code
4141
//! always gets mapped down to one value, i.e
4242
//!
4343
//! int rv = some_platform_specific_api()

components/include/memfault/core/log.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ void memfault_log_export_logs(void);
193193
//! Called as part of memfault_log_export() for every time a log message needs to be exported.
194194
//!
195195
//! @note This is a weak function that by default calls `memfault_platform_log_raw`. It can be
196-
//! overriden to change the formatting of the output, as well as where it is stored.
196+
//! overridden to change the formatting of the output, as well as where it is stored.
197197
extern void memfault_log_export_msg(eMemfaultPlatformLogLevel level, const char *msg,
198198
size_t msg_len);
199199

components/include/memfault/core/platform/overrides.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
//! See License.txt for details
77
//!
88
//! @brief
9-
//! Functions that can be optionally overriden by the user of the SDK.
9+
//! Functions that can be optionally overridden by the user of the SDK.
1010
//!
1111
//! Default "weak function" stub definitions are provided for each of these functions
1212
//! in the SDK itself

0 commit comments

Comments
 (0)