From f48ae4aad7dea10e318bf82d1b59a75a3c325697 Mon Sep 17 00:00:00 2001 From: Jeff Trull Date: Fri, 10 Feb 2023 15:54:04 -0800 Subject: [PATCH 1/2] Adjust reserved bitfields to make SDCC happy - keep each field at or under 16b - For optimal packing, segment fields to 8b boundaries --- src/class/cdc/cdc.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/class/cdc/cdc.h b/src/class/cdc/cdc.h index 2fecde3cae..842ea4dfee 100644 --- a/src/class/cdc/cdc.h +++ b/src/class/cdc/cdc.h @@ -377,7 +377,9 @@ typedef struct TU_ATTR_PACKED uint32_t incoming_distinctive : 1; ///< 0 : Reports only incoming ringing. 1 : Reports incoming distinctive ringing patterns. uint32_t dual_tone_multi_freq : 1; ///< 0 : Cannot report dual tone multi-frequency (DTMF) digits input remotely over the telephone line. 1 : Can report DTMF digits input remotely over the telephone line. uint32_t line_state_change : 1; ///< 0 : Does not support line state change notification. 1 : Does support line state change notification - uint32_t TU_RESERVED : 26; + uint32_t TU_RESERVED0 : 2; + uint32_t TU_RESERVED1 : 16; + uint32_t TU_RESERVED2 : 4; } bmCapabilities; }cdc_desc_func_telephone_call_state_reporting_capabilities_t; @@ -404,7 +406,8 @@ typedef struct TU_ATTR_PACKED { uint16_t dtr : 1; uint16_t rts : 1; - uint16_t : 14; + uint16_t : 6; + uint16_t : 8; } cdc_line_control_state_t; TU_VERIFY_STATIC(sizeof(cdc_line_control_state_t) == 2, "size is not correct"); From 7e2c5fcc8aa7c39f6c65d7cb85c7d4522b0050be Mon Sep 17 00:00:00 2001 From: Jeff Trull Date: Sun, 12 Feb 2023 20:52:17 -0800 Subject: [PATCH 2/2] Correct bitfields for cdc_desc_func_telephone_call_state_reporting_capabilities_t --- src/class/cdc/cdc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/class/cdc/cdc.h b/src/class/cdc/cdc.h index 842ea4dfee..4658e43afe 100644 --- a/src/class/cdc/cdc.h +++ b/src/class/cdc/cdc.h @@ -379,7 +379,7 @@ typedef struct TU_ATTR_PACKED uint32_t line_state_change : 1; ///< 0 : Does not support line state change notification. 1 : Does support line state change notification uint32_t TU_RESERVED0 : 2; uint32_t TU_RESERVED1 : 16; - uint32_t TU_RESERVED2 : 4; + uint32_t TU_RESERVED2 : 8; } bmCapabilities; }cdc_desc_func_telephone_call_state_reporting_capabilities_t;