qcacmn: Get wow nack reason code

Currently, Fw did not set NACK reason code
to Host when Fw is not ready for WoW.

As part of the new change, Fw will send NACK
reason code along with WoW NACK to host.
Make changes in host to parse NACK reason
code from the received message.

Change-Id: I17ee99cb302ff546731a46d3ce03977c3c3d5a67
CRs-Fixed: 3481189
This commit is contained in:
Amit Mehta
2022-02-13 15:57:29 +05:30
zatwierdzone przez Madan Koyyalamudi
rodzic 401b28e1b8
commit dd5f5c1afa
3 zmienionych plików z 14 dodań i 4 usunięć

Wyświetl plik

@@ -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;
}