All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] pinctrl: at91: fix clk handling in suspend/resume funcs
@ 2013-12-15 18:30 ` Boris BREZILLON
  0 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: Jean-Christophe Plagniol-Villard, Linus Walleij, Nicolas Ferre
  Cc: linux-arm-kernel, linux-kernel, Boris BREZILLON

Hello,

This patch series replaces clk_prepare + clk_enable or
clk_disable + clk_unprepare calls by single clk_prepapre_enable and
clk_disable_unprepare calls.

It also fixes the clk disable + unprepare order in the suspend function of the
pinctrl driver (unprepare must be called after disable).

Best Regards,

Boris

Boris BREZILLON (2):
  pinctrl: at91: fix clk_unprepare and clk_disable order
  pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable

 drivers/pinctrl/pinctrl-at91.c |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

-- 
1.7.9.5


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 0/2] pinctrl: at91: fix clk handling in suspend/resume funcs
@ 2013-12-15 18:30 ` Boris BREZILLON
  0 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

This patch series replaces clk_prepare + clk_enable or
clk_disable + clk_unprepare calls by single clk_prepapre_enable and
clk_disable_unprepare calls.

It also fixes the clk disable + unprepare order in the suspend function of the
pinctrl driver (unprepare must be called after disable).

Best Regards,

Boris

Boris BREZILLON (2):
  pinctrl: at91: fix clk_unprepare and clk_disable order
  pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable

 drivers/pinctrl/pinctrl-at91.c |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
  2013-12-15 18:30 ` Boris BREZILLON
@ 2013-12-15 18:30   ` Boris BREZILLON
  -1 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: Jean-Christophe Plagniol-Villard, Linus Walleij, Nicolas Ferre
  Cc: linux-arm-kernel, linux-kernel, Boris BREZILLON

clk_unprepare shall be called before clk_disable.
Fix the issue by replacing the clk_unprepare and clk_disable calls by a
single clk_disable_unprepare call.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
---
 drivers/pinctrl/pinctrl-at91.c |    8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index a7549c4..82f6301 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1339,13 +1339,11 @@ void at91_pinctrl_gpio_suspend(void)
 		__raw_writel(backups[i], pio + PIO_IDR);
 		__raw_writel(wakeups[i], pio + PIO_IER);
 
-		if (!wakeups[i]) {
-			clk_unprepare(gpio_chips[i]->clock);
-			clk_disable(gpio_chips[i]->clock);
-		} else {
+		if (!wakeups[i])
+			clk_disable_unprepare(gpio_chips[i]->clock);
+		else
 			printk(KERN_DEBUG "GPIO-%c may wake for %08x\n",
 			       'A'+i, wakeups[i]);
-		}
 	}
 }
 
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
@ 2013-12-15 18:30   ` Boris BREZILLON
  0 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: linux-arm-kernel

clk_unprepare shall be called before clk_disable.
Fix the issue by replacing the clk_unprepare and clk_disable calls by a
single clk_disable_unprepare call.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
---
 drivers/pinctrl/pinctrl-at91.c |    8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index a7549c4..82f6301 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1339,13 +1339,11 @@ void at91_pinctrl_gpio_suspend(void)
 		__raw_writel(backups[i], pio + PIO_IDR);
 		__raw_writel(wakeups[i], pio + PIO_IER);
 
-		if (!wakeups[i]) {
-			clk_unprepare(gpio_chips[i]->clock);
-			clk_disable(gpio_chips[i]->clock);
-		} else {
+		if (!wakeups[i])
+			clk_disable_unprepare(gpio_chips[i]->clock);
+		else
 			printk(KERN_DEBUG "GPIO-%c may wake for %08x\n",
 			       'A'+i, wakeups[i]);
-		}
 	}
 }
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
  2013-12-15 18:30 ` Boris BREZILLON
@ 2013-12-15 18:30   ` Boris BREZILLON
  -1 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: Jean-Christophe Plagniol-Villard, Linus Walleij, Nicolas Ferre
  Cc: linux-arm-kernel, linux-kernel, Boris BREZILLON

Replace the clk_prepare and clk_enable calls by a single
clk_prepare_enable call.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
---
 drivers/pinctrl/pinctrl-at91.c |    6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index 82f6301..4deb9cb 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1359,10 +1359,8 @@ void at91_pinctrl_gpio_resume(void)
 
 		pio = gpio_chips[i]->regbase;
 
-		if (!wakeups[i]) {
-			if (clk_prepare(gpio_chips[i]->clock) == 0)
-				clk_enable(gpio_chips[i]->clock);
-		}
+		if (!wakeups[i])
+			clk_prepare_enable(gpio_chips[i]->clock);
 
 		__raw_writel(wakeups[i], pio + PIO_IDR);
 		__raw_writel(backups[i], pio + PIO_IER);
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
@ 2013-12-15 18:30   ` Boris BREZILLON
  0 siblings, 0 replies; 14+ messages in thread
