Skip to content

Commit

Permalink
boot: boot_serial: Add updated SMP header
Browse files Browse the repository at this point in the history
Adds missing fields which were wrongly treated as part of the
operation value, which they were not, and adds a big/little
endian check.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
  • Loading branch information
nordicjm committed Jul 31, 2023
1 parent 36ae4fd commit 61898da
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion boot/boot_serial/src/boot_serial_priv.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,15 @@ extern "C" {
#endif

struct nmgr_hdr {
uint8_t nh_op; /* NMGR_OP_XXX */
#if (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
uint8_t _res1:3;
uint8_t nh_version:2;
uint8_t nh_op:3; /* NMGR_OP_XXX */
#else
uint8_t nh_op:3; /* NMGR_OP_XXX */
uint8_t nh_version:2;
uint8_t _res1:3;
#endif
uint8_t nh_flags;
uint16_t nh_len; /* length of the payload */
uint16_t nh_group; /* NMGR_GROUP_XXX */
Expand Down

0 comments on commit 61898da

Please sign in to comment.