On Thu, Feb 07, 2019 at 08:07:08PM -0800, [email protected] wrote:
> From: Tristram Ha <[email protected]>
>
> Replace register polling functions using timeout with readx_poll_time call.
>
> Signed-off-by: Tristram Ha <[email protected]>
> ---
> drivers/net/dsa/microchip/ksz9477.c | 91
> +++++++++++--------------------------
> 1 file changed, 27 insertions(+), 64 deletions(-)
>
> diff --git a/drivers/net/dsa/microchip/ksz9477.c
> b/drivers/net/dsa/microchip/ksz9477.c
> index 4502e13..8391b9e 100644
> --- a/drivers/net/dsa/microchip/ksz9477.c
> +++ b/drivers/net/dsa/microchip/ksz9477.c
> @@ -114,28 +114,11 @@ static void ksz9477_port_cfg32(struct ksz_device *dev,
> int port, int offset,
> data; \
> })
>
> -static int ksz9477_wait_vlan_ctrl_ready(struct ksz_device *dev, u32 waiton,
> - int timeout)
> -{
> - u8 data;
> -
> - do {
> - ksz_read8(dev, REG_SW_VLAN_CTRL, &data);
> - if (!(data & waiton))
> - break;
> - usleep_range(1, 10);
> - } while (timeout-- > 0);
> -
> - if (timeout <= 0)
> - return -ETIMEDOUT;
> -
> - return 0;
Hi Tristram
I think it would be better to keep ksz9477_wait_vlan_ctrl_ready(),
ksz9477_wait_alu_ready() etc, and change there implementation to use
readx_poll_timeout(). The function names act as better documentation
for what we are waiting for than the parameters being passed to
readx_poll_timeout().
Andrew