From: Boris BREZILLON @ 2013-12-15 18:30 UTC (permalink / raw)
  To: linux-arm-kernel

Replace the clk_prepare and clk_enable calls by a single
clk_prepare_enable call.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
---
 drivers/pinctrl/pinctrl-at91.c |    6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index 82f6301..4deb9cb 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1359,10 +1359,8 @@ void at91_pinctrl_gpio_resume(void)
 
 		pio = gpio_chips[i]->regbase;
 
-		if (!wakeups[i]) {
-			if (clk_prepare(gpio_chips[i]->clock) == 0)
-				clk_enable(gpio_chips[i]->clock);
-		}
+		if (!wakeups[i])
+			clk_prepare_enable(gpio_chips[i]->clock);
 
 		__raw_writel(wakeups[i], pio + PIO_IDR);
 		__raw_writel(backups[i], pio + PIO_IER);
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
  2013-12-15 18:30   ` Boris BREZILLON
@ 2013-12-16  9:56     ` Nicolas Ferre
  -1 siblings, 0 replies; 14+ messages in thread
From: Nicolas Ferre @ 2013-12-16  9:56 UTC (permalink / raw)
  To: Boris BREZILLON, Jean-Christophe Plagniol-Villard, Linus Walleij
  Cc: linux-arm-kernel, linux-kernel

On 15/12/2013 19:30, Boris BREZILLON :
> clk_unprepare shall be called before clk_disable.
> Fix the issue by replacing the clk_unprepare and clk_disable calls by a
> single clk_disable_unprepare call.
> 
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

Thanks.

> ---
>  drivers/pinctrl/pinctrl-at91.c |    8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index a7549c4..82f6301 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1339,13 +1339,11 @@ void at91_pinctrl_gpio_suspend(void)
>  		__raw_writel(backups[i], pio + PIO_IDR);
>  		__raw_writel(wakeups[i], pio + PIO_IER);
>  
> -		if (!wakeups[i]) {
> -			clk_unprepare(gpio_chips[i]->clock);
> -			clk_disable(gpio_chips[i]->clock);
> -		} else {
> +		if (!wakeups[i])
> +			clk_disable_unprepare(gpio_chips[i]->clock);
> +		else
>  			printk(KERN_DEBUG "GPIO-%c may wake for %08x\n",
>  			       'A'+i, wakeups[i]);
> -		}
>  	}
>  }
>  
> 


-- 
Nicolas Ferre

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
@ 2013-12-16  9:56     ` Nicolas Ferre
  0 siblings, 0 replies; 14+ messages in thread
From: Nicolas Ferre @ 2013-12-16  9:56 UTC (permalink / raw)
  To: linux-arm-kernel

On 15/12/2013 19:30, Boris BREZILLON :
> clk_unprepare shall be called before clk_disable.
> Fix the issue by replacing the clk_unprepare and clk_disable calls by a
> single clk_disable_unprepare call.
> 
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

Thanks.

> ---
>  drivers/pinctrl/pinctrl-at91.c |    8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index a7549c4..82f6301 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1339,13 +1339,11 @@ void at91_pinctrl_gpio_suspend(void)
>  		__raw_writel(backups[i], pio + PIO_IDR);
>  		__raw_writel(wakeups[i], pio + PIO_IER);
>  
> -		if (!wakeups[i]) {
> -			clk_unprepare(gpio_chips[i]->clock);
> -			clk_disable(gpio_chips[i]->clock);
> -		} else {
> +		if (!wakeups[i])
> +			clk_disable_unprepare(gpio_chips[i]->clock);
> +		else
>  			printk(KERN_DEBUG "GPIO-%c may wake for %08x\n",
>  			       'A'+i, wakeups[i]);
> -		}
>  	}
>  }
>  
> 


-- 
Nicolas Ferre

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
  2013-12-15 18:30   ` Boris BREZILLON
@ 2013-12-16  9:57     ` Nicolas Ferre
  -1 siblings, 0 replies; 14+ messages in thread
From: Nicolas Ferre @ 2013-12-16  9:57 UTC (permalink / raw)
  To: Boris BREZILLON, Jean-Christophe Plagniol-Villard, Linus Walleij
  Cc: linux-arm-kernel, linux-kernel

On 15/12/2013 19:30, Boris BREZILLON :
> Replace the clk_prepare and clk_enable calls by a single
> clk_prepare_enable call.
> 
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

> ---
>  drivers/pinctrl/pinctrl-at91.c |    6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index 82f6301..4deb9cb 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1359,10 +1359,8 @@ void at91_pinctrl_gpio_resume(void)
>  
>  		pio = gpio_chips[i]->regbase;
>  
> -		if (!wakeups[i]) {
> -			if (clk_prepare(gpio_chips[i]->clock) == 0)
> -				clk_enable(gpio_chips[i]->clock);
> -		}
> +		if (!wakeups[i])
> +			clk_prepare_enable(gpio_chips[i]->clock);
>  
>  		__raw_writel(wakeups[i], pio + PIO_IDR);
>  		__raw_writel(backups[i], pio + PIO_IER);
> 


-- 
Nicolas Ferre

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
@ 2013-12-16  9:57     ` Nicolas Ferre
  0 siblings, 0 replies; 14+ messages in thread
