Просмотр исходного кода

Merge pull request #430 from PanRe/fix-too-strict-iad-checks

Fix too strict checks on subclass and protocol entries of iad descriptor.
Ha Thach 5 лет назад
Родитель
Сommit
8a67f81397
1 измененных файлов с 3 добавлено и 5 удалено
  1. 3 5
      src/device/usbd.c

+ 3 - 5
src/device/usbd.c

@@ -763,11 +763,9 @@ static bool process_set_config(uint8_t rhport, uint8_t cfg_num)
         // If IAD exist, assign all interfaces to the same driver
         if (desc_itf_assoc)
         {
-          // IAD's first interface number and class/subclass/protocol should match with opened interface
-          TU_ASSERT(desc_itf_assoc->bFirstInterface   == desc_itf->bInterfaceNumber   &&
-                    desc_itf_assoc->bFunctionClass    == desc_itf->bInterfaceClass    &&
-                    desc_itf_assoc->bFunctionSubClass == desc_itf->bInterfaceSubClass &&
-                    desc_itf_assoc->bFunctionProtocol == desc_itf->bInterfaceProtocol);
+          // IAD's first interface number and class should match with opened interface
+          TU_ASSERT(desc_itf_assoc->bFirstInterface == desc_itf->bInterfaceNumber &&
+                    desc_itf_assoc->bFunctionClass  == desc_itf->bInterfaceClass);
 
           for(uint8_t i=1; i<desc_itf_assoc->bInterfaceCount; i++)
           {