Lines Matching refs:sdp

241 	struct f_sdp *sdp = req->context;  in sdp_rx_command_complete()  local
264 sdp->always_send_status = false; in sdp_rx_command_complete()
265 sdp->error_status = 0x0; in sdp_rx_command_complete()
267 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
268 sdp->dnl_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
269 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
270 sdp->next_state = SDP_STATE_TX_REGISTER; in sdp_rx_command_complete()
272 sdp->dnl_bytes_remaining, sdp->dnl_address); in sdp_rx_command_complete()
275 sdp->always_send_status = true; in sdp_rx_command_complete()
276 sdp->error_status = SDP_WRITE_FILE_COMPLETE; in sdp_rx_command_complete()
278 sdp->state = SDP_STATE_RX_FILE_DATA; in sdp_rx_command_complete()
279 sdp->dnl_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
280 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
281 sdp->dnl_bytes = sdp->dnl_bytes_remaining; in sdp_rx_command_complete()
282 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
285 sdp->dnl_bytes_remaining, sdp->dnl_address); in sdp_rx_command_complete()
289 sdp->always_send_status = true; in sdp_rx_command_complete()
290 sdp->error_status = 0; in sdp_rx_command_complete()
292 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
293 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
296 sdp->always_send_status = true; in sdp_rx_command_complete()
297 sdp->error_status = SDP_WRITE_REGISTER_COMPLETE; in sdp_rx_command_complete()
299 sdp->state = SDP_STATE_RX_DCD_DATA; in sdp_rx_command_complete()
300 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
301 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
304 sdp->always_send_status = false; in sdp_rx_command_complete()
305 sdp->error_status = 0; in sdp_rx_command_complete()
307 sdp->jmp_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
308 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
309 sdp->next_state = SDP_STATE_JUMP; in sdp_rx_command_complete()
312 sdp->always_send_status = true; in sdp_rx_command_complete()
313 sdp->error_status = SDP_SKIP_DCD_HEADER_COMPLETE; in sdp_rx_command_complete()
316 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
317 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
326 struct f_sdp *sdp = req->context; in sdp_rx_data_complete() local
342 if (sdp->dnl_bytes_remaining < datalen) { in sdp_rx_data_complete()
348 sdp->dnl_bytes_remaining = 0; in sdp_rx_data_complete()
350 sdp->dnl_bytes_remaining -= datalen; in sdp_rx_data_complete()
353 if (sdp->state == SDP_STATE_RX_FILE_DATA) { in sdp_rx_data_complete()
354 memcpy(sdp_ptr(sdp->dnl_address), req->buf + 1, datalen); in sdp_rx_data_complete()
355 sdp->dnl_address += datalen; in sdp_rx_data_complete()
358 if (sdp->dnl_bytes_remaining) in sdp_rx_data_complete()
362 env_set_hex("filesize", sdp->dnl_bytes); in sdp_rx_data_complete()
366 switch (sdp->state) { in sdp_rx_data_complete()
368 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_data_complete()
371 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_data_complete()
374 pr_err("Invalid state: %d\n", sdp->state); in sdp_rx_data_complete()
380 struct f_sdp *sdp = req->context; in sdp_tx_complete() local
388 switch (sdp->state) { in sdp_tx_complete()
391 if (sdp->always_send_status || sdp->error_status) in sdp_tx_complete()
392 sdp->state = SDP_STATE_TX_STATUS; in sdp_tx_complete()
394 sdp->state = sdp->next_state; in sdp_tx_complete()
398 sdp->state = sdp->next_state; in sdp_tx_complete()
401 if (sdp->dnl_bytes_remaining) in sdp_tx_complete()
402 sdp->state = SDP_STATE_TX_REGISTER; in sdp_tx_complete()
404 sdp->state = SDP_STATE_IDLE; in sdp_tx_complete()
407 pr_err("Wrong State: %d\n", sdp->state); in sdp_tx_complete()
408 sdp->state = SDP_STATE_IDLE; in sdp_tx_complete()
419 struct f_sdp *sdp = f->config->cdev->req->context; in sdp_setup() local
427 req_type, ctrl->bRequest, sdp->state); in sdp_setup()
434 sdp->configuration_done = true; in sdp_setup()
474 struct f_sdp *sdp = func_to_sdp(f); in sdp_bind() local
491 sdp->in_ep = ep; /* Store IN EP for enabling @ setup */ in sdp_bind()
493 cdev->req->context = sdp; in sdp_bind()
541 struct f_sdp *sdp = func_to_sdp(f); in sdp_set_alt() local
547 result = usb_ep_enable(sdp->in_ep, &in_desc); in sdp_set_alt()
550 sdp->in_req = sdp_start_ep(sdp->in_ep); in sdp_set_alt()
551 sdp->in_req->context = sdp; in sdp_set_alt()
553 sdp->in_ep->driver_data = cdev; /* claim */ in sdp_set_alt()
555 sdp->altsetting = alt; in sdp_set_alt()
556 sdp->state = SDP_STATE_IDLE; in sdp_set_alt()
563 struct f_sdp *sdp = func_to_sdp(f); in sdp_get_alt() local
565 return sdp->altsetting; in sdp_get_alt()
570 struct f_sdp *sdp = func_to_sdp(f); in sdp_disable() local
572 usb_ep_disable(sdp->in_ep); in sdp_disable()
574 if (sdp->in_req) { in sdp_disable()
575 free(sdp->in_req); in sdp_disable()
576 sdp->in_req = NULL; in sdp_disable()