From: Nicolas Ferre @ 2013-12-16  9:57 UTC (permalink / raw)
  To: linux-arm-kernel

On 15/12/2013 19:30, Boris BREZILLON :
> Replace the clk_prepare and clk_enable calls by a single
> clk_prepare_enable call.
> 
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

> ---
>  drivers/pinctrl/pinctrl-at91.c |    6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index 82f6301..4deb9cb 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1359,10 +1359,8 @@ void at91_pinctrl_gpio_resume(void)
>  
>  		pio = gpio_chips[i]->regbase;
>  
> -		if (!wakeups[i]) {
> -			if (clk_prepare(gpio_chips[i]->clock) == 0)
> -				clk_enable(gpio_chips[i]->clock);
> -		}
> +		if (!wakeups[i])
> +			clk_prepare_enable(gpio_chips[i]->clock);
>  
>  		__raw_writel(wakeups[i], pio + PIO_IDR);
>  		__raw_writel(backups[i], pio + PIO_IER);
> 


-- 
Nicolas Ferre

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
  2013-12-15 18:30   ` Boris BREZILLON
@ 2013-12-16 13:22     ` Linus Walleij
  -1 siblings, 0 replies; 14+ messages in thread
From: Linus Walleij @ 2013-12-16 13:22 UTC (permalink / raw)
  To: Boris BREZILLON
  Cc: Jean-Christophe Plagniol-Villard, Nicolas Ferre,
	linux-arm-kernel, linux-kernel

On Sun, Dec 15, 2013 at 7:30 PM, Boris BREZILLON
<b.brezillon@overkiz.com> wrote:

> clk_unprepare shall be called before clk_disable.
> Fix the issue by replacing the clk_unprepare and clk_disable calls by a
> single clk_disable_unprepare call.
>
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Patch applied with Nicolas' ACK.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order
@ 2013-12-16 13:22     ` Linus Walleij
  0 siblings, 0 replies; 14+ messages in thread
From: Linus Walleij @ 2013-12-16 13:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Dec 15, 2013 at 7:30 PM, Boris BREZILLON
<b.brezillon@overkiz.com> wrote:

> clk_unprepare shall be called before clk_disable.
> Fix the issue by replacing the clk_unprepare and clk_disable calls by a
> single clk_disable_unprepare call.
>
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Patch applied with Nicolas' ACK.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
  2013-12-15 18:30   ` Boris BREZILLON
@ 2013-12-16 13:23     ` Linus Walleij
  -1 siblings, 0 replies; 14+ messages in thread
From: Linus Walleij @ 2013-12-16 13:23 UTC (permalink / raw)
  To: Boris BREZILLON
  Cc: Jean-Christophe Plagniol-Villard, Nicolas Ferre,
	linux-arm-kernel, linux-kernel

On Sun, Dec 15, 2013 at 7:30 PM, Boris BREZILLON
<b.brezillon@overkiz.com> wrote:

> Replace the clk_prepare and clk_enable calls by a single
> clk_prepare_enable call.
>
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Patch applied with Nicolas' ACK.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable
@ 2013-12-16 13:23     ` Linus Walleij
  0 siblings, 0 replies; 14+ messages in thread
From: Linus Walleij @ 2013-12-16 13:23 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Dec 15, 2013 at 7:30 PM, Boris BREZILLON
<b.brezillon@overkiz.com> wrote:

> Replace the clk_prepare and clk_enable calls by a single
> clk_prepare_enable call.
>
> Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>

Patch applied with Nicolas' ACK.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2013-12-16 13:23 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-12-15 18:30 [PATCH 0/2] pinctrl: at91: fix clk handling in suspend/resume funcs Boris BREZILLON
2013-12-15 18:30 ` Boris BREZILLON
2013-12-15 18:30 ` [PATCH 1/2] pinctrl: at91: fix clk_unprepare and clk_disable order Boris BREZILLON
2013-12-15 18:30   ` Boris BREZILLON
2013-12-16  9:56   ` Nicolas Ferre
2013-12-16  9:56     ` Nicolas Ferre
2013-12-16 13:22   ` Linus Walleij
2013-12-16 13:22     ` Linus Walleij
2013-12-15 18:30 ` [PATCH 2/2] pinctrl: at91: replace clk_prepare + clk_enable by clk_prepare_enable Boris BREZILLON
2013-12-15 18:30   ` Boris BREZILLON
2013-12-16  9:57   ` Nicolas Ferre
2013-12-16  9:57     ` Nicolas Ferre
2013-12-16 13:23   ` Linus Walleij
2013-12-16 13:23     ` Linus Walleij

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.