net: ipa: always handle suspend workaround
authorAlex Elder <elder@linaro.org>
Thu, 2 Jul 2020 11:25:35 +0000 (06:25 -0500)
committerDavid S. Miller <davem@davemloft.net>
Thu, 2 Jul 2020 21:31:20 +0000 (14:31 -0700)
commitfff899716f88f84afef4c952a3d7b8b48a070c4c
treefd4083b793e9007097bfc0e6f47e88a223d0de1f
parent66eba76763fd5689a1e2102d13b7da24cb61974f
net: ipa: always handle suspend workaround

IPA version 3.5.1 has a hardware quirk that requires special
handling if an RX endpoint is suspended while aggregation is active.
This handling is implemented by ipa_endpoint_suspend_aggr().

Have ipa_endpoint_program_suspend() be responsible for calling
ipa_endpoint_suspend_aggr() if suspend mode is being enabled on
an endpoint.  If the endpoint does not support aggregation, or if
aggregation isn't active, this call will continue to have no effect.

Move the definition of ipa_endpoint_suspend_aggr() up in the file so
its definition precedes the new earlier reference to it.  This
requires ipa_endpoint_aggr_active() and ipa_endpoint_force_close()
to be moved as well.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ipa/ipa_endpoint.c