Commit 1335b903 authored by Luca Weiss's avatar Luca Weiss Committed by Jakub Kicinski
Browse files

net: ipa: Fix decoding EV_PER_EE for IPA v5.0+

Initially 'reg' and 'val' are assigned from HW_PARAM_2.

But since IPA v5.0+ takes EV_PER_EE from HW_PARAM_4 (instead of
NUM_EV_PER_EE from HW_PARAM_2), we not only need to re-assign 'reg' but
also read the register value of that register into 'val' so that
reg_decode() works on the correct value.

Fixes: f651334e ("net: ipa: add HW_PARAM_4 GSI register")
Link: https://sashiko.dev/#/patchset/20260403-milos-ipa-v1-0-01e9e4e03d3e%40fairphone.com?part=2


Signed-off-by: default avatarLuca Weiss <luca.weiss@fairphone.com>
Reviewed-by: default avatarKonrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://patch.msgid.link/20260409-ipa-fixes-v1-2-a817c30678ac@fairphone.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent de08f958
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2044,6 +2044,7 @@ static int gsi_ring_setup(struct gsi *gsi)
		count = reg_decode(reg, NUM_EV_PER_EE, val);
	} else {
		reg = gsi_reg(gsi, HW_PARAM_4);
		val = ioread32(gsi->virt + reg_offset(reg));
		count = reg_decode(reg, EV_PER_EE, val);
	}
	if (!count) {