qcacmn: check register writing result for IPA case

When SAP do connection with first Ref-STA or dis-connection with
last Ref_STA, wlan host need to re-configure REO Dst ring control
register. one of the register offset is 0xA38004, host need to write
remap window register (offset 0x310C) with value 0x14 first, but
sometimes this remap window writing not work, so just use the remap
window value 0x3F left by last writing, final Dst register offset will
be 0x1FB8004 which is out of valid range.
  Find that if we read back the remap window after writing is done,
remap window writing failure issue is gone. as a WAR, check register
writing result for this specific register REO_R0_DST_RING_CTRL_IX_0
always before root caused.

Change-Id: I8d385a0f974ff37bdd867d2ec946f2f46f6eff32
CRs-Fixed: 2570728
This commit is contained in:
Jinwei Chen
2019-11-27 11:12:15 +08:00
committed by nshrivas
부모 ba1d5aa876
커밋 a718c757b3
3개의 변경된 파일98개의 추가작업 그리고 40개의 파일을 삭제

파일 보기

@@ -106,11 +106,11 @@
(_reg ## _ ## _fld ## _SHFT))
#define HAL_REG_WRITE(_soc, _reg, _value) \
hal_write32_mb(_soc, (_reg), (_value), false)
hal_write32_mb(_soc, (_reg), (_value))
/* Check register writing result */
#define HAL_REG_WRITE_CONFIRM(_soc, _reg, _value) \
hal_write32_mb(_soc, (_reg), (_value), true)
hal_write32_mb_confirm(_soc, (_reg), (_value))
#define HAL_REG_READ(_soc, _offset) \
hal_read32_mb(_soc, (_offset))