Messages in this thread | | | From | Mark Hasemeyer <> | Subject | [PATCH -next 2/2] i2c: designware: Add support for new SoCs in AMDPSP driver | Date | Fri, 17 Mar 2023 13:18:34 -0600 |
| |
- /* Status field in command-response buffer is updated by PSP */ - status = READ_ONCE(req->hdr.status); + if (req) { + /* Status field in command-response buffer is updated by PSP */ + status = READ_ONCE(req->hdr.status); + } else { + status = psp_smn_read(PSP_MBOX_CMD_OFFSET, &status); + status &= ~PSP_MBOX_FIELDS_READY; + }
The value of the mbox cmd register is getting clobbered by the return value from psp_smn_read. This can cause bus arbitration to fail as the driver will think it can grab the bus when it's actually in use by the PSP.
| |