soc: swr-mstr: update logic to dump soundwire register
Some soundwire register dump is skipped with current logic. Update ppos logic to dump all soundwire registers correctly. Change-Id: Id053e2b71705ca17caf2de2bb85f8c987790099a Signed-off-by: Meng Wang <mengw@codeaurora.org>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
abe9637cc4
commit
37b25ca9ac
@@ -206,16 +206,11 @@ static ssize_t swrm_reg_show(struct swr_mstr_ctrl *swrm, char __user *ubuf,
|
|||||||
int i, reg_val, len;
|
int i, reg_val, len;
|
||||||
ssize_t total = 0;
|
ssize_t total = 0;
|
||||||
char tmp_buf[SWR_MSTR_MAX_BUF_LEN];
|
char tmp_buf[SWR_MSTR_MAX_BUF_LEN];
|
||||||
int rem = 0;
|
|
||||||
|
|
||||||
if (!ubuf || !ppos)
|
if (!ubuf || !ppos)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
i = ((int) *ppos + SWRM_BASE);
|
i = ((int) *ppos + SWRM_BASE);
|
||||||
rem = i%4;
|
|
||||||
|
|
||||||
if (rem)
|
|
||||||
i = (i - rem);
|
|
||||||
|
|
||||||
for (; i <= SWRM_MAX_REGISTER; i += 4) {
|
for (; i <= SWRM_MAX_REGISTER; i += 4) {
|
||||||
usleep_range(100, 150);
|
usleep_range(100, 150);
|
||||||
@@ -233,7 +228,7 @@ static ssize_t swrm_reg_show(struct swr_mstr_ctrl *swrm, char __user *ubuf,
|
|||||||
total = -EFAULT;
|
total = -EFAULT;
|
||||||
goto copy_err;
|
goto copy_err;
|
||||||
}
|
}
|
||||||
*ppos += len;
|
*ppos += 4;
|
||||||
total += len;
|
total += len;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user