diff mbox series

[PATCHv3,3/3] pci: pcie_dw_rockchip: Replace msleep occurences by udelay

Message ID 20210604045607.1003-3-linux.amoon@gmail.com
State Superseded
Delegated to: Kever Yang
Headers show
Series [PATCHv3,1/3] pci: pcie_dw_rockchip: Fixed the below compilation error | expand

Commit Message

Anand Moon June 4, 2021, 4:56 a.m. UTC
Replace msleep occurences by udelay.

drivers/pci/pcie_dw_rockchip.c:254:3: warning: implicit
     declaration of function 'msleep' [-Wimplicit-function-declaration]

Cc: Patrick Wildt <patrick@blueri.se>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Kever Yang <kever.yang@rock-chips.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
V2: drop the msleep macro.
---
 drivers/pci/pcie_dw_rockchip.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

Comments

Patrick Wildt June 4, 2021, 3:44 p.m. UTC | #1
Am Fri, Jun 04, 2021 at 04:56:07AM +0000 schrieb Anand Moon:
> Replace msleep occurences by udelay.
> 
> drivers/pci/pcie_dw_rockchip.c:254:3: warning: implicit
>      declaration of function 'msleep' [-Wimplicit-function-declaration]
> 
> Cc: Patrick Wildt <patrick@blueri.se>
> Cc: Neil Armstrong <narmstrong@baylibre.com>
> Cc: Kever Yang <kever.yang@rock-chips.com>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> V2: drop the msleep macro.
> ---
>  drivers/pci/pcie_dw_rockchip.c | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/pci/pcie_dw_rockchip.c b/drivers/pci/pcie_dw_rockchip.c
> index 4e448c0a3d..039266a357 100644
> --- a/drivers/pci/pcie_dw_rockchip.c
> +++ b/drivers/pci/pcie_dw_rockchip.c
> @@ -62,6 +62,7 @@ struct rk_pcie {
>  
>  /* Parameters for the waiting for #perst signal */
>  #define PERST_WAIT_MS			1000
> +#define MACRO_US			1000
>  
>  static int rk_pcie_read(void __iomem *addr, int size, u32 *val)
>  {
> @@ -249,7 +250,7 @@ static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
>  		 * some wired devices need much more, such as 600ms.
>  		 * Add a enough delay to cover all cases.
>  		 */
> -		msleep(PERST_WAIT_MS);
> +		udelay(PERST_WAIT_MS);

You're missing the * MACRO_US here.  I'm not sure though that really
needs a macro for MS to US, or did someone request that?

>  		dm_gpio_set_value(&priv->rst_gpio, 1);
>  	}
>  
> @@ -271,12 +272,12 @@ static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
>  		dev_info(priv->dw.dev, "PCIe Linking... LTSSM is 0x%x\n",
>  			 rk_pcie_readl_apb(priv, PCIE_CLIENT_LTSSM_STATUS));
>  		rk_pcie_debug_dump(priv);
> -		msleep(1000);
> +		udelay(PERST_WAIT_MS * MACRO_US);
>  	}
>  
>  	dev_err(priv->dw.dev, "PCIe-%d Link Fail\n", dev_seq(priv->dw.dev));
>  	/* Link maybe in Gen switch recovery but we need to wait more 1s */
> -	msleep(1000);
> +	udelay(PERST_WAIT_MS * MACRO_US);
>  	return -EIO;
>  }
>  
> @@ -296,7 +297,7 @@ static int rockchip_pcie_init_port(struct udevice *dev)
>  		}
>  	}
>  
> -	msleep(1000);
> +	udelay(PERST_WAIT_MS * MACRO_US);
>  
>  	ret = generic_phy_init(&priv->phy);
>  	if (ret) {
> -- 
> 2.31.1
>
Anand Moon June 5, 2021, 11:56 a.m. UTC | #2
Hi Patrick.

On Fri, 4 Jun 2021 at 21:14, Patrick Wildt <patrick@blueri.se> wrote:
>
> Am Fri, Jun 04, 2021 at 04:56:07AM +0000 schrieb Anand Moon:
> > Replace msleep occurences by udelay.
> >
> > drivers/pci/pcie_dw_rockchip.c:254:3: warning: implicit
> >      declaration of function 'msleep' [-Wimplicit-function-declaration]
> >
> > Cc: Patrick Wildt <patrick@blueri.se>
> > Cc: Neil Armstrong <narmstrong@baylibre.com>
> > Cc: Kever Yang <kever.yang@rock-chips.com>
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > V2: drop the msleep macro.
> > ---
> >  drivers/pci/pcie_dw_rockchip.c | 9 +++++----
> >  1 file changed, 5 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/pci/pcie_dw_rockchip.c b/drivers/pci/pcie_dw_rockchip.c
> > index 4e448c0a3d..039266a357 100644
> > --- a/drivers/pci/pcie_dw_rockchip.c
> > +++ b/drivers/pci/pcie_dw_rockchip.c
> > @@ -62,6 +62,7 @@ struct rk_pcie {
> >
> >  /* Parameters for the waiting for #perst signal */
> >  #define PERST_WAIT_MS                        1000
> > +#define MACRO_US                     1000
> >
> >  static int rk_pcie_read(void __iomem *addr, int size, u32 *val)
> >  {
> > @@ -249,7 +250,7 @@ static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
> >                * some wired devices need much more, such as 600ms.
> >                * Add a enough delay to cover all cases.
> >                */
> > -             msleep(PERST_WAIT_MS);
> > +             udelay(PERST_WAIT_MS);
>
> You're missing the * MACRO_US here.  I'm not sure though that really

Thanks, I forgot to update, it got skipped.

> needs a macro for MS to US, or did someone request that?

Neil suggested something in my review commend.

Please replace msleep occurences by udelay with either:
- udelay(MACRO_MS * 1000)
- udelay(MACRO_US) and replace MACRO_MS with MACRO_US with values *1000

Opps I miss read the request.

Thanks
-Anand
Kever Yang June 8, 2021, 7:06 a.m. UTC | #3
On 2021/6/4 下午12:56, Anand Moon wrote:
> Replace msleep occurences by udelay.
>
> drivers/pci/pcie_dw_rockchip.c:254:3: warning: implicit
>       declaration of function 'msleep' [-Wimplicit-function-declaration]
>
> Cc: Patrick Wildt <patrick@blueri.se>
> Cc: Neil Armstrong <narmstrong@baylibre.com>
> Cc: Kever Yang <kever.yang@rock-chips.com>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>

Reviewed-by: Kever Yang <kever.yang@rock-chips.com>

Thanks,
- Kever
> ---
> V2: drop the msleep macro.
> ---
>   drivers/pci/pcie_dw_rockchip.c | 9 +++++----
>   1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pci/pcie_dw_rockchip.c b/drivers/pci/pcie_dw_rockchip.c
> index 4e448c0a3d..039266a357 100644
> --- a/drivers/pci/pcie_dw_rockchip.c
> +++ b/drivers/pci/pcie_dw_rockchip.c
> @@ -62,6 +62,7 @@ struct rk_pcie {
>   
>   /* Parameters for the waiting for #perst signal */
>   #define PERST_WAIT_MS			1000
> +#define MACRO_US			1000
>   
>   static int rk_pcie_read(void __iomem *addr, int size, u32 *val)
>   {
> @@ -249,7 +250,7 @@ static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
>   		 * some wired devices need much more, such as 600ms.
>   		 * Add a enough delay to cover all cases.
>   		 */
> -		msleep(PERST_WAIT_MS);
> +		udelay(PERST_WAIT_MS);
>   		dm_gpio_set_value(&priv->rst_gpio, 1);
>   	}
>   
> @@ -271,12 +272,12 @@ static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
>   		dev_info(priv->dw.dev, "PCIe Linking... LTSSM is 0x%x\n",
>   			 rk_pcie_readl_apb(priv, PCIE_CLIENT_LTSSM_STATUS));
>   		rk_pcie_debug_dump(priv);
> -		msleep(1000);
> +		udelay(PERST_WAIT_MS * MACRO_US);
>   	}
>   
>   	dev_err(priv->dw.dev, "PCIe-%d Link Fail\n", dev_seq(priv->dw.dev));
>   	/* Link maybe in Gen switch recovery but we need to wait more 1s */
> -	msleep(1000);
> +	udelay(PERST_WAIT_MS * MACRO_US);
>   	return -EIO;
>   }
>   
> @@ -296,7 +297,7 @@ static int rockchip_pcie_init_port(struct udevice *dev)
>   		}
>   	}
>   
> -	msleep(1000);
> +	udelay(PERST_WAIT_MS * MACRO_US);
>   
>   	ret = generic_phy_init(&priv->phy);
>   	if (ret) {
diff mbox series

Patch

diff --git a/drivers/pci/pcie_dw_rockchip.c b/drivers/pci/pcie_dw_rockchip.c
index 4e448c0a3d..039266a357 100644
--- a/drivers/pci/pcie_dw_rockchip.c
+++ b/drivers/pci/pcie_dw_rockchip.c
@@ -62,6 +62,7 @@  struct rk_pcie {
 
 /* Parameters for the waiting for #perst signal */
 #define PERST_WAIT_MS			1000
+#define MACRO_US			1000
 
 static int rk_pcie_read(void __iomem *addr, int size, u32 *val)
 {
@@ -249,7 +250,7 @@  static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
 		 * some wired devices need much more, such as 600ms.
 		 * Add a enough delay to cover all cases.
 		 */
-		msleep(PERST_WAIT_MS);
+		udelay(PERST_WAIT_MS);
 		dm_gpio_set_value(&priv->rst_gpio, 1);
 	}
 
@@ -271,12 +272,12 @@  static int rk_pcie_link_up(struct rk_pcie *priv, u32 cap_speed)
 		dev_info(priv->dw.dev, "PCIe Linking... LTSSM is 0x%x\n",
 			 rk_pcie_readl_apb(priv, PCIE_CLIENT_LTSSM_STATUS));
 		rk_pcie_debug_dump(priv);
-		msleep(1000);
+		udelay(PERST_WAIT_MS * MACRO_US);
 	}
 
 	dev_err(priv->dw.dev, "PCIe-%d Link Fail\n", dev_seq(priv->dw.dev));
 	/* Link maybe in Gen switch recovery but we need to wait more 1s */
-	msleep(1000);
+	udelay(PERST_WAIT_MS * MACRO_US);
 	return -EIO;
 }
 
@@ -296,7 +297,7 @@  static int rockchip_pcie_init_port(struct udevice *dev)
 		}
 	}
 
-	msleep(1000);
+	udelay(PERST_WAIT_MS * MACRO_US);
 
 	ret = generic_phy_init(&priv->phy);
 	if (ret) {