Эх сурвалжийг харах

update(class/cdc): set cdc acm bFunctionProtocol to 0x00

sakumisu 1 жил өмнө
parent
commit
0323ffb424

+ 6 - 6
class/cdc/usb_cdc.h

@@ -421,7 +421,7 @@ struct cdc_ncm_ndp16 {
     0x02,                                                  /* bInterfaceCount */               \
     0x02,                                                  /* bInterfaceCount */               \
     USB_DEVICE_CLASS_CDC,                                  /* bFunctionClass */                \
     USB_DEVICE_CLASS_CDC,                                  /* bFunctionClass */                \
     CDC_ABSTRACT_CONTROL_MODEL,                            /* bFunctionSubClass */             \
     CDC_ABSTRACT_CONTROL_MODEL,                            /* bFunctionSubClass */             \
-    CDC_COMMON_PROTOCOL_AT_COMMANDS,                       /* bFunctionProtocol */             \
+    CDC_COMMON_PROTOCOL_NONE,                              /* bFunctionProtocol */             \
     0x00,                                                  /* iFunction */                     \
     0x00,                                                  /* iFunction */                     \
     0x09,                                                  /* bLength */                       \
     0x09,                                                  /* bLength */                       \
     USB_DESCRIPTOR_TYPE_INTERFACE,                         /* bDescriptorType */               \
     USB_DESCRIPTOR_TYPE_INTERFACE,                         /* bDescriptorType */               \
@@ -430,7 +430,7 @@ struct cdc_ncm_ndp16 {
     0x01,                                                  /* bNumEndpoints */                 \
     0x01,                                                  /* bNumEndpoints */                 \
     USB_DEVICE_CLASS_CDC,                                  /* bInterfaceClass */               \
     USB_DEVICE_CLASS_CDC,                                  /* bInterfaceClass */               \
     CDC_ABSTRACT_CONTROL_MODEL,                            /* bInterfaceSubClass */            \
     CDC_ABSTRACT_CONTROL_MODEL,                            /* bInterfaceSubClass */            \
-    CDC_COMMON_PROTOCOL_AT_COMMANDS,                       /* bInterfaceProtocol */            \
+    CDC_COMMON_PROTOCOL_NONE,                              /* bInterfaceProtocol */            \
     str_idx,                                               /* iInterface */                    \
     str_idx,                                               /* iInterface */                    \
     0x05,                                                  /* bLength */                       \
     0x05,                                                  /* bLength */                       \
     CDC_CS_INTERFACE,                                      /* bDescriptorType */               \
     CDC_CS_INTERFACE,                                      /* bDescriptorType */               \
@@ -489,8 +489,8 @@ struct cdc_ncm_ndp16 {
     bFirstInterface,                                       /* bFirstInterface */               \
     bFirstInterface,                                       /* bFirstInterface */               \
     0x02,                                                  /* bInterfaceCount */               \
     0x02,                                                  /* bInterfaceCount */               \
     USB_DEVICE_CLASS_WIRELESS,                             /* bFunctionClass */                \
     USB_DEVICE_CLASS_WIRELESS,                             /* bFunctionClass */                \
-    CDC_DIRECT_LINE_CONTROL_MODEL,                         /* bFunctionSubClass */             \
-    CDC_COMMON_PROTOCOL_AT_COMMANDS_PCCA_101_AND_ANNEXO,   /* bFunctionProtocol */             \
+    0x01,                                                  /* bFunctionSubClass */             \
+    0x03,                                                  /* bFunctionProtocol */             \
     0x00,                                                  /* iFunction */                     \
     0x00,                                                  /* iFunction */                     \
     0x09,                                                  /* bLength */                       \
     0x09,                                                  /* bLength */                       \
     USB_DESCRIPTOR_TYPE_INTERFACE,                         /* bDescriptorType */               \
     USB_DESCRIPTOR_TYPE_INTERFACE,                         /* bDescriptorType */               \
@@ -498,8 +498,8 @@ struct cdc_ncm_ndp16 {
     0x00,                                                  /* bAlternateSetting */             \
     0x00,                                                  /* bAlternateSetting */             \
     0x01,                                                  /* bNumEndpoints */                 \
     0x01,                                                  /* bNumEndpoints */                 \
     USB_DEVICE_CLASS_WIRELESS,                             /* bInterfaceClass */               \
     USB_DEVICE_CLASS_WIRELESS,                             /* bInterfaceClass */               \
-    CDC_DIRECT_LINE_CONTROL_MODEL,                         /* bInterfaceSubClass */            \
-    CDC_COMMON_PROTOCOL_AT_COMMANDS_PCCA_101_AND_ANNEXO,   /* bInterfaceProtocol */            \
+    0x01,                                                  /* bInterfaceSubClass */            \
+    0x03,                                                  /* bInterfaceProtocol */            \
     str_idx,                                               /* iInterface */                    \
     str_idx,                                               /* iInterface */                    \
     0x05,                                                  /* bLength */                       \
     0x05,                                                  /* bLength */                       \
     CDC_CS_INTERFACE,                                      /* bDescriptorType */               \
     CDC_CS_INTERFACE,                                      /* bDescriptorType */               \

+ 2 - 2
class/cdc/usbh_cdc_acm.c

@@ -266,10 +266,10 @@ const struct usbh_class_driver cdc_data_class_driver = {
 };
 };
 
 
 CLASS_INFO_DEFINE const struct usbh_class_info cdc_acm_class_info = {
 CLASS_INFO_DEFINE const struct usbh_class_info cdc_acm_class_info = {
-    .match_flags = USB_CLASS_MATCH_INTF_CLASS | USB_CLASS_MATCH_INTF_SUBCLASS | USB_CLASS_MATCH_INTF_PROTOCOL,
+    .match_flags = USB_CLASS_MATCH_INTF_CLASS | USB_CLASS_MATCH_INTF_SUBCLASS,
     .class = USB_DEVICE_CLASS_CDC,
     .class = USB_DEVICE_CLASS_CDC,
     .subclass = CDC_ABSTRACT_CONTROL_MODEL,
     .subclass = CDC_ABSTRACT_CONTROL_MODEL,
-    .protocol = CDC_COMMON_PROTOCOL_AT_COMMANDS,
+    .protocol = 0x00,
     .id_table = NULL,
     .id_table = NULL,
     .class_driver = &cdc_acm_class_driver
     .class_driver = &cdc_acm_class_driver
 };
 };