Skip to content

Commit

Permalink
cm_networking: Match signedness of flag fields and bit masks
Browse files Browse the repository at this point in the history
Flag fields are unsigned, so bit masks operating on them should be
unsigned as well, to avoid compiler warnings about sign conversions.
  • Loading branch information
MattiasTF committed Nov 5, 2024
1 parent 5a10e8c commit bf5aa1c
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions software/src/modules/cm_networking/cm_networking_defs.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ struct cm_packet_header {
static_assert(CM_PACKET_HEADER_LENGTH == 8, "Unexpected CM_PACKET_HEADER_LENGTH");

#define CM_COMMAND_FLAGS_CPDISC_BIT_POS 6
#define CM_COMMAND_FLAGS_CPDISC_MASK (1 << CM_COMMAND_FLAGS_CPDISC_BIT_POS)
#define CM_COMMAND_FLAGS_CPDISC_MASK (1u << CM_COMMAND_FLAGS_CPDISC_BIT_POS)
#define CM_COMMAND_FLAGS_CPDISC_IS_SET(FLAGS) (((FLAGS) & CM_COMMAND_FLAGS_CPDISC_MASK) != 0)

struct cm_command_v1 {
Expand Down Expand Up @@ -96,56 +96,56 @@ struct cm_command_packet {
static_assert(CM_COMMAND_PACKET_LENGTH == 12, "Unexpected CM_COMMAND_PACKET_LENGTH");

#define CM_FEATURE_FLAGS_PHASE_SWITCH_BIT_POS 7
#define CM_FEATURE_FLAGS_PHASE_SWITCH_MASK (1 << CM_FEATURE_FLAGS_PHASE_SWITCH_BIT_POS)
#define CM_FEATURE_FLAGS_PHASE_SWITCH_MASK (1u << CM_FEATURE_FLAGS_PHASE_SWITCH_BIT_POS)
#define CM_FEATURE_FLAGS_PHASE_SWITCH_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_PHASE_SWITCH_MASK) != 0)
#define CM_FEATURE_FLAGS_CP_DISCONNECT_BIT_POS 6
#define CM_FEATURE_FLAGS_CP_DISCONNECT_MASK (1 << CM_FEATURE_FLAGS_CP_DISCONNECT_BIT_POS)
#define CM_FEATURE_FLAGS_CP_DISCONNECT_MASK (1u << CM_FEATURE_FLAGS_CP_DISCONNECT_BIT_POS)
#define CM_FEATURE_FLAGS_CP_DISCONNECT_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_CP_DISCONNECT_MASK) != 0)
#define CM_FEATURE_FLAGS_EVSE_BIT_POS 5
#define CM_FEATURE_FLAGS_EVSE_MASK (1 << CM_FEATURE_FLAGS_EVSE_BIT_POS)
#define CM_FEATURE_FLAGS_EVSE_MASK (1u << CM_FEATURE_FLAGS_EVSE_BIT_POS)
#define CM_FEATURE_FLAGS_EVSE_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_EVSE_MASK) != 0)
#define CM_FEATURE_FLAGS_NFC_BIT_POS 4
#define CM_FEATURE_FLAGS_NFC_MASK (1 << CM_FEATURE_FLAGS_NFC_BIT_POS)
#define CM_FEATURE_FLAGS_NFC_MASK (1u << CM_FEATURE_FLAGS_NFC_BIT_POS)
#define CM_FEATURE_FLAGS_NFC_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_NFC_MASK) != 0)
#define CM_FEATURE_FLAGS_METER_ALL_VALUES_BIT_POS 3
#define CM_FEATURE_FLAGS_METER_ALL_VALUES_MASK (1 << CM_FEATURE_FLAGS_METER_ALL_VALUES_BIT_POS)
#define CM_FEATURE_FLAGS_METER_ALL_VALUES_MASK (1u << CM_FEATURE_FLAGS_METER_ALL_VALUES_BIT_POS)
#define CM_FEATURE_FLAGS_METER_ALL_VALUES_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_METER_ALL_VALUES_MASK) != 0)
#define CM_FEATURE_FLAGS_METER_PHASES_BIT_POS 2
#define CM_FEATURE_FLAGS_METER_PHASES_MASK (1 << CM_FEATURE_FLAGS_METER_PHASES_BIT_POS)
#define CM_FEATURE_FLAGS_METER_PHASES_MASK (1u << CM_FEATURE_FLAGS_METER_PHASES_BIT_POS)
#define CM_FEATURE_FLAGS_METER_PHASES_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_METER_PHASES_MASK) != 0)
#define CM_FEATURE_FLAGS_METER_BIT_POS 1
#define CM_FEATURE_FLAGS_METER_MASK (1 << CM_FEATURE_FLAGS_METER_BIT_POS)
#define CM_FEATURE_FLAGS_METER_MASK (1u << CM_FEATURE_FLAGS_METER_BIT_POS)
#define CM_FEATURE_FLAGS_METER_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_METER_MASK) != 0)
#define CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_BIT_POS 0
#define CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_MASK (1 << CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_BIT_POS)
#define CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_MASK (1u << CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_BIT_POS)
#define CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_IS_SET(FLAGS) (((FLAGS) & CM_FEATURE_FLAGS_BUTTON_CONFIGURATION_MASK) != 0)

#define CM_STATE_FLAGS_MANAGED_BIT_POS 7
#define CM_STATE_FLAGS_MANAGED_MASK (1 << CM_STATE_FLAGS_MANAGED_BIT_POS)
#define CM_STATE_FLAGS_MANAGED_MASK (1u << CM_STATE_FLAGS_MANAGED_BIT_POS)
#define CM_STATE_FLAGS_MANAGED_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_MANAGED_MASK) != 0)
#define CM_STATE_FLAGS_CP_DISCONNECTED_BIT_POS 6
#define CM_STATE_FLAGS_CP_DISCONNECTED_MASK (1 << CM_STATE_FLAGS_CP_DISCONNECTED_BIT_POS)
#define CM_STATE_FLAGS_CP_DISCONNECTED_MASK (1u << CM_STATE_FLAGS_CP_DISCONNECTED_BIT_POS)
#define CM_STATE_FLAGS_CP_DISCONNECTED_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_CP_DISCONNECTED_MASK) != 0)
#define CM_STATE_FLAGS_L1_CONNECTED_BIT_POS 5
#define CM_STATE_FLAGS_L1_CONNECTED_MASK (1 << CM_STATE_FLAGS_L1_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L1_CONNECTED_MASK (1u << CM_STATE_FLAGS_L1_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L1_CONNECTED_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L1_CONNECTED_MASK) != 0)
#define CM_STATE_FLAGS_L2_CONNECTED_BIT_POS 4
#define CM_STATE_FLAGS_L2_CONNECTED_MASK (1 << CM_STATE_FLAGS_L2_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L2_CONNECTED_MASK (1u << CM_STATE_FLAGS_L2_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L2_CONNECTED_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L2_CONNECTED_MASK) != 0)
#define CM_STATE_FLAGS_L3_CONNECTED_BIT_POS 3
#define CM_STATE_FLAGS_L3_CONNECTED_MASK (1 << CM_STATE_FLAGS_L3_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L3_CONNECTED_MASK (1u << CM_STATE_FLAGS_L3_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_L3_CONNECTED_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L3_CONNECTED_MASK) != 0)
#define CM_STATE_FLAGS_CONNECTED_BIT_POS 3
#define CM_STATE_FLAGS_CONNECTED_MASK (0x7 << CM_STATE_FLAGS_CONNECTED_BIT_POS)
#define CM_STATE_FLAGS_CONNECTED_GET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_CONNECTED_MASK) >> 3)
#define CM_STATE_FLAGS_L1_ACTIVE_BIT_POS 2
#define CM_STATE_FLAGS_L1_ACTIVE_MASK (1 << CM_STATE_FLAGS_L1_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L1_ACTIVE_MASK (1u << CM_STATE_FLAGS_L1_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L1_ACTIVE_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L1_ACTIVE_MASK) != 0)
#define CM_STATE_FLAGS_L2_ACTIVE_BIT_POS 1
#define CM_STATE_FLAGS_L2_ACTIVE_MASK (1 << CM_STATE_FLAGS_L2_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L2_ACTIVE_MASK (1u << CM_STATE_FLAGS_L2_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L2_ACTIVE_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L2_ACTIVE_MASK) != 0)
#define CM_STATE_FLAGS_L3_ACTIVE_BIT_POS 0
#define CM_STATE_FLAGS_L3_ACTIVE_MASK (1 << CM_STATE_FLAGS_L3_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L3_ACTIVE_MASK (1u << CM_STATE_FLAGS_L3_ACTIVE_BIT_POS)
#define CM_STATE_FLAGS_L3_ACTIVE_IS_SET(FLAGS) (((FLAGS) & CM_STATE_FLAGS_L3_ACTIVE_MASK) != 0)
#define CM_STATE_FLAGS_ACTIVE_BIT_POS 0
#define CM_STATE_FLAGS_ACTIVE_MASK (0x7 << CM_STATE_FLAGS_ACTIVE_BIT_POS)
Expand Down Expand Up @@ -210,9 +210,9 @@ struct cm_state_v3 {
};

#define CM_STATE_V3_CAN_PHASE_SWITCH_BIT_POS 2
#define CM_STATE_V3_CAN_PHASE_SWITCH_MASK (1 << CM_STATE_V3_CAN_PHASE_SWITCH_BIT_POS)
#define CM_STATE_V3_CAN_PHASE_SWITCH_MASK (1u << CM_STATE_V3_CAN_PHASE_SWITCH_BIT_POS)
#define CM_STATE_V3_CAN_PHASE_SWITCH_IS_SET(PHASES) (((PHASES) & CM_STATE_V3_CAN_PHASE_SWITCH_MASK) != 0)
#define CM_STATE_V3_PHASES_CONNECTED_MASK 0x03
#define CM_STATE_V3_PHASES_CONNECTED_MASK 0x03u
#define CM_STATE_V3_PHASES_CONNECTED_GET(PHASES) ((PHASES) & CM_STATE_V3_PHASES_CONNECTED_MASK)

#define CM_STATE_V3_LENGTH (sizeof(cm_state_v3))
Expand Down

0 comments on commit bf5aa1c

Please sign in to comment.