|
@@ -1,5 +1,6 @@
|
|
|
/*
|
|
|
* Copyright (c) 2013-2021 The Linux Foundation. All rights reserved.
|
|
|
+ * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
|
*
|
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
@@ -394,6 +395,7 @@ QDF_STATUS htc_rx_completion_handler(void *Context, qdf_nbuf_t netbuf,
|
|
|
uint16_t message_id;
|
|
|
HTC_UNKNOWN_MSG *htc_msg;
|
|
|
bool wow_nack;
|
|
|
+ uint16_t reason_code;
|
|
|
|
|
|
/* remove HTC header */
|
|
|
qdf_nbuf_pull_head(netbuf, HTC_HDR_LENGTH);
|
|
@@ -451,24 +453,28 @@ QDF_STATUS htc_rx_completion_handler(void *Context, qdf_nbuf_t netbuf,
|
|
|
#endif
|
|
|
case HTC_MSG_SEND_SUSPEND_COMPLETE:
|
|
|
wow_nack = false;
|
|
|
+ reason_code = 0;
|
|
|
htc_credit_record(HTC_SUSPEND_ACK,
|
|
|
pEndpoint->TxCredits,
|
|
|
HTC_PACKET_QUEUE_DEPTH(
|
|
|
&pEndpoint->TxQueue));
|
|
|
target->HTCInitInfo.TargetSendSuspendComplete(
|
|
|
target->HTCInitInfo.target_psoc,
|
|
|
- wow_nack);
|
|
|
+ wow_nack, reason_code);
|
|
|
|
|
|
break;
|
|
|
case HTC_MSG_NACK_SUSPEND:
|
|
|
wow_nack = true;
|
|
|
+ reason_code = HTC_GET_FIELD(htc_msg,
|
|
|
+ HTC_UNKNOWN_MSG,
|
|
|
+ METADATA);
|
|
|
htc_credit_record(HTC_SUSPEND_ACK,
|
|
|
pEndpoint->TxCredits,
|
|
|
HTC_PACKET_QUEUE_DEPTH(
|
|
|
&pEndpoint->TxQueue));
|
|
|
target->HTCInitInfo.TargetSendSuspendComplete(
|
|
|
target->HTCInitInfo.target_psoc,
|
|
|
- wow_nack);
|
|
|
+ wow_nack, reason_code);
|
|
|
break;
|
|
|
}
|
|
|
|