Blame view
cmd/usb_gadget_sdp.c
1.1 KB
83d290c56 SPDX: Convert all... |
1 |
// SPDX-License-Identifier: GPL-2.0+ |
2f005695d cmd: add sdp command |
2 3 4 5 6 |
/* * cmd_sdp.c -- sdp command * * Copyright (C) 2016 Toradex * Author: Stefan Agner <stefan.agner@toradex.com> |
2f005695d cmd: add sdp command |
7 8 9 10 11 12 13 14 15 |
*/ #include <common.h> #include <g_dnl.h> #include <sdp.h> #include <usb.h> static int do_sdp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { |
25ee92464 usb: gadget: erro... |
16 |
int ret; |
2f005695d cmd: add sdp command |
17 18 19 20 21 22 |
if (argc < 2) return CMD_RET_USAGE; char *usb_controller = argv[1]; int controller_index = simple_strtoul(usb_controller, NULL, 0); |
a06955ae1 usb: gadget: Do n... |
23 |
usb_gadget_initialize(controller_index); |
2f005695d cmd: add sdp command |
24 25 |
g_dnl_clear_detach(); |
25ee92464 usb: gadget: erro... |
26 27 28 29 30 31 |
ret = g_dnl_register("usb_dnl_sdp"); if (ret) { pr_err("SDP dnl register failed: %d ", ret); goto exit_register; } |
2f005695d cmd: add sdp command |
32 33 34 |
ret = sdp_init(controller_index); if (ret) { |
24ccd0c8f usb: gadget: sdp:... |
35 36 |
pr_err("SDP init failed: %d ", ret); |
2f005695d cmd: add sdp command |
37 38 39 40 41 |
goto exit; } /* This command typically does not return but jumps to an image */ sdp_handle(controller_index); |
24ccd0c8f usb: gadget: sdp:... |
42 43 |
pr_err("SDP ended "); |
2f005695d cmd: add sdp command |
44 45 46 |
exit: g_dnl_unregister(); |
25ee92464 usb: gadget: erro... |
47 |
exit_register: |
a06955ae1 usb: gadget: Do n... |
48 |
usb_gadget_release(controller_index); |
2f005695d cmd: add sdp command |
49 |
|
25ee92464 usb: gadget: erro... |
50 |
return CMD_RET_FAILURE; |
2f005695d cmd: add sdp command |
51 52 53 54 55 56 57 58 59 |
} U_BOOT_CMD(sdp, 2, 1, do_sdp, "Serial Downloader Protocol", "<USB_controller> " " - serial downloader protocol via <USB_controller> " ); |