drivers/i2c/busses/i2c-designware-amdpsp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
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@semihalf.com>
---
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
--
2.36.0.rc2.479.g8af0fa9b8e-goog
On Thu, Apr 28, 2022 at 02:26:51PM +0200, 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@semihalf.com> Applied to for-next, thanks! Let me know if you think this is a bugfix and should be in for-current.
śr., 4 maj 2022 o 21:55 Wolfram Sang <wsa@kernel.org> napisał(a): > > On Thu, Apr 28, 2022 at 02:26:51PM +0200, 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@semihalf.com> > > Applied to for-next, thanks! Let me know if you think this is a bugfix > and should be in for-current. Sorry for the late response! I believe this is not necessary to include this patch in for-current. Thanks. Best Regards, Jan
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@semihalf.com> > --- > 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? Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
czw., 28 kwi 2022 o 15:07 Jarkko Nikula <jarkko.nikula@linux.intel.com> 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@semihalf.com> > > --- > > 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@linux.intel.com> Thanks! Best Regards, Jan
© 2016 - 2026 Red Hat, Inc.