Lines Matching refs:sdp

240 	struct f_sdp *sdp = req->context;  in sdp_rx_command_complete()  local
263 sdp->always_send_status = false; in sdp_rx_command_complete()
264 sdp->error_status = 0x0; in sdp_rx_command_complete()
266 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
267 sdp->dnl_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
268 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
269 sdp->next_state = SDP_STATE_TX_REGISTER; in sdp_rx_command_complete()
271 sdp->dnl_bytes_remaining, sdp->dnl_address); in sdp_rx_command_complete()
274 sdp->always_send_status = true; in sdp_rx_command_complete()
275 sdp->error_status = SDP_WRITE_FILE_COMPLETE; in sdp_rx_command_complete()
277 sdp->state = SDP_STATE_RX_FILE_DATA; in sdp_rx_command_complete()
278 sdp->dnl_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
279 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
280 sdp->dnl_bytes = sdp->dnl_bytes_remaining; in sdp_rx_command_complete()
281 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
284 sdp->dnl_bytes_remaining, sdp->dnl_address); in sdp_rx_command_complete()
288 sdp->always_send_status = true; in sdp_rx_command_complete()
289 sdp->error_status = 0; in sdp_rx_command_complete()
291 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
292 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
295 sdp->always_send_status = true; in sdp_rx_command_complete()
296 sdp->error_status = SDP_WRITE_REGISTER_COMPLETE; in sdp_rx_command_complete()
298 sdp->state = SDP_STATE_RX_DCD_DATA; in sdp_rx_command_complete()
299 sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt); in sdp_rx_command_complete()
300 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
303 sdp->always_send_status = false; in sdp_rx_command_complete()
304 sdp->error_status = 0; in sdp_rx_command_complete()
306 sdp->jmp_address = be32_to_cpu(cmd->addr); in sdp_rx_command_complete()
307 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
308 sdp->next_state = SDP_STATE_JUMP; in sdp_rx_command_complete()
311 sdp->always_send_status = true; in sdp_rx_command_complete()
312 sdp->error_status = SDP_SKIP_DCD_HEADER_COMPLETE; in sdp_rx_command_complete()
315 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_command_complete()
316 sdp->next_state = SDP_STATE_IDLE; in sdp_rx_command_complete()
325 struct f_sdp *sdp = req->context; in sdp_rx_data_complete() local
341 if (sdp->dnl_bytes_remaining < datalen) { in sdp_rx_data_complete()
347 sdp->dnl_bytes_remaining = 0; in sdp_rx_data_complete()
349 sdp->dnl_bytes_remaining -= datalen; in sdp_rx_data_complete()
352 if (sdp->state == SDP_STATE_RX_FILE_DATA) { in sdp_rx_data_complete()
353 memcpy(sdp_ptr(sdp->dnl_address), req->buf + 1, datalen); in sdp_rx_data_complete()
354 sdp->dnl_address += datalen; in sdp_rx_data_complete()
357 if (sdp->dnl_bytes_remaining) in sdp_rx_data_complete()
361 env_set_hex("filesize", sdp->dnl_bytes); in sdp_rx_data_complete()
365 switch (sdp->state) { in sdp_rx_data_complete()
367 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_data_complete()
370 sdp->state = SDP_STATE_TX_SEC_CONF; in sdp_rx_data_complete()
373 pr_err("Invalid state: %d\n", sdp->state); in sdp_rx_data_complete()
379 struct f_sdp *sdp = req->context; in sdp_tx_complete() local
387 switch (sdp->state) { in sdp_tx_complete()
390 if (sdp->always_send_status || sdp->error_status) in sdp_tx_complete()
391 sdp->state = SDP_STATE_TX_STATUS; in sdp_tx_complete()
393 sdp->state = sdp->next_state; in sdp_tx_complete()
397 sdp->state = sdp->next_state; in sdp_tx_complete()
400 if (sdp->dnl_bytes_remaining) in sdp_tx_complete()
401 sdp->state = SDP_STATE_TX_REGISTER; in sdp_tx_complete()
403 sdp->state = SDP_STATE_IDLE; in sdp_tx_complete()
406 pr_err("Wrong State: %d\n", sdp->state); in sdp_tx_complete()
407 sdp->state = SDP_STATE_IDLE; in sdp_tx_complete()
418 struct f_sdp *sdp = f->config->cdev->req->context; in sdp_setup() local
426 req_type, ctrl->bRequest, sdp->state); in sdp_setup()
433 sdp->configuration_done = true; in sdp_setup()
473 struct f_sdp *sdp = func_to_sdp(f); in sdp_bind() local
490 sdp->in_ep = ep; /* Store IN EP for enabling @ setup */ in sdp_bind()
492 cdev->req->context = sdp; in sdp_bind()
540 struct f_sdp *sdp = func_to_sdp(f); in sdp_set_alt() local
546 result = usb_ep_enable(sdp->in_ep, &in_desc); in sdp_set_alt()
549 sdp->in_req = sdp_start_ep(sdp->in_ep); in sdp_set_alt()
550 sdp->in_req->context = sdp; in sdp_set_alt()
552 sdp->in_ep->driver_data = cdev; /* claim */ in sdp_set_alt()
554 sdp->altsetting = alt; in sdp_set_alt()
555 sdp->state = SDP_STATE_IDLE; in sdp_set_alt()
562 struct f_sdp *sdp = func_to_sdp(f); in sdp_get_alt() local
564 return sdp->altsetting; in sdp_get_alt()
569 struct f_sdp *sdp = func_to_sdp(f); in sdp_disable() local
571 usb_ep_disable(sdp->in_ep); in sdp_disable()
573 if (sdp->in_req) { in sdp_disable()
574 free(sdp->in_req); in sdp_disable()
575 sdp->in_req = NULL; in sdp_disable()