soc: qcom: wcnss_ctrl: Fix increment in NV upload
authorBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 28 Feb 2018 00:45:25 +0000 (16:45 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 30 May 2018 05:52:35 +0000 (07:52 +0200)
commitc1dab7872b32f08a97d4d2ea740153bfc75939a7
tree92dfca828556b0c1c0304da6c067356e2e5309f7
parent0a3b66b55a95ab8a9e2d7a5f6a5ebe2abb1f8fba
soc: qcom: wcnss_ctrl: Fix increment in NV upload

[ Upstream commit 90c29ed7627b6b4aeb603ee197650173c8434512 ]

hdr.len includes both the size of the header and the fragment, so using
this when stepping through the firmware causes us to skip 16 bytes every
chunk of 3072 bytes; causing only the first fragment to actually be
valid data.

Instead use fragment size steps through the firmware blob.

Fixes: ea7a1f275cf0 ("soc: qcom: Introduce WCNSS_CTRL SMD client")
Reported-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/soc/qcom/wcnss_ctrl.c