Subversion Repositories freemyipod

Rev

Rev 953 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 953 Rev 964
Line 170... Line 170...
170
    union usb_endpoint_number ep0in = { .number = 0, .direction = USB_ENDPOINT_DIRECTION_IN };
170
    union usb_endpoint_number ep0in = { .number = 0, .direction = USB_ENDPOINT_DIRECTION_IN };
171
    usb_ep0_start_rx(data, false, 0, NULL);
171
    usb_ep0_start_rx(data, false, 0, NULL);
172
    switch (buf[0])
172
    switch (buf[0])
173
    {
173
    {
174
    case 1:  // START MEMORY TRANSFER
174
    case 1:  // START MEMORY TRANSFER
175
            bulk_state[bulk_ctrlreq_ep].addr = (void*)buf[1];
175
        bulk_state[bulk_ctrlreq_ep].addr = (void*)buf[1];
176
            bulk_state[bulk_ctrlreq_ep].size = buf[2];
176
        bulk_state[bulk_ctrlreq_ep].size = buf[2];
177
            usb_set_stall(data, ep0out, true);
177
        usb_set_stall(data, ep0out, true);
178
            usb_ep0_start_tx(data, NULL, 0, NULL);
178
        usb_ep0_start_tx(data, NULL, 0, NULL);
179
            usbdebug_bulk_xfer_complete(data, 0, bulk_ctrlreq_ep, 0);  // Convenient way to start a transfer.
179
        usbdebug_bulk_xfer_complete(data, 0, bulk_ctrlreq_ep, 0);  // Convenient way to start a transfer.
180
            break;
180
        break;
181
    default:
181
    default:
182
        usb_set_stall(data, ep0out, true);
182
        usb_set_stall(data, ep0out, true);
183
        usb_set_stall(data, ep0in, true);
183
        usb_set_stall(data, ep0in, true);
184
        break;
184
        break;
185
    }
185
    }