msm: ipa: fix division by 0 for DMA pipes

For DMA pipes, bufer size is 0. This commit fixes a
division by 0 in kernel when connecting DMA pipes.

Change-Id: I11551594e5115e71aa116cc7238953205a4118c3
CRs-Fixed: 1085266
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This commit is contained in:
Skylar Chang 2016-11-01 16:48:30 -07:00 committed by Gerrit - the friendly Code Review server
parent 758693b4a6
commit 388eea86fe

View file

@ -1165,8 +1165,11 @@ void ipa_update_repl_threshold(enum ipa_client_type ipa_client)
* Determine how many buffers/descriptors remaining will
* cause to drop below the yellow WM bar.
*/
ep->rx_replenish_threshold = ipa_get_sys_yellow_wm(ep->sys)
/ ep->sys->rx_buff_sz;
if (ep->sys->rx_buff_sz)
ep->rx_replenish_threshold = ipa_get_sys_yellow_wm(ep->sys)
/ ep->sys->rx_buff_sz;
else
ep->rx_replenish_threshold = 0;
}
/**
@ -1361,8 +1364,11 @@ int ipa2_setup_sys_pipe(struct ipa_sys_connect_params *sys_in, u32 *clnt_hdl)
* Determine how many buffers/descriptors remaining will
* cause to drop below the yellow WM bar.
*/
ep->rx_replenish_threshold = ipa_get_sys_yellow_wm(ep->sys)
/ ep->sys->rx_buff_sz;
if (ep->sys->rx_buff_sz)
ep->rx_replenish_threshold =
ipa_get_sys_yellow_wm(ep->sys) / ep->sys->rx_buff_sz;
else
ep->rx_replenish_threshold = 0;
/* Only when the WAN pipes are setup, actual threshold will
* be read from the register. So update LAN_CONS ep again with
* right value.