hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/mailbox/ti-msgmgr.c
....@@ -385,14 +385,20 @@
385385 /* Ensure all unused data is 0 */
386386 data_trail &= 0xFFFFFFFF >> (8 * (sizeof(u32) - trail_bytes));
387387 writel(data_trail, data_reg);
388
- data_reg++;
388
+ data_reg += sizeof(u32);
389389 }
390
+
390391 /*
391392 * 'data_reg' indicates next register to write. If we did not already
392393 * write on tx complete reg(last reg), we must do so for transmit
394
+ * In addition, we also need to make sure all intermediate data
395
+ * registers(if any required), are reset to 0 for TISCI backward
396
+ * compatibility to be maintained.
393397 */
394
- if (data_reg <= qinst->queue_buff_end)
395
- writel(0, qinst->queue_buff_end);
398
+ while (data_reg <= qinst->queue_buff_end) {
399
+ writel(0, data_reg);
400
+ data_reg += sizeof(u32);
401
+ }
396402
397403 return 0;
398404 }