Re: Continuous streaming SPI transfer

2012-10-04 Thread Mark Brown
On Fri, Sep 28, 2012 at 01:09:25AM +0300, Nuutti Kotivuori wrote:

> There seems to be no way to prevent the deactivation and reactivation of
> the clock and everything between separate transfers - and a single
> transfer is bounded in size and no progress is reported for it. Even
> within a single transfer, it would seem that an earlier transfer is

This sounds more like you've got an IIO application (or audio) than a
SPI one - the hardware is the same but you're thinking about it in a
completely different way and so a separate subsystem makes sense.

--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


Re: [PATCH V2 3/3] spi: spi-pl022: Minor simplification for runtime pm

2012-10-04 Thread Ulf Hansson
Hi,

Mark, I am not sure this particular patch is actually wanted. Realized
that when reading up on the driver/base/* patches for PM changes this
summer. Especially how device probe/suspend/shutdown etc. has been
changed for runtime PM point of view.

Maybe you can comment?

Kind regards
Ulf Hansson

On 4 October 2012 10:04, Ulf Hansson  wrote:
> From: Ulf Hansson 
>
> In probe pm_runtime_put_autosuspend has the same effect as doing
> pm_runtime_put. This due to upper layer in driver core is preventing
> the device from being runtime suspended by a pm_runtime_get*.
>
> Signed-off-by: Ulf Hansson 
> Reviewed-by: Linus Walleij 
> ---
>  drivers/spi/spi-pl022.c |5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
> index a1db91a..51b7a95 100644
> --- a/drivers/spi/spi-pl022.c
> +++ b/drivers/spi/spi-pl022.c
> @@ -2246,10 +2246,9 @@ pl022_probe(struct amba_device *adev, const struct 
> amba_id *id)
> pm_runtime_set_autosuspend_delay(dev,
> platform_info->autosuspend_delay);
> pm_runtime_use_autosuspend(dev);
> -   pm_runtime_put_autosuspend(dev);
> -   } else {
> -   pm_runtime_put(dev);
> }
> +   pm_runtime_put(dev);
> +
> return 0;
>
>   err_spi_register:
> --
> 1.7.10
>

--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


[PATCH V2 2/3] Revert "spi/pl022: enable runtime PM"

2012-10-04 Thread Ulf Hansson
From: Ulf Hansson 

This reverts commit 2fb30d1147c599f5657e8c62c862f9a0f58d9d99.

This patch is reverted due to wrong runtime PM code.

Conflicts:

drivers/spi/spi-pl022.c

Signed-off-by: Ulf Hansson 
Acked-by: Linus Walleij 
---
 drivers/spi/spi-pl022.c |4 
 1 file changed, 4 deletions(-)

diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index 5cf0643..a1db91a 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -2186,9 +2186,6 @@ pl022_probe(struct amba_device *adev, const struct 
amba_id *id)
printk(KERN_INFO "pl022: mapped registers from 0x%08x to %p\n",
   adev->res.start, pl022->virtbase);
 
-   pm_runtime_enable(dev);
-   pm_runtime_resume(dev);
-
pl022->clk = devm_clk_get(&adev->dev, NULL);
if (IS_ERR(pl022->clk)) {
status = PTR_ERR(pl022->clk);
@@ -2293,7 +2290,6 @@ pl022_remove(struct amba_device *adev)
 
clk_disable(pl022->clk);
clk_unprepare(pl022->clk);
-   pm_runtime_disable(&adev->dev);
amba_release_regions(adev);
tasklet_disable(&pl022->pump_transfers);
spi_unregister_master(pl022->master);
-- 
1.7.10


--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


[PATCH V2 0/3] spi: spi-pl022: Fixup use of runtime pm

2012-10-04 Thread Ulf Hansson
From: Ulf Hansson 

Some old runtime pm patches got merged whiched messed up things.
These are now reverted. Additionaly one patch do a simplification
of the use of runtime pm functions.

V2:
Rebased patches and updated commit messages.

Ulf Hansson (3):
  Revert "spi/pl022: fix spi-pl022 pm enable at probe"
  Revert "spi/pl022: enable runtime PM"
  spi: spi-pl022: Minor simplification for runtime pm

 drivers/spi/spi-pl022.c |8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

-- 
1.7.10


--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


[PATCH V2 3/3] spi: spi-pl022: Minor simplification for runtime pm

2012-10-04 Thread Ulf Hansson
From: Ulf Hansson 

In probe pm_runtime_put_autosuspend has the same effect as doing
pm_runtime_put. This due to upper layer in driver core is preventing
the device from being runtime suspended by a pm_runtime_get*.

Signed-off-by: Ulf Hansson 
Reviewed-by: Linus Walleij 
---
 drivers/spi/spi-pl022.c |5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index a1db91a..51b7a95 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -2246,10 +2246,9 @@ pl022_probe(struct amba_device *adev, const struct 
amba_id *id)
pm_runtime_set_autosuspend_delay(dev,
platform_info->autosuspend_delay);
pm_runtime_use_autosuspend(dev);
-   pm_runtime_put_autosuspend(dev);
-   } else {
-   pm_runtime_put(dev);
}
+   pm_runtime_put(dev);
+
return 0;
 
  err_spi_register:
-- 
1.7.10


--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general


[PATCH V2 1/3] Revert "spi/pl022: fix spi-pl022 pm enable at probe"

2012-10-04 Thread Ulf Hansson
From: Ulf Hansson 

This reverts commit 6887237cd7da904184dab2750504040c68f3a080.

This reverts is done due to earlier wrong commit, which is
also reverted. "Revert "spi/pl022: enable runtime PM""

Signed-off-by: Ulf Hansson 
Reviewed-by: Linus Walleij 
---
 drivers/spi/spi-pl022.c |1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index 9194641..5cf0643 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -2186,6 +2186,7 @@ pl022_probe(struct amba_device *adev, const struct 
amba_id *id)
printk(KERN_INFO "pl022: mapped registers from 0x%08x to %p\n",
   adev->res.start, pl022->virtbase);
 
+   pm_runtime_enable(dev);
pm_runtime_resume(dev);
 
pl022->clk = devm_clk_get(&adev->dev, NULL);
-- 
1.7.10


--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general