[PATCH linux dev-4.13 6/6] fsi/fsi-master-gpio: Reduce dpoll clocks
Christopher Bostic
cbostic at linux.vnet.ibm.com
Wed May 9 06:00:04 AEST 2018
Reviewed-by: Christopher Bostic <cbostic at linux.vnet.ibm.com>
On 5/7/18 8:46 PM, Benjamin Herrenschmidt wrote:
> FSI_GPIO_DPOLL_CLOCKS is the number of clocks before sending
> a DPOLL command after receiving a BUSY status. It should be
> at least tSendDelay (16 clocks).
>
> According to comments in the code, it needs to also be at least
> 21 clocks due to HW issues.
>
> It's currently 100 clocks which impacts performances negatively
> in some cases. Reduces it in half to 50 clocks which seems to
> still be solid.
>
> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> ---
> drivers/fsi/fsi-master-gpio.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/fsi/fsi-master-gpio.c b/drivers/fsi/fsi-master-gpio.c
> index 029b0a5b6d89..bd2b2cbd5eb5 100644
> --- a/drivers/fsi/fsi-master-gpio.c
> +++ b/drivers/fsi/fsi-master-gpio.c
> @@ -29,7 +29,8 @@
> #define FSI_GPIO_CMD_TERM 0x3f
> #define FSI_GPIO_CMD_ABS_AR 0x4
>
> -#define FSI_GPIO_DPOLL_CLOCKS 100 /* < 21 will cause slave to hang */
> +
> +#define FSI_GPIO_DPOLL_CLOCKS 50 /* < 21 will cause slave to hang */
>
> /* Bus errors */
> #define FSI_GPIO_ERR_BUSY 1 /* Slave stuck in busy state */
> @@ -43,7 +44,7 @@
> #define FSI_GPIO_RESP_ACK 0
> #define FSI_GPIO_RESP_ACKD 4
>
> -#define FSI_GPIO_MAX_BUSY 100
> +#define FSI_GPIO_MAX_BUSY 200
> #define FSI_GPIO_MTOE_COUNT 1000
> #define FSI_GPIO_DRAIN_BITS 20
> #define FSI_GPIO_CRC_SIZE 4
>
More information about the openbmc
mailing list