Make HID device class driver reselect the correct endpoint after the user callbacks...
[pub/USBasp.git] / Demos / Host / LowLevel / MouseHostWithParser / ConfigDescriptor.c
index fa06741..4a71e9c 100644 (file)
@@ -63,7 +63,7 @@ uint8_t ProcessConfigurationDescriptor(void)
                default:\r
                        return ControlError;\r
        }\r
                default:\r
                        return ControlError;\r
        }\r
-       \r
+\r
        /* Get the mouse interface from the configuration descriptor */\r
        if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,\r
                                      DComp_NextMouseInterface) != DESCRIPTOR_SEARCH_COMP_Found)\r
        /* Get the mouse interface from the configuration descriptor */\r
        if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,\r
                                      DComp_NextMouseInterface) != DESCRIPTOR_SEARCH_COMP_Found)\r
@@ -81,18 +81,18 @@ uint8_t ProcessConfigurationDescriptor(void)
        }\r
 \r
        /* Save the HID report size for later use */\r
        }\r
 \r
        /* Save the HID report size for later use */\r
-       HIDReportSize = DESCRIPTOR_CAST(ConfigDescriptorData, USB_Descriptor_HID_t).HIDReportLength;\r
-\r
+       HIDReportSize = DESCRIPTOR_CAST(CurrConfigLocation, USB_Descriptor_HID_t).HIDReportLength;\r
+       \r
        /* Get the mouse interface's data endpoint descriptor */\r
        if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,\r
        /* Get the mouse interface's data endpoint descriptor */\r
        if (USB_GetNextDescriptorComp(&CurrConfigBytesRem, &CurrConfigLocation,\r
-                                     DComp_NextInterfaceMouseDataEndpoint) != DESCRIPTOR_SEARCH_COMP_Found)\r
+                                     DComp_NextMouseInterfaceDataEndpoint) != DESCRIPTOR_SEARCH_COMP_Found)\r
        {\r
                /* Descriptor not found, error out */\r
                return NoEndpointFound;\r
        }\r
        \r
        /* Retrieve the endpoint address from the endpoint descriptor */\r
        {\r
                /* Descriptor not found, error out */\r
                return NoEndpointFound;\r
        }\r
        \r
        /* Retrieve the endpoint address from the endpoint descriptor */\r
-       USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(ConfigDescriptorData, USB_Descriptor_Endpoint_t);\r
+       USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(CurrConfigLocation, USB_Descriptor_Endpoint_t);\r
 \r
        /* Configure the mouse data pipe */\r
        Pipe_ConfigurePipe(MOUSE_DATAPIPE, EP_TYPE_INTERRUPT, PIPE_TOKEN_IN,\r
 \r
        /* Configure the mouse data pipe */\r
        Pipe_ConfigurePipe(MOUSE_DATAPIPE, EP_TYPE_INTERRUPT, PIPE_TOKEN_IN,\r
@@ -134,7 +134,7 @@ uint8_t DComp_NextMouseInterface(void* CurrentDescriptor)
  *\r
  *  \return A value from the DSEARCH_Return_ErrorCodes_t enum\r
  */\r
  *\r
  *  \return A value from the DSEARCH_Return_ErrorCodes_t enum\r
  */\r
-uint8_t DComp_NextInterfaceMouseDataEndpoint(void* CurrentDescriptor)\r
+uint8_t DComp_NextMouseInterfaceDataEndpoint(void* CurrentDescriptor)\r
 {\r
        if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)\r
        {\r
 {\r
        if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)\r
        {\r