linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
@ 2012-04-11 14:34 Marek Szyprowski
  2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Marek Szyprowski @ 2012-04-11 14:34 UTC (permalink / raw)
  To: linux-arm-kernel

Hi!

These two patches fixes operation of the SYSMMU driver (v12 version [1])
with the new power domain driver based on generic power domains and
runtime pw, which has been merged to Linux kernel v3.4-rc1.

[1] https://lkml.org/lkml/2012/3/15/51

Best regards
Marek Szyprowski
Samsung Poland R&D Center


Patch summary:

Marek Szyprowski (2):
  iommu/exynos: fix runtime pm support
  ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver

 arch/arm/mach-exynos/dev-sysmmu.c |    6 +++++-
 arch/arm/mach-exynos/pm_domains.c |   13 +++++++++++++
 drivers/iommu/exynos-iommu.c      |   20 ++++++++++++++++++--
 3 files changed, 36 insertions(+), 3 deletions(-)

-- 
1.7.1.569.g6f426

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

* [PATCH 1/2] iommu/exynos: fix runtime pm support
  2012-04-11 14:34 [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains Marek Szyprowski
@ 2012-04-11 14:34 ` Marek Szyprowski
  2012-04-11 15:18   ` Sergei Shtylyov
  2012-05-11 21:31   ` Kukjin Kim
  2012-04-11 14:34 ` [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver Marek Szyprowski
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 13+ messages in thread
From: Marek Szyprowski @ 2012-04-11 14:34 UTC (permalink / raw)
  To: linux-arm-kernel

Fix registration to runtime pw and add missing resume callback.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
---
 drivers/iommu/exynos-iommu.c |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c
index b8daf7c..eef924d 100644
--- a/drivers/iommu/exynos-iommu.c
+++ b/drivers/iommu/exynos-iommu.c
@@ -651,8 +651,7 @@ static int exynos_sysmmu_probe(struct platform_device *pdev)
 
 	__set_fault_handler(data, &default_fault_handler);
 
-	if (dev->parent)
-		pm_runtime_enable(dev);
+	pm_runtime_enable(dev);
 
 	dev_dbg(dev, "(%s) Initialized\n", data->dbgname);
 	return 0;
@@ -674,11 +673,28 @@ err_alloc:
 	return ret;
 }
 
+static int exynos_pm_resume(struct device *dev)
+{
+	struct sysmmu_drvdata *data;
+
+	data = dev_get_drvdata(dev);
+
+	if (is_sysmmu_active(data))
+		__exynos_sysmmu_enable(data, data->pgtable, NULL);
+
+	return 0;
+}
+
+const struct dev_pm_ops exynos_pm_ops = {
+	.resume = &exynos_pm_resume,
+};
+
 static struct platform_driver exynos_sysmmu_driver = {
 	.probe		= exynos_sysmmu_probe,
 	.driver		= {
 		.owner		= THIS_MODULE,
 		.name		= "exynos-sysmmu",
+		.pm		= &exynos_pm_ops,
 	}
 };
 
-- 
1.7.1.569.g6f426

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

* [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver
  2012-04-11 14:34 [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains Marek Szyprowski
  2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
@ 2012-04-11 14:34 ` Marek Szyprowski
  2012-04-16 10:09   ` KyongHo Cho
  2012-04-12  8:19 ` [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains KyongHo Cho
  2012-04-16 13:35 ` Subash Patel
  3 siblings, 1 reply; 13+ messages in thread
From: Marek Szyprowski @ 2012-04-11 14:34 UTC (permalink / raw)
  To: linux-arm-kernel

SYSMMU platform devices must be registered before setting up power
domains to let power domain driver to correctly register also SYSMMU
controller devices. This patch also registers SYSMMU controller devices
to respective power domains.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
---
 arch/arm/mach-exynos/dev-sysmmu.c |    6 +++++-
 arch/arm/mach-exynos/pm_domains.c |   13 +++++++++++++
 2 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-exynos/dev-sysmmu.c b/arch/arm/mach-exynos/dev-sysmmu.c
index c5b1ea3..3544638 100644
--- a/arch/arm/mach-exynos/dev-sysmmu.c
+++ b/arch/arm/mach-exynos/dev-sysmmu.c
@@ -271,4 +271,8 @@ static int __init init_sysmmu_platform_device(void)
 
 	return 0;
 }
-arch_initcall(init_sysmmu_platform_device);
+/*
+ * SYSMMU platform devices must be registered before power domains
+ * see pm_domain.c, which use arch_initcall()
+ */
+core_initcall(init_sysmmu_platform_device);
diff --git a/arch/arm/mach-exynos/pm_domains.c b/arch/arm/mach-exynos/pm_domains.c
index 13b3068..51a028d 100644
--- a/arch/arm/mach-exynos/pm_domains.c
+++ b/arch/arm/mach-exynos/pm_domains.c
@@ -21,6 +21,7 @@
 #include <linux/of_address.h>
 
 #include <mach/regs-pmu.h>
+#include <mach/sysmmu.h>
 #include <plat/devs.h>
 
 /*
@@ -155,6 +156,18 @@ static __init int exynos4_pm_init_power_domain(void)
 		pm_genpd_init(&exynos4_pm_domains[idx]->pd, NULL,
 				exynos4_pm_domains[idx]->is_off);
 
+#ifdef CONFIG_EXYNOS_DEV_SYSMMU
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(fimc0), &exynos4_pd_cam);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(fimc1), &exynos4_pd_cam);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(fimc2), &exynos4_pd_cam);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(fimc3), &exynos4_pd_cam);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(jpeg), &exynos4_pd_cam);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(mfc_l), &exynos4_pd_mfc);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(mfc_r), &exynos4_pd_mfc);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(fimd0), &exynos4_pd_lcd0);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(rot), &exynos4_pd_lcd0);
+	exynos_pm_add_dev_to_genpd(&SYSMMU_PLATDEV(tv), &exynos4_pd_tv);
+#endif
 #ifdef CONFIG_S5P_DEV_FIMD0
 	exynos_pm_add_dev_to_genpd(&s5p_device_fimd0, &exynos4_pd_lcd0);
 #endif
-- 
1.7.1.569.g6f426

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

* [PATCH 1/2] iommu/exynos: fix runtime pm support
  2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
@ 2012-04-11 15:18   ` Sergei Shtylyov
  2012-05-11 21:31   ` Kukjin Kim
  1 sibling, 0 replies; 13+ messages in thread
From: Sergei Shtylyov @ 2012-04-11 15:18 UTC (permalink / raw)
  To: linux-arm-kernel

Hello.

Marek Szyprowski wrote:

> Fix registration to runtime pw and add missing resume callback.

> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
> ---
>  drivers/iommu/exynos-iommu.c |   20 ++++++++++++++++++--
>  1 files changed, 18 insertions(+), 2 deletions(-)

> diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c
> index b8daf7c..eef924d 100644
> --- a/drivers/iommu/exynos-iommu.c
> +++ b/drivers/iommu/exynos-iommu.c
[...]
> @@ -674,11 +673,28 @@ err_alloc:
>  	return ret;
>  }
>  
> +static int exynos_pm_resume(struct device *dev)
> +{
> +	struct sysmmu_drvdata *data;
> +
> +	data = dev_get_drvdata(dev);

    Why not do it right in the initializer?

WBR, Sergei

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-11 14:34 [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains Marek Szyprowski
  2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
  2012-04-11 14:34 ` [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver Marek Szyprowski
@ 2012-04-12  8:19 ` KyongHo Cho
  2012-04-14 15:51   ` Kukjin Kim
  2012-04-16 13:35 ` Subash Patel
  3 siblings, 1 reply; 13+ messages in thread
From: KyongHo Cho @ 2012-04-12  8:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
<m.szyprowski@samsung.com> wrote:
> Hi!
>
> These two patches fixes operation of the SYSMMU driver (v12 version [1])
> with the new power domain driver based on generic power domains and
> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>
Thanks, Marek.

Your way of power gating is right
and I will look into the changed runtime PM scheme in Exynos tree.

> [1] https://lkml.org/lkml/2012/3/15/51

Regards,

KyongHo

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-12  8:19 ` [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains KyongHo Cho
@ 2012-04-14 15:51   ` Kukjin Kim
  2012-04-16  9:54     ` KyongHo Cho
  0 siblings, 1 reply; 13+ messages in thread
From: Kukjin Kim @ 2012-04-14 15:51 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/12/12 01:19, KyongHo Cho wrote:
> On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
> <m.szyprowski@samsung.com>  wrote:
>> Hi!
>>
>> These two patches fixes operation of the SYSMMU driver (v12 version [1])
>> with the new power domain driver based on generic power domains and
>> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>>
> Thanks, Marek.
>
> Your way of power gating is right
> and I will look into the changed runtime PM scheme in Exynos tree.
>
KyongHo,

Do you want to upstream this series with your previous sysmmu (cleanup 
and moving) patches?

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-14 15:51   ` Kukjin Kim
@ 2012-04-16  9:54     ` KyongHo Cho
  2012-04-16 10:01       ` Kyungmin Park
  0 siblings, 1 reply; 13+ messages in thread
From: KyongHo Cho @ 2012-04-16  9:54 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Apr 15, 2012 at 12:51 AM, Kukjin Kim <kgene.kim@samsung.com> wrote:
> On 04/12/12 01:19, KyongHo Cho wrote:
>>
>> On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
>> <m.szyprowski@samsung.com> ?wrote:
>>>
>>> Hi!
>>>
>>> These two patches fixes operation of the SYSMMU driver (v12 version [1])
>>> with the new power domain driver based on generic power domains and
>>> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>>>
>> Thanks, Marek.
>>
>> Your way of power gating is right
>> and I will look into the changed runtime PM scheme in Exynos tree.
>>
> KyongHo,
>
> Do you want to upstream this series with your previous sysmmu (cleanup and
> moving) patches?
>

Yes I hope so.
Marek's patch corrects run-time power management in Exynos4 with System MMU.

Thank you.

KyongHo

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-16  9:54     ` KyongHo Cho
@ 2012-04-16 10:01       ` Kyungmin Park
  2012-04-16 10:13         ` KyongHo Cho
  0 siblings, 1 reply; 13+ messages in thread
From: Kyungmin Park @ 2012-04-16 10:01 UTC (permalink / raw)
  To: linux-arm-kernel

On 4/16/12, KyongHo Cho <pullip.cho@samsung.com> wrote:
> On Sun, Apr 15, 2012 at 12:51 AM, Kukjin Kim <kgene.kim@samsung.com> wrote:
>> On 04/12/12 01:19, KyongHo Cho wrote:
>>>
>>> On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
>>> <m.szyprowski@samsung.com>  wrote:
>>>>
>>>> Hi!
>>>>
>>>> These two patches fixes operation of the SYSMMU driver (v12 version [1])
>>>> with the new power domain driver based on generic power domains and
>>>> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>>>>
>>> Thanks, Marek.
>>>
>>> Your way of power gating is right
>>> and I will look into the changed runtime PM scheme in Exynos tree.
>>>
>> KyongHo,
>>
>> Do you want to upstream this series with your previous sysmmu (cleanup and
>> moving) patches?
>>
>
> Yes I hope so.
> Marek's patch corrects run-time power management in Exynos4 with System MMU.

Hi,

Next time, if you give Acked-By or Reviewed_by, then it's more helpful
to determine to merge or not.

Thank you,
Kyungmin Park
>
> Thank you.
>
> KyongHo
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc"
> in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

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

* [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver
  2012-04-11 14:34 ` [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver Marek Szyprowski
@ 2012-04-16 10:09   ` KyongHo Cho
  2012-04-16 10:28     ` Marek Szyprowski
  0 siblings, 1 reply; 13+ messages in thread
From: KyongHo Cho @ 2012-04-16 10:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
<m.szyprowski@samsung.com> wrote:
> SYSMMU platform devices must be registered before setting up power
> domains to let power domain driver to correctly register also SYSMMU
> controller devices. This patch also registers SYSMMU controller devices
> to respective power domains.
>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
> ---
> ?arch/arm/mach-exynos/dev-sysmmu.c | ? ?6 +++++-
> ?arch/arm/mach-exynos/pm_domains.c | ? 13 +++++++++++++
> ?2 files changed, 18 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-exynos/dev-sysmmu.c b/arch/arm/mach-exynos/dev-sysmmu.c
> index c5b1ea3..3544638 100644
> --- a/arch/arm/mach-exynos/dev-sysmmu.c
> +++ b/arch/arm/mach-exynos/dev-sysmmu.c
> @@ -271,4 +271,8 @@ static int __init init_sysmmu_platform_device(void)
>
> ? ? ? ?return 0;
> ?}
> -arch_initcall(init_sysmmu_platform_device);
> +/*
> + * SYSMMU platform devices must be registered before power domains
> + * see pm_domain.c, which use arch_initcall()
> + */
> +core_initcall(init_sysmmu_platform_device);
I don't understand why init_sysmmu_platform_device() must be called before
exynos4_pm_init_power_domain()?

Other devices also added by an arch_initcall() function which calls
mdesc->init_machine().
I also was unable to find any reason to add devices before registering
the devices
to pm domain.

Regards,

KyongHo.

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-16 10:01       ` Kyungmin Park
@ 2012-04-16 10:13         ` KyongHo Cho
  0 siblings, 0 replies; 13+ messages in thread
From: KyongHo Cho @ 2012-04-16 10:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Apr 16, 2012 at 7:01 PM, Kyungmin Park
<kyungmin.park@samsung.com> wrote:
> On 4/16/12, KyongHo Cho <pullip.cho@samsung.com> wrote:
>> On Sun, Apr 15, 2012 at 12:51 AM, Kukjin Kim <kgene.kim@samsung.com> wrote:
>>> On 04/12/12 01:19, KyongHo Cho wrote:
>>>>
>>>> On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
>>>> <m.szyprowski@samsung.com> ?wrote:
>>>>>
>>>>> Hi!
>>>>>
>>>>> These two patches fixes operation of the SYSMMU driver (v12 version [1])
>>>>> with the new power domain driver based on generic power domains and
>>>>> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>>>>>
>>>> Thanks, Marek.
>>>>
>>>> Your way of power gating is right
>>>> and I will look into the changed runtime PM scheme in Exynos tree.
>>>>
>>> KyongHo,
>>>
>>> Do you want to upstream this series with your previous sysmmu (cleanup and
>>> moving) patches?
>>>
>>
>> Yes I hope so.
>> Marek's patch corrects run-time power management in Exynos4 with System MMU.
>
> Hi,
>
> Next time, if you give Acked-By or Reviewed_by, then it's more helpful
> to determine to merge or not.
>

I did not Ack it since he did not CC me.
But, as you mentioned, I need to add my Reviewed-by after reviewing it.

Thank you.

KyongHo.

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

* [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver
  2012-04-16 10:09   ` KyongHo Cho
@ 2012-04-16 10:28     ` Marek Szyprowski
  0 siblings, 0 replies; 13+ messages in thread
From: Marek Szyprowski @ 2012-04-16 10:28 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On Monday, April 16, 2012 12:10 PM KyongHo Cho wrote:

> On Wed, Apr 11, 2012 at 11:34 PM, Marek Szyprowski
> <m.szyprowski@samsung.com> wrote:
> > SYSMMU platform devices must be registered before setting up power
> > domains to let power domain driver to correctly register also SYSMMU
> > controller devices. This patch also registers SYSMMU controller devices
> > to respective power domains.
> >
> > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
> > ---
> > ?arch/arm/mach-exynos/dev-sysmmu.c | ? ?6 +++++-
> > ?arch/arm/mach-exynos/pm_domains.c | ? 13 +++++++++++++
> > ?2 files changed, 18 insertions(+), 1 deletions(-)
> >
> > diff --git a/arch/arm/mach-exynos/dev-sysmmu.c b/arch/arm/mach-exynos/dev-sysmmu.c
> > index c5b1ea3..3544638 100644
> > --- a/arch/arm/mach-exynos/dev-sysmmu.c
> > +++ b/arch/arm/mach-exynos/dev-sysmmu.c
> > @@ -271,4 +271,8 @@ static int __init init_sysmmu_platform_device(void)
> >
> > ? ? ? ?return 0;
> > ?}
> > -arch_initcall(init_sysmmu_platform_device);
> > +/*
> > + * SYSMMU platform devices must be registered before power domains
> > + * see pm_domain.c, which use arch_initcall()
> > + */
> > +core_initcall(init_sysmmu_platform_device);
> I don't understand why init_sysmmu_platform_device() must be called before
> exynos4_pm_init_power_domain()?
> 
> Other devices also added by an arch_initcall() function which calls
> mdesc->init_machine().
> I also was unable to find any reason to add devices before registering
> the devices to pm domain.

mdesc->init_machine is called before exynos4_pm_init_power_domain() from 
arch/arm/mach-exynos/pm_domain.c, although both are started from arch_initcall.
In this case the order of linking defines the order of calls.

exynos4_pm_init_power_domain() calls exynos_pm_add_dev_to_genpd() which in turn
checks for pdev->dev.bus. All devices which have not been registered yet on the
bus are simply skipped.

Best regards
-- 
Marek Szyprowski
Samsung Poland R&D Center

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

* [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains
  2012-04-11 14:34 [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains Marek Szyprowski
                   ` (2 preceding siblings ...)
  2012-04-12  8:19 ` [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains KyongHo Cho
@ 2012-04-16 13:35 ` Subash Patel
  3 siblings, 0 replies; 13+ messages in thread
From: Subash Patel @ 2012-04-16 13:35 UTC (permalink / raw)
  To: linux-arm-kernel

Hello Marek,

I have tested these patches on origen 3.4-rc2 with sysmmu_v12, and they 
work great ! Thank you for sharing them.

Regards,
Subash

On 04/11/2012 08:04 PM, Marek Szyprowski wrote:
> Hi!
>
> These two patches fixes operation of the SYSMMU driver (v12 version [1])
> with the new power domain driver based on generic power domains and
> runtime pw, which has been merged to Linux kernel v3.4-rc1.
>
> [1] https://lkml.org/lkml/2012/3/15/51
>
> Best regards
> Marek Szyprowski
> Samsung Poland R&D Center
>
>
> Patch summary:
>
> Marek Szyprowski (2):
>    iommu/exynos: fix runtime pm support
>    ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver
>
>   arch/arm/mach-exynos/dev-sysmmu.c |    6 +++++-
>   arch/arm/mach-exynos/pm_domains.c |   13 +++++++++++++
>   drivers/iommu/exynos-iommu.c      |   20 ++++++++++++++++++--
>   3 files changed, 36 insertions(+), 3 deletions(-)
>

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

* [PATCH 1/2] iommu/exynos: fix runtime pm support
  2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
  2012-04-11 15:18   ` Sergei Shtylyov
@ 2012-05-11 21:31   ` Kukjin Kim
  1 sibling, 0 replies; 13+ messages in thread
From: Kukjin Kim @ 2012-05-11 21:31 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/11/12 23:34, Marek Szyprowski wrote:
> Fix registration to runtime pw and add missing resume callback.
>
> Signed-off-by: Marek Szyprowski<m.szyprowski@samsung.com>
> Acked-by: Kyungmin Park<kyungmin.park@samsung.com>
> ---
>   drivers/iommu/exynos-iommu.c |   20 ++++++++++++++++++--
>   1 files changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c
> index b8daf7c..eef924d 100644
> --- a/drivers/iommu/exynos-iommu.c
> +++ b/drivers/iommu/exynos-iommu.c
> @@ -651,8 +651,7 @@ static int exynos_sysmmu_probe(struct platform_device *pdev)
>
>   	__set_fault_handler(data,&default_fault_handler);
>
> -	if (dev->parent)
> -		pm_runtime_enable(dev);
> +	pm_runtime_enable(dev);
>
>   	dev_dbg(dev, "(%s) Initialized\n", data->dbgname);
>   	return 0;
> @@ -674,11 +673,28 @@ err_alloc:
>   	return ret;
>   }
>
> +static int exynos_pm_resume(struct device *dev)
> +{
> +	struct sysmmu_drvdata *data;
> +
> +	data = dev_get_drvdata(dev);
> +
> +	if (is_sysmmu_active(data))
> +		__exynos_sysmmu_enable(data, data->pgtable, NULL);
> +
> +	return 0;
> +}
> +
> +const struct dev_pm_ops exynos_pm_ops = {
> +	.resume =&exynos_pm_resume,
> +};
> +
>   static struct platform_driver exynos_sysmmu_driver = {
>   	.probe		= exynos_sysmmu_probe,
>   	.driver		= {
>   		.owner		= THIS_MODULE,
>   		.name		= "exynos-sysmmu",
> +		.pm		=&exynos_pm_ops,
>   	}
>   };
>

Joerg,

This patch is needed to correct run-time pm for EXYNOS SoCs with System 
MMU after KyongHo's iommu/exynos patch. So if you're ok on this, let me 
apply this in samsung tree.

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

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

end of thread, other threads:[~2012-05-11 21:31 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-11 14:34 [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains Marek Szyprowski
2012-04-11 14:34 ` [PATCH 1/2] iommu/exynos: fix runtime pm support Marek Szyprowski
2012-04-11 15:18   ` Sergei Shtylyov
2012-05-11 21:31   ` Kukjin Kim
2012-04-11 14:34 ` [PATCH 2/2] ARM: Exynos4: update SYSMMU setup code for gen_pd power domain driver Marek Szyprowski
2012-04-16 10:09   ` KyongHo Cho
2012-04-16 10:28     ` Marek Szyprowski
2012-04-12  8:19 ` [PATCH 0/2] Exynos: fix SYSMMU driver to work with power domains KyongHo Cho
2012-04-14 15:51   ` Kukjin Kim
2012-04-16  9:54     ` KyongHo Cho
2012-04-16 10:01       ` Kyungmin Park
2012-04-16 10:13         ` KyongHo Cho
2012-04-16 13:35 ` Subash Patel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).