Re: [PATCH] i2c: designware: Modify timing parameters for amdpsp mailbox

From: Jan Dąbroś
Date: Thu Apr 28 2022 - 09:42:27 EST


czw., 28 kwi 2022 o 15:07 Jarkko Nikula
<jarkko.nikula@xxxxxxxxxxxxxxx> napisał(a):
>
> On 4/28/22 15:26, Jan Dabros wrote:
> > Adjust retry period and timeout values for x86-PSP mailbox based on the
> > typical I2C traffic generated by PSP. In order to limit the possibility
> > of timeouts, x86 should reduce the interval between retries as well as
> > increase overall time after which it gives up.
> >
> > Signed-off-by: Jan Dabros <jsd@xxxxxxxxxxxx>
> > ---
> > drivers/i2c/busses/i2c-designware-amdpsp.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/i2c/busses/i2c-designware-amdpsp.c b/drivers/i2c/busses/i2c-designware-amdpsp.c
> > index 9b37f2b95abc..b624356c945f 100644
> > --- a/drivers/i2c/busses/i2c-designware-amdpsp.c
> > +++ b/drivers/i2c/busses/i2c-designware-amdpsp.c
> > @@ -16,8 +16,8 @@
> > #define PSP_CMD_TIMEOUT_US (500 * USEC_PER_MSEC)
> >
> > #define PSP_I2C_REQ_BUS_CMD 0x64
> > -#define PSP_I2C_REQ_RETRY_CNT 10
> > -#define PSP_I2C_REQ_RETRY_DELAY_US (50 * USEC_PER_MSEC)
> > +#define PSP_I2C_REQ_RETRY_CNT 400
> > +#define PSP_I2C_REQ_RETRY_DELAY_US (25 * USEC_PER_MSEC)
> > #define PSP_I2C_REQ_STS_OK 0x0
> > #define PSP_I2C_REQ_STS_BUS_BUSY 0x1
> > #define PSP_I2C_REQ_STS_INV_PARAM 0x3
>
> Out of curiosity, can it be up to 400 * 25 ms = 10 s?

Right, worst case x86 is trying to take arbitration of the bus for
10s. But this is very unlikely (margin of safety).

> Acked-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>

Thanks!

Best Regards,
Jan