Replace blind interface descriptor search in the incomplete AndroidAccessoryHost...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / HID.c
index 683458d..94d09f3 100644 (file)
@@ -357,11 +357,12 @@ uint8_t HID_Host_SetBootProtocol(USB_ClassInfo_HID_Host_t* const HIDInterfaceInf
        return HOST_SENDCONTROL_Successful;
 }
 
        return HOST_SENDCONTROL_Successful;
 }
 
-uint8_t HID_Host_SetIdlePeriod(const uint16_t MS)
+uint8_t HID_Host_SetIdlePeriod(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo,
+                               const uint16_t MS)
 {
        USB_ControlRequest = (USB_Request_Header_t)
                {
 {
        USB_ControlRequest = (USB_Request_Header_t)
                {
-                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),
+                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
                        .bRequest      = HID_REQ_SetIdle,
                        .wValue        = ((MS << 6) & 0xFF00),
                        .wIndex        = HIDInterfaceInfo->State.InterfaceNumber,
                        .bRequest      = HID_REQ_SetIdle,
                        .wValue        = ((MS << 6) & 0xFF00),
                        .wIndex        = HIDInterfaceInfo->State.InterfaceNumber,
@@ -370,7 +371,7 @@ uint8_t HID_Host_SetIdlePeriod(const uint16_t MS)
 
        Pipe_SelectPipe(PIPE_CONTROLPIPE);
 
 
        Pipe_SelectPipe(PIPE_CONTROLPIPE);
 
-       return USB_Host_SendControlRequest(HIDReportData);
+       return USB_Host_SendControlRequest(NULL);
 }
 
 #if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)
 }
 
 #if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)