summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/f_sdp.c
diff options
context:
space:
mode:
authorFrank Li <Frank.Li@nxp.com>2018-06-29 03:34:28 -0500
committerFrank Li <Frank.Li@nxp.com>2018-07-16 10:11:30 -0500
commit7d24d618fc00cdd1f6e0f214a5b80d00cb6f9f18 (patch)
tree3b806d4f893edbc4924e4cc723e9c519abe852e6 /drivers/usb/gadget/f_sdp.c
parent7542babca0c1303d469642c346cc927de3facf12 (diff)
MLK-18707-1: SDP: use CONFIG_SDP_LOADADDR as default load address
if SDP_WRITE and SDP_JUMP addr is zero, use CONFIG_SDP_LOADADDR as default address Signed-off-by: Frank Li <Frank.Li@nxp.com> (cherry picked from commit 192a26dbcd88da7d1773bb6336d855c408239d4a)
Diffstat (limited to 'drivers/usb/gadget/f_sdp.c')
-rw-r--r--drivers/usb/gadget/f_sdp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/gadget/f_sdp.c b/drivers/usb/gadget/f_sdp.c
index 26345bbb5c..8920b64421 100644
--- a/drivers/usb/gadget/f_sdp.c
+++ b/drivers/usb/gadget/f_sdp.c
@@ -275,7 +275,7 @@ static void sdp_rx_command_complete(struct usb_ep *ep, struct usb_request *req)
sdp->error_status = SDP_WRITE_FILE_COMPLETE;
sdp->state = SDP_STATE_RX_FILE_DATA;
- sdp->dnl_address = be32_to_cpu(cmd->addr);
+ sdp->dnl_address = cmd->addr ? be32_to_cpu(cmd->addr) : CONFIG_SDP_LOADADDR;
sdp->dnl_bytes_remaining = be32_to_cpu(cmd->cnt);
sdp->next_state = SDP_STATE_IDLE;
@@ -302,7 +302,7 @@ static void sdp_rx_command_complete(struct usb_ep *ep, struct usb_request *req)
sdp->always_send_status = false;
sdp->error_status = 0;
- sdp->jmp_address = be32_to_cpu(cmd->addr);
+ sdp->jmp_address = cmd->addr ? be32_to_cpu(cmd->addr) : CONFIG_SDP_LOADADDR;
sdp->state = SDP_STATE_TX_SEC_CONF;
sdp->next_state = SDP_STATE_JUMP;
break;