- PIDEP(!dir_in ? USB_PID_IN : USB_PID_OUT, 0));
- if (sl811_send_packet(!dir_in, 1, 0, 0) < 0) {
+ PIDEP(!dir_in ? USB_PID_IN : USB_PID_OUT, ep));
+ usb_settoggle(dev, ep, !usb_pipeout(pipe), 1);
+ if (sl811_send_packet(dev,
+ !dir_in ? usb_rcvctrlpipe(dev, ep) :
+ usb_sndctrlpipe(dev, ep),
+ 0, 0) < 0) {