All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
@ 2015-10-30  6:24 Raghav Dogra
  2015-10-30 20:03 ` Scott Wood
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Raghav Dogra @ 2015-10-30  6:24 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: scottwood, prabhakar, Raghav Dogra

Modify platform driver suspend/resume to syscore
suspend/resume. This is because p1022ds needs to use
localbus when entering the PCIE resume.

Signed-off-by: Raghav Dogra <raghav@freescale.com>
---
 arch/powerpc/sysdev/Makefile  |  2 +-
 arch/powerpc/sysdev/fsl_lbc.c | 51 +++++++++++++++++++++++++++++++++----------
 2 files changed, 40 insertions(+), 13 deletions(-)

diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile
index f7cb2a1..4c19e614 100644
--- a/arch/powerpc/sysdev/Makefile
+++ b/arch/powerpc/sysdev/Makefile
@@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)		+= pmi.o
 obj-$(CONFIG_U3_DART)		+= dart_iommu.o
 obj-$(CONFIG_MMIO_NVRAM)	+= mmio_nvram.o
 obj-$(CONFIG_FSL_SOC)		+= fsl_soc.o fsl_mpic_err.o
+obj-$(CONFIG_FSL_LBC)		+= fsl_lbc.o
 obj-$(CONFIG_FSL_PCI)		+= fsl_pci.o $(fsl-msi-obj-y)
 obj-$(CONFIG_FSL_PMC)		+= fsl_pmc.o
-obj-$(CONFIG_FSL_LBC)		+= fsl_lbc.o
 obj-$(CONFIG_FSL_GTM)		+= fsl_gtm.o
 obj-$(CONFIG_FSL_85XX_CACHE_SRAM)	+= fsl_85xx_l2ctlr.o fsl_85xx_cache_sram.o
 obj-$(CONFIG_SIMPLE_GPIO)	+= simple_gpio.o
diff --git a/arch/powerpc/sysdev/fsl_lbc.c b/arch/powerpc/sysdev/fsl_lbc.c
index d631022..332d700 100644
--- a/arch/powerpc/sysdev/fsl_lbc.c
+++ b/arch/powerpc/sysdev/fsl_lbc.c
@@ -27,6 +27,7 @@
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
 #include <linux/mod_devicetable.h>
+#include <linux/syscore_ops.h>
 #include <asm/prom.h>
 #include <asm/fsl_lbc.h>
 
@@ -354,24 +355,42 @@ err:
 #ifdef CONFIG_SUSPEND
 
 /* save lbc registers */
-static int fsl_lbc_suspend(struct platform_device *pdev, pm_message_t state)
+static int fsl_lbc_syscore_suspend(void)
 {
-	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
-	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
+	struct fsl_lbc_ctrl *ctrl;
+	struct fsl_lbc_regs __iomem *lbc;
+
+	ctrl = fsl_lbc_ctrl_dev;
+	if (!ctrl)
+		goto out;
+
+	lbc = ctrl->regs;
+	if (!lbc)
+		goto out;
 
 	ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs), GFP_KERNEL);
 	if (!ctrl->saved_regs)
 		return -ENOMEM;
 
 	_memcpy_fromio(ctrl->saved_regs, lbc, sizeof(struct fsl_lbc_regs));
+
+out:
 	return 0;
 }
 
 /* restore lbc registers */
-static int fsl_lbc_resume(struct platform_device *pdev)
+static int fsl_lbc_syscore_resume(void)
 {
-	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
-	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
+	struct fsl_lbc_ctrl *ctrl;
+	struct fsl_lbc_regs __iomem *lbc;
+
+	ctrl = fsl_lbc_ctrl_dev;
+	if (!ctrl)
+		goto out;
+
+	lbc = ctrl->regs;
+	if (!lbc)
+		goto out;
 
 	if (ctrl->saved_regs) {
 		_memcpy_toio(lbc, ctrl->saved_regs,
@@ -379,7 +398,9 @@ static int fsl_lbc_resume(struct platform_device *pdev)
 		kfree(ctrl->saved_regs);
 		ctrl->saved_regs = NULL;
 	}
-	return 0;
+
+out:
+	return;
 }
 #endif /* CONFIG_SUSPEND */
 
@@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] = {
 	{},
 };
 
+#ifdef CONFIG_SUSPEND
+static struct syscore_ops lbc_syscore_pm_ops = {
+	.suspend = fsl_lbc_syscore_suspend,
+	.resume = fsl_lbc_syscore_resume,
+};
+#endif
+
 static struct platform_driver fsl_lbc_ctrl_driver = {
 	.driver = {
 		.name = "fsl-lbc",
 		.of_match_table = fsl_lbc_match,
 	},
 	.probe = fsl_lbc_ctrl_probe,
-#ifdef CONFIG_SUSPEND
-	.suspend     = fsl_lbc_suspend,
-	.resume      = fsl_lbc_resume,
-#endif
 };
 
 static int __init fsl_lbc_init(void)
 {
+#ifdef CONFIG_SUSPEND
+	register_syscore_ops(&lbc_syscore_pm_ops);
+#endif
 	return platform_driver_register(&fsl_lbc_ctrl_driver);
 }
-module_init(fsl_lbc_init);
+arch_initcall(fsl_lbc_init);
-- 
1.9.1

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-10-30  6:24 [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence Raghav Dogra
@ 2015-10-30 20:03 ` Scott Wood
  2015-11-02  6:12 ` Dogra Raghav
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 16+ messages in thread
From: Scott Wood @ 2015-10-30 20:03 UTC (permalink / raw)
  To: Raghav Dogra; +Cc: linuxppc-dev, prabhakar

On Fri, 2015-10-30 at 11:54 +0530, Raghav Dogra wrote:
> Modify platform driver suspend/resume to syscore
> suspend/resume. This is because p1022ds needs to use
> localbus when entering the PCIE resume.
> 
> Signed-off-by: Raghav Dogra <raghav@freescale.com>
> ---
>  arch/powerpc/sysdev/Makefile  |  2 +-
>  arch/powerpc/sysdev/fsl_lbc.c | 51 +++++++++++++++++++++++++++++++++-------
> ---
>  2 files changed, 40 insertions(+), 13 deletions(-)

Same comments as on the IFC patch.

-Scott

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

* RE: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-10-30  6:24 [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence Raghav Dogra
  2015-10-30 20:03 ` Scott Wood
@ 2015-11-02  6:12 ` Dogra Raghav
  2015-11-02 23:00   ` Scott Wood
  2015-12-23 21:10 ` Scott Wood
  2015-12-24  4:19 ` [1/2] " Scott Wood
  3 siblings, 1 reply; 16+ messages in thread
From: Dogra Raghav @ 2015-11-02  6:12 UTC (permalink / raw)
  To: Scott Wood; +Cc: Kushwaha Prabhakar, linuxppc-dev



-----Original Message-----
From: Raghav Dogra [mailto:raghav@freescale.com]=20
Sent: Friday, October 30, 2015 11:55 AM
To: linuxppc-dev@lists.ozlabs.org
Cc: Wood Scott-B07421 <scottwood@freescale.com>; Kushwaha Prabhakar-B32579 =
<prabhakar@freescale.com>; Dogra Raghav-B46184 <raghav@freescale.com>
Subject: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence

Modify platform driver suspend/resume to syscore suspend/resume. This is be=
cause p1022ds needs to use localbus when entering the PCIE resume.

Signed-off-by: Raghav Dogra <raghav@freescale.com>
---
 arch/powerpc/sysdev/Makefile  |  2 +-
 arch/powerpc/sysdev/fsl_lbc.c | 51 +++++++++++++++++++++++++++++++++------=
----
 2 files changed, 40 insertions(+), 13 deletions(-)

diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile in=
dex f7cb2a1..4c19e614 100644
--- a/arch/powerpc/sysdev/Makefile
+++ b/arch/powerpc/sysdev/Makefile
@@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)		+=3D pmi.o
 obj-$(CONFIG_U3_DART)		+=3D dart_iommu.o
 obj-$(CONFIG_MMIO_NVRAM)	+=3D mmio_nvram.o
 obj-$(CONFIG_FSL_SOC)		+=3D fsl_soc.o fsl_mpic_err.o
+obj-$(CONFIG_FSL_LBC)		+=3D fsl_lbc.o
 obj-$(CONFIG_FSL_PCI)		+=3D fsl_pci.o $(fsl-msi-obj-y)
 obj-$(CONFIG_FSL_PMC)		+=3D fsl_pmc.o
-obj-$(CONFIG_FSL_LBC)		+=3D fsl_lbc.o
 obj-$(CONFIG_FSL_GTM)		+=3D fsl_gtm.o
 obj-$(CONFIG_FSL_85XX_CACHE_SRAM)	+=3D fsl_85xx_l2ctlr.o fsl_85xx_cache_sr=
am.o
 obj-$(CONFIG_SIMPLE_GPIO)	+=3D simple_gpio.o
diff --git a/arch/powerpc/sysdev/fsl_lbc.c b/arch/powerpc/sysdev/fsl_lbc.c =
index d631022..332d700 100644
--- a/arch/powerpc/sysdev/fsl_lbc.c
+++ b/arch/powerpc/sysdev/fsl_lbc.c
@@ -27,6 +27,7 @@
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
 #include <linux/mod_devicetable.h>
+#include <linux/syscore_ops.h>
 #include <asm/prom.h>
 #include <asm/fsl_lbc.h>
=20
@@ -354,24 +355,42 @@ err:
 #ifdef CONFIG_SUSPEND
=20
 /* save lbc registers */
-static int fsl_lbc_suspend(struct platform_device *pdev, pm_message_t stat=
e)
+static int fsl_lbc_syscore_suspend(void)
 {
-	struct fsl_lbc_ctrl *ctrl =3D dev_get_drvdata(&pdev->dev);
-	struct fsl_lbc_regs __iomem *lbc =3D ctrl->regs;
+	struct fsl_lbc_ctrl *ctrl;
+	struct fsl_lbc_regs __iomem *lbc;
+
+	ctrl =3D fsl_lbc_ctrl_dev;
+	if (!ctrl)
+		goto out;
+
+	lbc =3D ctrl->regs;
+	if (!lbc)
+		goto out;
=20
 	ctrl->saved_regs =3D kmalloc(sizeof(struct fsl_lbc_regs), GFP_KERNEL);
 	if (!ctrl->saved_regs)
 		return -ENOMEM;
[Dogra Raghav-B46184] This is the existing upstream code. Are you suggestin=
g to modify the upstream code to take care of individual registers?
=20
 	_memcpy_fromio(ctrl->saved_regs, lbc, sizeof(struct fsl_lbc_regs));
+
+out:
 	return 0;
 }
=20
 /* restore lbc registers */
-static int fsl_lbc_resume(struct platform_device *pdev)
+static int fsl_lbc_syscore_resume(void)
 {
-	struct fsl_lbc_ctrl *ctrl =3D dev_get_drvdata(&pdev->dev);
-	struct fsl_lbc_regs __iomem *lbc =3D ctrl->regs;
+	struct fsl_lbc_ctrl *ctrl;
+	struct fsl_lbc_regs __iomem *lbc;
+
+	ctrl =3D fsl_lbc_ctrl_dev;
+	if (!ctrl)
+		goto out;
+
+	lbc =3D ctrl->regs;
+	if (!lbc)
+		goto out;
=20
 	if (ctrl->saved_regs) {
 		_memcpy_toio(lbc, ctrl->saved_regs,
@@ -379,7 +398,9 @@ static int fsl_lbc_resume(struct platform_device *pdev)
 		kfree(ctrl->saved_regs);
 		ctrl->saved_regs =3D NULL;
 	}
-	return 0;
+
+out:
+	return;
 }
 #endif /* CONFIG_SUSPEND */
=20
@@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] =3D =
{
 	{},
 };
=20
+#ifdef CONFIG_SUSPEND
+static struct syscore_ops lbc_syscore_pm_ops =3D {
+	.suspend =3D fsl_lbc_syscore_suspend,
+	.resume =3D fsl_lbc_syscore_resume,
+};
+#endif
+
 static struct platform_driver fsl_lbc_ctrl_driver =3D {
 	.driver =3D {
 		.name =3D "fsl-lbc",
 		.of_match_table =3D fsl_lbc_match,
 	},
 	.probe =3D fsl_lbc_ctrl_probe,
-#ifdef CONFIG_SUSPEND
-	.suspend     =3D fsl_lbc_suspend,
-	.resume      =3D fsl_lbc_resume,
-#endif
 };
=20
 static int __init fsl_lbc_init(void)
 {
+#ifdef CONFIG_SUSPEND
+	register_syscore_ops(&lbc_syscore_pm_ops);
+#endif
 	return platform_driver_register(&fsl_lbc_ctrl_driver);
 }
-module_init(fsl_lbc_init);
+arch_initcall(fsl_lbc_init);
--
1.9.1

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-02  6:12 ` Dogra Raghav
@ 2015-11-02 23:00   ` Scott Wood
  2015-11-03  5:31     ` Dogra Raghav
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-11-02 23:00 UTC (permalink / raw)
  To: Dogra Raghav-B46184; +Cc: Kushwaha Prabhakar-B32579, linuxppc-dev

On Mon, 2015-11-02 at 00:12 -0600, Dogra Raghav-B46184 wrote:
> -----Original Message-----
> From: Raghav Dogra [mailto:raghav@freescale.com] 
> Sent: Friday, October 30, 2015 11:55 AM
> To: linuxppc-dev@lists.ozlabs.org
> Cc: Wood Scott-B07421 <scottwood@freescale.com>; Kushwaha Prabhakar-B32579 <
> prabhakar@freescale.com>; Dogra Raghav-B46184 <raghav@freescale.com>
> Subject: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
> 
> Modify platform driver suspend/resume to syscore suspend/resume. This is 
> because p1022ds needs to use localbus when entering the PCIE resume.
> 
> Signed-off-by: Raghav Dogra <raghav@freescale.com>
> ---
>  arch/powerpc/sysdev/Makefile  |  2 +-
>  arch/powerpc/sysdev/fsl_lbc.c | 51 +++++++++++++++++++++++++++++++++-------
> ---
>  2 files changed, 40 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile 
> index f7cb2a1..4c19e614 100644
> --- a/arch/powerpc/sysdev/Makefile
> +++ b/arch/powerpc/sysdev/Makefile
> @@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)               += pmi.o
>  obj-$(CONFIG_U3_DART)                += dart_iommu.o
>  obj-$(CONFIG_MMIO_NVRAM)     += mmio_nvram.o
>  obj-$(CONFIG_FSL_SOC)                += fsl_soc.o fsl_mpic_err.o
> +obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
>  obj-$(CONFIG_FSL_PCI)                += fsl_pci.o $(fsl-msi-obj-y)
>  obj-$(CONFIG_FSL_PMC)                += fsl_pmc.o
> -obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
>  obj-$(CONFIG_FSL_GTM)                += fsl_gtm.o
>  obj-$(CONFIG_FSL_85XX_CACHE_SRAM)    += fsl_85xx_l2ctlr.o 
> fsl_85xx_cache_sram.o
>  obj-$(CONFIG_SIMPLE_GPIO)    += simple_gpio.o
> diff --git a/arch/powerpc/sysdev/fsl_lbc.c b/arch/powerpc/sysdev/fsl_lbc.c 
> index d631022..332d700 100644
> --- a/arch/powerpc/sysdev/fsl_lbc.c
> +++ b/arch/powerpc/sysdev/fsl_lbc.c
> @@ -27,6 +27,7 @@
>  #include <linux/platform_device.h>
>  #include <linux/interrupt.h>
>  #include <linux/mod_devicetable.h>
> +#include <linux/syscore_ops.h>
>  #include <asm/prom.h>
>  #include <asm/fsl_lbc.h>
>  
> @@ -354,24 +355,42 @@ err:
>  #ifdef CONFIG_SUSPEND
>  
>  /* save lbc registers */
> -static int fsl_lbc_suspend(struct platform_device *pdev, pm_message_t 
> state)
> +static int fsl_lbc_syscore_suspend(void)
>  {
> -     struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> -     struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> +     struct fsl_lbc_ctrl *ctrl;
> +     struct fsl_lbc_regs __iomem *lbc;
> +
> +     ctrl = fsl_lbc_ctrl_dev;
> +     if (!ctrl)
> +             goto out;
> +
> +     lbc = ctrl->regs;
> +     if (!lbc)
> +             goto out;
>  
>       ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs), GFP_KERNEL);
>       if (!ctrl->saved_regs)
>               return -ENOMEM;
> [Dogra Raghav-B46184] This is the existing upstream code. Are you 
> suggesting to modify the upstream code to take care of individual registers?

What specifically do you mean by "the upstream code"?  What other tree are we 
talking about here?

-Scott

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

* RE: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-02 23:00   ` Scott Wood
@ 2015-11-03  5:31     ` Dogra Raghav
  2015-11-03  5:39       ` Scott Wood
  0 siblings, 1 reply; 16+ messages in thread
From: Dogra Raghav @ 2015-11-03  5:31 UTC (permalink / raw)
  To: Scott Wood; +Cc: Kushwaha Prabhakar, linuxppc-dev

DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBXb29kIFNjb3R0LUIwNzQyMSAN
ClNlbnQ6IFR1ZXNkYXksIE5vdmVtYmVyIDAzLCAyMDE1IDQ6MzEgQU0NClRvOiBEb2dyYSBSYWdo
YXYtQjQ2MTg0IDxyYWdoYXZAZnJlZXNjYWxlLmNvbT4NCkNjOiBLdXNod2FoYSBQcmFiaGFrYXIt
QjMyNTc5IDxwcmFiaGFrYXJAZnJlZXNjYWxlLmNvbT47IGxpbnV4cHBjLWRldkBsaXN0cy5vemxh
YnMub3JnDQpTdWJqZWN0OiBSZTogW1BBVENIIDEvMl0gbXBjODV4eC9sYmM6IG1vZGlmeSBzdXNw
ZW5kL3Jlc3VtZSBlbnRyeSBzZXF1ZW5jZQ0KDQpPbiBNb24sIDIwMTUtMTEtMDIgYXQgMDA6MTIg
LTA2MDAsIERvZ3JhIFJhZ2hhdi1CNDYxODQgd3JvdGU6DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn
ZS0tLS0tDQo+IEZyb206IFJhZ2hhdiBEb2dyYSBbbWFpbHRvOnJhZ2hhdkBmcmVlc2NhbGUuY29t
XQ0KPiBTZW50OiBGcmlkYXksIE9jdG9iZXIgMzAsIDIwMTUgMTE6NTUgQU0NCj4gVG86IGxpbnV4
cHBjLWRldkBsaXN0cy5vemxhYnMub3JnDQo+IENjOiBXb29kIFNjb3R0LUIwNzQyMSA8c2NvdHR3
b29kQGZyZWVzY2FsZS5jb20+OyBLdXNod2FoYSANCj4gUHJhYmhha2FyLUIzMjU3OSA8IHByYWJo
YWthckBmcmVlc2NhbGUuY29tPjsgRG9ncmEgUmFnaGF2LUI0NjE4NCANCj4gPHJhZ2hhdkBmcmVl
c2NhbGUuY29tPg0KPiBTdWJqZWN0OiBbUEFUQ0ggMS8yXSBtcGM4NXh4L2xiYzogbW9kaWZ5IHN1
c3BlbmQvcmVzdW1lIGVudHJ5IHNlcXVlbmNlDQo+IA0KPiBNb2RpZnkgcGxhdGZvcm0gZHJpdmVy
IHN1c3BlbmQvcmVzdW1lIHRvIHN5c2NvcmUgc3VzcGVuZC9yZXN1bWUuIFRoaXMgDQo+IGlzIGJl
Y2F1c2UgcDEwMjJkcyBuZWVkcyB0byB1c2UgbG9jYWxidXMgd2hlbiBlbnRlcmluZyB0aGUgUENJ
RSByZXN1bWUuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBSYWdoYXYgRG9ncmEgPHJhZ2hhdkBmcmVl
c2NhbGUuY29tPg0KPiAtLS0NCj4gIGFyY2gvcG93ZXJwYy9zeXNkZXYvTWFrZWZpbGUgIHwgIDIg
Ky0gIGFyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX2xiYy5jIA0KPiB8IDUxICsrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKy0tLS0tLS0NCj4gLS0tDQo+ICAyIGZpbGVzIGNoYW5nZWQsIDQw
IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2FyY2gv
cG93ZXJwYy9zeXNkZXYvTWFrZWZpbGUgDQo+IGIvYXJjaC9wb3dlcnBjL3N5c2Rldi9NYWtlZmls
ZSBpbmRleCBmN2NiMmExLi40YzE5ZTYxNCAxMDA2NDQNCj4gLS0tIGEvYXJjaC9wb3dlcnBjL3N5
c2Rldi9NYWtlZmlsZQ0KPiArKysgYi9hcmNoL3Bvd2VycGMvc3lzZGV2L01ha2VmaWxlDQo+IEBA
IC0xOCw5ICsxOCw5IEBAIG9iai0kKENPTkZJR19QUENfUE1JKSAgICAgICAgICAgICAgICs9IHBt
aS5vDQo+ICBvYmotJChDT05GSUdfVTNfREFSVCkgICAgICAgICAgICAgICAgKz0gZGFydF9pb21t
dS5vDQo+ICBvYmotJChDT05GSUdfTU1JT19OVlJBTSkgICAgICs9IG1taW9fbnZyYW0ubw0KPiAg
b2JqLSQoQ09ORklHX0ZTTF9TT0MpICAgICAgICAgICAgICAgICs9IGZzbF9zb2MubyBmc2xfbXBp
Y19lcnIubw0KPiArb2JqLSQoQ09ORklHX0ZTTF9MQkMpICAgICAgICAgICAgICAgICs9IGZzbF9s
YmMubw0KPiAgb2JqLSQoQ09ORklHX0ZTTF9QQ0kpICAgICAgICAgICAgICAgICs9IGZzbF9wY2ku
byAkKGZzbC1tc2ktb2JqLXkpDQo+ICBvYmotJChDT05GSUdfRlNMX1BNQykgICAgICAgICAgICAg
ICAgKz0gZnNsX3BtYy5vDQo+IC1vYmotJChDT05GSUdfRlNMX0xCQykgICAgICAgICAgICAgICAg
Kz0gZnNsX2xiYy5vDQo+ICBvYmotJChDT05GSUdfRlNMX0dUTSkgICAgICAgICAgICAgICAgKz0g
ZnNsX2d0bS5vDQo+ICBvYmotJChDT05GSUdfRlNMXzg1WFhfQ0FDSEVfU1JBTSkgICAgKz0gZnNs
Xzg1eHhfbDJjdGxyLm8gDQo+IGZzbF84NXh4X2NhY2hlX3NyYW0ubw0KPiAgb2JqLSQoQ09ORklH
X1NJTVBMRV9HUElPKSAgICArPSBzaW1wbGVfZ3Bpby5vDQo+IGRpZmYgLS1naXQgYS9hcmNoL3Bv
d2VycGMvc3lzZGV2L2ZzbF9sYmMuYyANCj4gYi9hcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9sYmMu
YyBpbmRleCBkNjMxMDIyLi4zMzJkNzAwIDEwMDY0NA0KPiAtLS0gYS9hcmNoL3Bvd2VycGMvc3lz
ZGV2L2ZzbF9sYmMuYw0KPiArKysgYi9hcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9sYmMuYw0KPiBA
QCAtMjcsNiArMjcsNyBAQA0KPiAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPg0K
PiAgI2luY2x1ZGUgPGxpbnV4L2ludGVycnVwdC5oPg0KPiAgI2luY2x1ZGUgPGxpbnV4L21vZF9k
ZXZpY2V0YWJsZS5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L3N5c2NvcmVfb3BzLmg+DQo+ICAjaW5j
bHVkZSA8YXNtL3Byb20uaD4NCj4gICNpbmNsdWRlIDxhc20vZnNsX2xiYy5oPg0KPiAgDQo+IEBA
IC0zNTQsMjQgKzM1NSw0MiBAQCBlcnI6DQo+ICAjaWZkZWYgQ09ORklHX1NVU1BFTkQNCj4gIA0K
PiAgLyogc2F2ZSBsYmMgcmVnaXN0ZXJzICovDQo+IC1zdGF0aWMgaW50IGZzbF9sYmNfc3VzcGVu
ZChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LCBwbV9tZXNzYWdlX3QNCj4gc3RhdGUpDQo+
ICtzdGF0aWMgaW50IGZzbF9sYmNfc3lzY29yZV9zdXNwZW5kKHZvaWQpDQo+ICB7DQo+IC0gICAg
IHN0cnVjdCBmc2xfbGJjX2N0cmwgKmN0cmwgPSBkZXZfZ2V0X2RydmRhdGEoJnBkZXYtPmRldik7
DQo+IC0gICAgIHN0cnVjdCBmc2xfbGJjX3JlZ3MgX19pb21lbSAqbGJjID0gY3RybC0+cmVnczsN
Cj4gKyAgICAgc3RydWN0IGZzbF9sYmNfY3RybCAqY3RybDsNCj4gKyAgICAgc3RydWN0IGZzbF9s
YmNfcmVncyBfX2lvbWVtICpsYmM7DQo+ICsNCj4gKyAgICAgY3RybCA9IGZzbF9sYmNfY3RybF9k
ZXY7DQo+ICsgICAgIGlmICghY3RybCkNCj4gKyAgICAgICAgICAgICBnb3RvIG91dDsNCj4gKw0K
PiArICAgICBsYmMgPSBjdHJsLT5yZWdzOw0KPiArICAgICBpZiAoIWxiYykNCj4gKyAgICAgICAg
ICAgICBnb3RvIG91dDsNCj4gIA0KPiAgICAgICBjdHJsLT5zYXZlZF9yZWdzID0ga21hbGxvYyhz
aXplb2Yoc3RydWN0IGZzbF9sYmNfcmVncyksIEdGUF9LRVJORUwpOw0KPiAgICAgICBpZiAoIWN0
cmwtPnNhdmVkX3JlZ3MpDQo+ICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+IFtEb2dy
YSBSYWdoYXYtQjQ2MTg0XSBUaGlzIGlzIHRoZSBleGlzdGluZyB1cHN0cmVhbSBjb2RlLiBBcmUg
eW91IA0KPiBzdWdnZXN0aW5nIHRvIG1vZGlmeSB0aGUgdXBzdHJlYW0gY29kZSB0byB0YWtlIGNh
cmUgb2YgaW5kaXZpZHVhbCByZWdpc3RlcnM/DQoNCldoYXQgc3BlY2lmaWNhbGx5IGRvIHlvdSBt
ZWFuIGJ5ICJ0aGUgdXBzdHJlYW0gY29kZSI/ICBXaGF0IG90aGVyIHRyZWUgYXJlIHdlIHRhbGtp
bmcgYWJvdXQgaGVyZT8NCg0KLVNjb3R0DQoNCkkgbWVhbnQgdGhhdCB0aGVzZSB0d28gbGluZXMg
b2YgY29kZSBhcmUgbm90IGJlaW5nIGFkZGVkIG9yIG1vZGlmaWVkIGJ5IHRoaXMgcGF0Y2guIFRo
ZXkgYWxyZWFkeSBleGlzdCBpbiB0aGUgdXBzdHJlYW0gdHJlZS4gQXJlIHlvdSBzdWdnZXN0aW5n
IEkgbW9kaWZ5IHRoZW0gYXMgd2VsbD8NCi1SYWdoYXYNCg==

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  5:31     ` Dogra Raghav
@ 2015-11-03  5:39       ` Scott Wood
  2015-11-03  6:09         ` Dogra Raghav
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-11-03  5:39 UTC (permalink / raw)
  To: Dogra Raghav-B46184; +Cc: Kushwaha Prabhakar-B32579, linuxppc-dev

On Mon, 2015-11-02 at 23:31 -0600, Dogra Raghav-B46184 wrote:
> 
> -----Original Message-----
> From: Wood Scott-B07421 
> Sent: Tuesday, November 03, 2015 4:31 AM
> To: Dogra Raghav-B46184 <raghav@freescale.com>
> Cc: Kushwaha Prabhakar-B32579 <prabhakar@freescale.com>; 
> linuxppc-dev@lists.ozlabs.org
> Subject: Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
> 
> On Mon, 2015-11-02 at 00:12 -0600, Dogra Raghav-B46184 wrote:
> > -----Original Message-----
> > From: Raghav Dogra [mailto:raghav@freescale.com]
> > Sent: Friday, October 30, 2015 11:55 AM
> > To: linuxppc-dev@lists.ozlabs.org
> > Cc: Wood Scott-B07421 <scottwood@freescale.com>; Kushwaha 
> > Prabhakar-B32579 < prabhakar@freescale.com>; Dogra Raghav-B46184 
> > <raghav@freescale.com>
> > Subject: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
> > 
> > Modify platform driver suspend/resume to syscore suspend/resume. This 
> > is because p1022ds needs to use localbus when entering the PCIE resume.
> > 
> > Signed-off-by: Raghav Dogra <raghav@freescale.com>
> > ---
> >  arch/powerpc/sysdev/Makefile  |  2 +-  arch/powerpc/sysdev/fsl_lbc.c 
> > > 51 +++++++++++++++++++++++++++++++++-------
> > ---
> >  2 files changed, 40 insertions(+), 13 deletions(-)
> > 
> > diff --git a/arch/powerpc/sysdev/Makefile 
> > b/arch/powerpc/sysdev/Makefile index f7cb2a1..4c19e614 100644
> > --- a/arch/powerpc/sysdev/Makefile
> > +++ b/arch/powerpc/sysdev/Makefile
> > @@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)               += pmi.o
> >  obj-$(CONFIG_U3_DART)                += dart_iommu.o
> >  obj-$(CONFIG_MMIO_NVRAM)     += mmio_nvram.o
> >  obj-$(CONFIG_FSL_SOC)                += fsl_soc.o fsl_mpic_err.o
> > +obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
> >  obj-$(CONFIG_FSL_PCI)                += fsl_pci.o $(fsl-msi-obj-y)
> >  obj-$(CONFIG_FSL_PMC)                += fsl_pmc.o
> > -obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
> >  obj-$(CONFIG_FSL_GTM)                += fsl_gtm.o
> >  obj-$(CONFIG_FSL_85XX_CACHE_SRAM)    += fsl_85xx_l2ctlr.o 
> > fsl_85xx_cache_sram.o
> >  obj-$(CONFIG_SIMPLE_GPIO)    += simple_gpio.o
> > diff --git a/arch/powerpc/sysdev/fsl_lbc.c 
> > b/arch/powerpc/sysdev/fsl_lbc.c index d631022..332d700 100644
> > --- a/arch/powerpc/sysdev/fsl_lbc.c
> > +++ b/arch/powerpc/sysdev/fsl_lbc.c
> > @@ -27,6 +27,7 @@
> >  #include <linux/platform_device.h>
> >  #include <linux/interrupt.h>
> >  #include <linux/mod_devicetable.h>
> > +#include <linux/syscore_ops.h>
> >  #include <asm/prom.h>
> >  #include <asm/fsl_lbc.h>
> >  
> > @@ -354,24 +355,42 @@ err:
> >  #ifdef CONFIG_SUSPEND
> >  
> >  /* save lbc registers */
> > -static int fsl_lbc_suspend(struct platform_device *pdev, pm_message_t
> > state)
> > +static int fsl_lbc_syscore_suspend(void)
> >  {
> > -     struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> > -     struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> > +     struct fsl_lbc_ctrl *ctrl;
> > +     struct fsl_lbc_regs __iomem *lbc;
> > +
> > +     ctrl = fsl_lbc_ctrl_dev;
> > +     if (!ctrl)
> > +             goto out;
> > +
> > +     lbc = ctrl->regs;
> > +     if (!lbc)
> > +             goto out;
> >  
> >       ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs), GFP_KERNEL);
> >       if (!ctrl->saved_regs)
> >               return -ENOMEM;
> > [Dogra Raghav-B46184] This is the existing upstream code. Are you 
> > suggesting to modify the upstream code to take care of individual 
> > registers?
> 
> What specifically do you mean by "the upstream code"?  What other tree are 
> we talking about here?
> 
> -Scott
> 
> I meant that these two lines of code are not being added or modified by 
> this patch. They already exist in the upstream tree. Are you suggesting I 
> modify them as well?
> -Raghav

I have no idea which "two lines of code" you're talking about or how any 
comment I made applies to the above diff hunk.

OK, I looked at the original patch and I guess you're talking about the 
_memcpy_fromio() that was *below* your comment?  Please configure your mailer 
to quote properly, and put your replies below what you're quoting.

Yes, I think that that usage of _memcpy_fromio() is bad and should be changed.

-Scott

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

* RE: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  5:39       ` Scott Wood
@ 2015-11-03  6:09         ` Dogra Raghav
  2015-11-03  6:13           ` Scott Wood
  0 siblings, 1 reply; 16+ messages in thread
From: Dogra Raghav @ 2015-11-03  6:09 UTC (permalink / raw)
  To: Scott Wood; +Cc: Kushwaha Prabhakar, linuxppc-dev

DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBXb29kIFNjb3R0LUIwNzQyMSAN
ClNlbnQ6IFR1ZXNkYXksIE5vdmVtYmVyIDAzLCAyMDE1IDExOjEwIEFNDQpUbzogRG9ncmEgUmFn
aGF2LUI0NjE4NCA8cmFnaGF2QGZyZWVzY2FsZS5jb20+DQpDYzogS3VzaHdhaGEgUHJhYmhha2Fy
LUIzMjU3OSA8cHJhYmhha2FyQGZyZWVzY2FsZS5jb20+OyBsaW51eHBwYy1kZXZAbGlzdHMub3ps
YWJzLm9yZw0KU3ViamVjdDogUmU6IFtQQVRDSCAxLzJdIG1wYzg1eHgvbGJjOiBtb2RpZnkgc3Vz
cGVuZC9yZXN1bWUgZW50cnkgc2VxdWVuY2UNCg0KT24gTW9uLCAyMDE1LTExLTAyIGF0IDIzOjMx
IC0wNjAwLCBEb2dyYSBSYWdoYXYtQjQ2MTg0IHdyb3RlOg0KPiANCj4gLS0tLS1PcmlnaW5hbCBN
ZXNzYWdlLS0tLS0NCj4gRnJvbTogV29vZCBTY290dC1CMDc0MjENCj4gU2VudDogVHVlc2RheSwg
Tm92ZW1iZXIgMDMsIDIwMTUgNDozMSBBTQ0KPiBUbzogRG9ncmEgUmFnaGF2LUI0NjE4NCA8cmFn
aGF2QGZyZWVzY2FsZS5jb20+DQo+IENjOiBLdXNod2FoYSBQcmFiaGFrYXItQjMyNTc5IDxwcmFi
aGFrYXJAZnJlZXNjYWxlLmNvbT47IA0KPiBsaW51eHBwYy1kZXZAbGlzdHMub3psYWJzLm9yZw0K
PiBTdWJqZWN0OiBSZTogW1BBVENIIDEvMl0gbXBjODV4eC9sYmM6IG1vZGlmeSBzdXNwZW5kL3Jl
c3VtZSBlbnRyeSANCj4gc2VxdWVuY2UNCj4gDQo+IE9uIE1vbiwgMjAxNS0xMS0wMiBhdCAwMDox
MiAtMDYwMCwgRG9ncmEgUmFnaGF2LUI0NjE4NCB3cm90ZToNCj4gPiAtLS0tLU9yaWdpbmFsIE1l
c3NhZ2UtLS0tLQ0KPiA+IEZyb206IFJhZ2hhdiBEb2dyYSBbbWFpbHRvOnJhZ2hhdkBmcmVlc2Nh
bGUuY29tXQ0KPiA+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAzMCwgMjAxNSAxMTo1NSBBTQ0KPiA+
IFRvOiBsaW51eHBwYy1kZXZAbGlzdHMub3psYWJzLm9yZw0KPiA+IENjOiBXb29kIFNjb3R0LUIw
NzQyMSA8c2NvdHR3b29kQGZyZWVzY2FsZS5jb20+OyBLdXNod2FoYQ0KPiA+IFByYWJoYWthci1C
MzI1NzkgPCBwcmFiaGFrYXJAZnJlZXNjYWxlLmNvbT47IERvZ3JhIFJhZ2hhdi1CNDYxODQgDQo+
ID4gPHJhZ2hhdkBmcmVlc2NhbGUuY29tPg0KPiA+IFN1YmplY3Q6IFtQQVRDSCAxLzJdIG1wYzg1
eHgvbGJjOiBtb2RpZnkgc3VzcGVuZC9yZXN1bWUgZW50cnkgDQo+ID4gc2VxdWVuY2UNCj4gPiAN
Cj4gPiBNb2RpZnkgcGxhdGZvcm0gZHJpdmVyIHN1c3BlbmQvcmVzdW1lIHRvIHN5c2NvcmUgc3Vz
cGVuZC9yZXN1bWUuIA0KPiA+IFRoaXMgaXMgYmVjYXVzZSBwMTAyMmRzIG5lZWRzIHRvIHVzZSBs
b2NhbGJ1cyB3aGVuIGVudGVyaW5nIHRoZSBQQ0lFIHJlc3VtZS4NCj4gPiANCj4gPiBTaWduZWQt
b2ZmLWJ5OiBSYWdoYXYgRG9ncmEgPHJhZ2hhdkBmcmVlc2NhbGUuY29tPg0KPiA+IC0tLQ0KPiA+
ICBhcmNoL3Bvd2VycGMvc3lzZGV2L01ha2VmaWxlICB8ICAyICstICANCj4gPiBhcmNoL3Bvd2Vy
cGMvc3lzZGV2L2ZzbF9sYmMuYw0KPiA+ID4gNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrLS0tLS0tLQ0KPiA+IC0tLQ0KPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDQwIGluc2VydGlv
bnMoKyksIDEzIGRlbGV0aW9ucygtKQ0KPiA+IA0KPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Bvd2Vy
cGMvc3lzZGV2L01ha2VmaWxlIA0KPiA+IGIvYXJjaC9wb3dlcnBjL3N5c2Rldi9NYWtlZmlsZSBp
bmRleCBmN2NiMmExLi40YzE5ZTYxNCAxMDA2NDQNCj4gPiAtLS0gYS9hcmNoL3Bvd2VycGMvc3lz
ZGV2L01ha2VmaWxlDQo+ID4gKysrIGIvYXJjaC9wb3dlcnBjL3N5c2Rldi9NYWtlZmlsZQ0KPiA+
IEBAIC0xOCw5ICsxOCw5IEBAIG9iai0kKENPTkZJR19QUENfUE1JKSAgICAgICAgICAgICAgICs9
IHBtaS5vDQo+ID4gIG9iai0kKENPTkZJR19VM19EQVJUKSAgICAgICAgICAgICAgICArPSBkYXJ0
X2lvbW11Lm8NCj4gPiAgb2JqLSQoQ09ORklHX01NSU9fTlZSQU0pICAgICArPSBtbWlvX252cmFt
Lm8NCj4gPiAgb2JqLSQoQ09ORklHX0ZTTF9TT0MpICAgICAgICAgICAgICAgICs9IGZzbF9zb2Mu
byBmc2xfbXBpY19lcnIubw0KPiA+ICtvYmotJChDT05GSUdfRlNMX0xCQykgICAgICAgICAgICAg
ICAgKz0gZnNsX2xiYy5vDQo+ID4gIG9iai0kKENPTkZJR19GU0xfUENJKSAgICAgICAgICAgICAg
ICArPSBmc2xfcGNpLm8gJChmc2wtbXNpLW9iai15KQ0KPiA+ICBvYmotJChDT05GSUdfRlNMX1BN
QykgICAgICAgICAgICAgICAgKz0gZnNsX3BtYy5vDQo+ID4gLW9iai0kKENPTkZJR19GU0xfTEJD
KSAgICAgICAgICAgICAgICArPSBmc2xfbGJjLm8NCj4gPiAgb2JqLSQoQ09ORklHX0ZTTF9HVE0p
ICAgICAgICAgICAgICAgICs9IGZzbF9ndG0ubw0KPiA+ICBvYmotJChDT05GSUdfRlNMXzg1WFhf
Q0FDSEVfU1JBTSkgICAgKz0gZnNsXzg1eHhfbDJjdGxyLm8gDQo+ID4gZnNsXzg1eHhfY2FjaGVf
c3JhbS5vDQo+ID4gIG9iai0kKENPTkZJR19TSU1QTEVfR1BJTykgICAgKz0gc2ltcGxlX2dwaW8u
bw0KPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9sYmMuYyANCj4gPiBi
L2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX2xiYy5jIGluZGV4IGQ2MzEwMjIuLjMzMmQ3MDAgMTAw
NjQ0DQo+ID4gLS0tIGEvYXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfbGJjLmMNCj4gPiArKysgYi9h
cmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9sYmMuYw0KPiA+IEBAIC0yNyw2ICsyNyw3IEBADQo+ID4g
ICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4
L2ludGVycnVwdC5oPg0KPiA+ICAjaW5jbHVkZSA8bGludXgvbW9kX2RldmljZXRhYmxlLmg+DQo+
ID4gKyNpbmNsdWRlIDxsaW51eC9zeXNjb3JlX29wcy5oPg0KPiA+ICAjaW5jbHVkZSA8YXNtL3By
b20uaD4NCj4gPiAgI2luY2x1ZGUgPGFzbS9mc2xfbGJjLmg+DQo+ID4gIA0KPiA+IEBAIC0zNTQs
MjQgKzM1NSw0MiBAQCBlcnI6DQo+ID4gICNpZmRlZiBDT05GSUdfU1VTUEVORA0KPiA+ICANCj4g
PiAgLyogc2F2ZSBsYmMgcmVnaXN0ZXJzICovDQo+ID4gLXN0YXRpYyBpbnQgZnNsX2xiY19zdXNw
ZW5kKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsIA0KPiA+IHBtX21lc3NhZ2VfdA0KPiA+
IHN0YXRlKQ0KPiA+ICtzdGF0aWMgaW50IGZzbF9sYmNfc3lzY29yZV9zdXNwZW5kKHZvaWQpDQo+
ID4gIHsNCj4gPiAtICAgICBzdHJ1Y3QgZnNsX2xiY19jdHJsICpjdHJsID0gZGV2X2dldF9kcnZk
YXRhKCZwZGV2LT5kZXYpOw0KPiA+IC0gICAgIHN0cnVjdCBmc2xfbGJjX3JlZ3MgX19pb21lbSAq
bGJjID0gY3RybC0+cmVnczsNCj4gPiArICAgICBzdHJ1Y3QgZnNsX2xiY19jdHJsICpjdHJsOw0K
PiA+ICsgICAgIHN0cnVjdCBmc2xfbGJjX3JlZ3MgX19pb21lbSAqbGJjOw0KPiA+ICsNCj4gPiAr
ICAgICBjdHJsID0gZnNsX2xiY19jdHJsX2RldjsNCj4gPiArICAgICBpZiAoIWN0cmwpDQo+ID4g
KyAgICAgICAgICAgICBnb3RvIG91dDsNCj4gPiArDQo+ID4gKyAgICAgbGJjID0gY3RybC0+cmVn
czsNCj4gPiArICAgICBpZiAoIWxiYykNCj4gPiArICAgICAgICAgICAgIGdvdG8gb3V0Ow0KPiA+
ICANCj4gPiAgICAgICBjdHJsLT5zYXZlZF9yZWdzID0ga21hbGxvYyhzaXplb2Yoc3RydWN0IGZz
bF9sYmNfcmVncyksIEdGUF9LRVJORUwpOw0KPiA+ICAgICAgIGlmICghY3RybC0+c2F2ZWRfcmVn
cykNCj4gPiAgICAgICAgICAgICAgIHJldHVybiAtRU5PTUVNOw0KPiA+IFtEb2dyYSBSYWdoYXYt
QjQ2MTg0XSBUaGlzIGlzIHRoZSBleGlzdGluZyB1cHN0cmVhbSBjb2RlLiBBcmUgeW91IA0KPiA+
IHN1Z2dlc3RpbmcgdG8gbW9kaWZ5IHRoZSB1cHN0cmVhbSBjb2RlIHRvIHRha2UgY2FyZSBvZiBp
bmRpdmlkdWFsIA0KPiA+IHJlZ2lzdGVycz8NCj4gDQo+IFdoYXQgc3BlY2lmaWNhbGx5IGRvIHlv
dSBtZWFuIGJ5ICJ0aGUgdXBzdHJlYW0gY29kZSI/ICBXaGF0IG90aGVyIHRyZWUgDQo+IGFyZSB3
ZSB0YWxraW5nIGFib3V0IGhlcmU/DQo+IA0KPiAtU2NvdHQNCj4gDQo+IEkgbWVhbnQgdGhhdCB0
aGVzZSB0d28gbGluZXMgb2YgY29kZSBhcmUgbm90IGJlaW5nIGFkZGVkIG9yIG1vZGlmaWVkIA0K
PiBieSB0aGlzIHBhdGNoLiBUaGV5IGFscmVhZHkgZXhpc3QgaW4gdGhlIHVwc3RyZWFtIHRyZWUu
IEFyZSB5b3UgDQo+IHN1Z2dlc3RpbmcgSSBtb2RpZnkgdGhlbSBhcyB3ZWxsPw0KPiAtUmFnaGF2
DQoNCkkgaGF2ZSBubyBpZGVhIHdoaWNoICJ0d28gbGluZXMgb2YgY29kZSIgeW91J3JlIHRhbGtp
bmcgYWJvdXQgb3IgaG93IGFueSBjb21tZW50IEkgbWFkZSBhcHBsaWVzIHRvIHRoZSBhYm92ZSBk
aWZmIGh1bmsuDQoNCk9LLCBJIGxvb2tlZCBhdCB0aGUgb3JpZ2luYWwgcGF0Y2ggYW5kIEkgZ3Vl
c3MgeW91J3JlIHRhbGtpbmcgYWJvdXQgdGhlDQpfbWVtY3B5X2Zyb21pbygpIHRoYXQgd2FzICpi
ZWxvdyogeW91ciBjb21tZW50PyAgUGxlYXNlIGNvbmZpZ3VyZSB5b3VyIG1haWxlciB0byBxdW90
ZSBwcm9wZXJseSwgYW5kIHB1dCB5b3VyIHJlcGxpZXMgYmVsb3cgd2hhdCB5b3UncmUgcXVvdGlu
Zy4NCg0KWWVzLCBJIHRoaW5rIHRoYXQgdGhhdCB1c2FnZSBvZiBfbWVtY3B5X2Zyb21pbygpIGlz
IGJhZCBhbmQgc2hvdWxkIGJlIGNoYW5nZWQuDQoNCi1TY290dA0KDQpPaywgSSB3aWxsIHRha2Ug
Y2FyZSB0aGF0IHRoZSByZXBsaWVzIGFyZSBiZWxvdyB3aGF0IEkgYW0gcXVvdGluZyBpbiBmdXR1
cmUuIA0KQ2FuIHRoaXMgcGF0Y2ggYmUgYXBwbGllZCBhcyBpdCBpcyB0aGVuPyBUaGUgY2hhbmdl
cyB5b3UgYXJlIHN1Z2dlc3RpbmcgY2FuIGNvbWUgaW4gYSBuZXcgcGF0Y2guDQoNCi1SYWdoYXYN
Cg0K

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  6:09         ` Dogra Raghav
@ 2015-11-03  6:13           ` Scott Wood
  2015-11-03  6:33             ` Dogra Raghav
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-11-03  6:13 UTC (permalink / raw)
  To: Dogra Raghav-B46184; +Cc: Kushwaha Prabhakar-B32579, linuxppc-dev

On Tue, 2015-11-03 at 00:09 -0600, Dogra Raghav-B46184 wrote:
> 
> -----Original Message-----
> From: Wood Scott-B07421 
> Sent: Tuesday, November 03, 2015 11:10 AM
> To: Dogra Raghav-B46184 <raghav@freescale.com>
> Cc: Kushwaha Prabhakar-B32579 <prabhakar@freescale.com>; 
> linuxppc-dev@lists.ozlabs.org
> Subject: Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
> 
> On Mon, 2015-11-02 at 23:31 -0600, Dogra Raghav-B46184 wrote:
> > 
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Tuesday, November 03, 2015 4:31 AM
> > To: Dogra Raghav-B46184 <raghav@freescale.com>
> > Cc: Kushwaha Prabhakar-B32579 <prabhakar@freescale.com>; 
> > linuxppc-dev@lists.ozlabs.org
> > Subject: Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry 
> > sequence
> > 
> > On Mon, 2015-11-02 at 00:12 -0600, Dogra Raghav-B46184 wrote:
> > > -----Original Message-----
> > > From: Raghav Dogra [mailto:raghav@freescale.com]
> > > Sent: Friday, October 30, 2015 11:55 AM
> > > To: linuxppc-dev@lists.ozlabs.org
> > > Cc: Wood Scott-B07421 <scottwood@freescale.com>; Kushwaha
> > > Prabhakar-B32579 < prabhakar@freescale.com>; Dogra Raghav-B46184 
> > > <raghav@freescale.com>
> > > Subject: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry 
> > > sequence
> > > 
> > > Modify platform driver suspend/resume to syscore suspend/resume. 
> > > This is because p1022ds needs to use localbus when entering the PCIE 
> > > resume.
> > > 
> > > Signed-off-by: Raghav Dogra <raghav@freescale.com>
> > > ---
> > >  arch/powerpc/sysdev/Makefile  |  2 +-  
> > > arch/powerpc/sysdev/fsl_lbc.c
> > > > 51 +++++++++++++++++++++++++++++++++-------
> > > ---
> > >  2 files changed, 40 insertions(+), 13 deletions(-)
> > > 
> > > diff --git a/arch/powerpc/sysdev/Makefile 
> > > b/arch/powerpc/sysdev/Makefile index f7cb2a1..4c19e614 100644
> > > --- a/arch/powerpc/sysdev/Makefile
> > > +++ b/arch/powerpc/sysdev/Makefile
> > > @@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)               += pmi.o
> > >  obj-$(CONFIG_U3_DART)                += dart_iommu.o
> > >  obj-$(CONFIG_MMIO_NVRAM)     += mmio_nvram.o
> > >  obj-$(CONFIG_FSL_SOC)                += fsl_soc.o fsl_mpic_err.o
> > > +obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
> > >  obj-$(CONFIG_FSL_PCI)                += fsl_pci.o $(fsl-msi-obj-y)
> > >  obj-$(CONFIG_FSL_PMC)                += fsl_pmc.o
> > > -obj-$(CONFIG_FSL_LBC)                += fsl_lbc.o
> > >  obj-$(CONFIG_FSL_GTM)                += fsl_gtm.o
> > >  obj-$(CONFIG_FSL_85XX_CACHE_SRAM)    += fsl_85xx_l2ctlr.o 
> > > fsl_85xx_cache_sram.o
> > >  obj-$(CONFIG_SIMPLE_GPIO)    += simple_gpio.o
> > > diff --git a/arch/powerpc/sysdev/fsl_lbc.c 
> > > b/arch/powerpc/sysdev/fsl_lbc.c index d631022..332d700 100644
> > > --- a/arch/powerpc/sysdev/fsl_lbc.c
> > > +++ b/arch/powerpc/sysdev/fsl_lbc.c
> > > @@ -27,6 +27,7 @@
> > >  #include <linux/platform_device.h>
> > >  #include <linux/interrupt.h>
> > >  #include <linux/mod_devicetable.h>
> > > +#include <linux/syscore_ops.h>
> > >  #include <asm/prom.h>
> > >  #include <asm/fsl_lbc.h>
> > >  
> > > @@ -354,24 +355,42 @@ err:
> > >  #ifdef CONFIG_SUSPEND
> > >  
> > >  /* save lbc registers */
> > > -static int fsl_lbc_suspend(struct platform_device *pdev, 
> > > pm_message_t
> > > state)
> > > +static int fsl_lbc_syscore_suspend(void)
> > >  {
> > > -     struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> > > -     struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> > > +     struct fsl_lbc_ctrl *ctrl;
> > > +     struct fsl_lbc_regs __iomem *lbc;
> > > +
> > > +     ctrl = fsl_lbc_ctrl_dev;
> > > +     if (!ctrl)
> > > +             goto out;
> > > +
> > > +     lbc = ctrl->regs;
> > > +     if (!lbc)
> > > +             goto out;
> > >  
> > >       ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs), 
> > > GFP_KERNEL);
> > >       if (!ctrl->saved_regs)
> > >               return -ENOMEM;
> > > [Dogra Raghav-B46184] This is the existing upstream code. Are you 
> > > suggesting to modify the upstream code to take care of individual 
> > > registers?
> > 
> > What specifically do you mean by "the upstream code"?  What other tree 
> > are we talking about here?
> > 
> > -Scott
> > 
> > I meant that these two lines of code are not being added or modified 
> > by this patch. They already exist in the upstream tree. Are you 
> > suggesting I modify them as well?
> > -Raghav
> 
> I have no idea which "two lines of code" you're talking about or how any 
> comment I made applies to the above diff hunk.
> 
> OK, I looked at the original patch and I guess you're talking about the
> _memcpy_fromio() that was *below* your comment?  Please configure your 
> mailer to quote properly, and put your replies below what you're quoting.
> 
> Yes, I think that that usage of _memcpy_fromio() is bad and should be 
> changed.
> 
> -Scott
> 
> Ok, I will take care that the replies are below what I am quoting in 
> future. 

Also please make your mailer use proper quote markers.

> Can this patch be applied as it is then? The changes you are suggesting can 
> come in a new patch.

OK.

-Scott

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

* RE: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  6:13           ` Scott Wood
@ 2015-11-03  6:33             ` Dogra Raghav
  2015-11-03  7:36               ` Scott Wood
  0 siblings, 1 reply; 16+ messages in thread
From: Dogra Raghav @ 2015-11-03  6:33 UTC (permalink / raw)
  To: Scott Wood; +Cc: Kushwaha Prabhakar, linuxppc-dev

DQpIaSBTY290dCwNCg0KSSBqdXN0IGNoZWNrZWQgb24gcGF0Y2h3b3JrIGFuZCBub3RpY2VkIHRo
YXQgdGhlIG9yaWdpbmFsIHBhdGNoIGhhcyBiZWVuIG1vZGlmaWVkIGFzIHNvbWVob3cgbXkgb3Jp
Z2luYWwgY29tbWVudCBoYXMgYmVjb21lIHBhcnQgb2YgdGhlIHBhdGNoOg0KKwlpZiAoIWxiYykN
CisJCWdvdG8gb3V0Ow0KIA0KIAljdHJsLT5zYXZlZF9yZWdzID0ga21hbGxvYyhzaXplb2Yoc3Ry
dWN0IGZzbF9sYmNfcmVncyksIEdGUF9LRVJORUwpOw0KIAlpZiAoIWN0cmwtPnNhdmVkX3JlZ3Mp
DQogCQlyZXR1cm4gLUVOT01FTTsNCltEb2dyYSBSYWdoYXYtQjQ2MTg0XSBUaGlzIGlzIHRoZSBl
eGlzdGluZyB1cHN0cmVhbSBjb2RlLiBBcmUgeW91IHN1Z2dlc3RpbmcgdG8gbW9kaWZ5IHRoZSB1
cHN0cmVhbSBjb2RlIHRvIHRha2UgY2FyZSBvZiBpbmRpdmlkdWFsIHJlZ2lzdGVycz8NCiANCiAJ
X21lbWNweV9mcm9taW8oY3RybC0+c2F2ZWRfcmVncywgbGJjLCBzaXplb2Yoc3RydWN0IGZzbF9s
YmNfcmVncykpOw0KKw0KVGhlIHBhdGNod29yayBpcyBhbHNvIHNob3dpbmcgdHdvIGxpbmtzIGZv
ciB0aGUgcGF0Y2guIFBsZWFzZSBhcHBseSB0aGUgb3JpZ2luYWwgcGF0Y2ggcHJlc2VudCBhdDoN
Cmh0dHBzOi8vcGF0Y2h3b3JrLm96bGFicy5vcmcvcGF0Y2gvNTM4NjA1Lw0KDQpJIHdpbGwgbG9v
ayBpbnRvIGhvdyB0aGlzIGhhcHBlbmVkIHRvIGF2b2lkIHN1Y2ggaW5jaWRlbnRzIGluIGZ1dHVy
ZS4NCg0KUmVnYXJkcywNClJhZ2hhdg0K

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  6:33             ` Dogra Raghav
@ 2015-11-03  7:36               ` Scott Wood
  2015-11-03  9:12                 ` Dogra Raghav
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-11-03  7:36 UTC (permalink / raw)
  To: Dogra Raghav-B46184; +Cc: Kushwaha Prabhakar-B32579, linuxppc-dev

On Tue, 2015-11-03 at 00:33 -0600, Dogra Raghav-B46184 wrote:
> Hi Scott,
> 
> I just checked on patchwork and noticed that the original patch has been 
> modified as somehow my original comment has become part of the patch:
> +     if (!lbc)
> +             goto out;
>  
>       ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs), GFP_KERNEL);
>       if (!ctrl->saved_regs)
>               return -ENOMEM;
> [Dogra Raghav-B46184] This is the existing upstream code. Are you 
> suggesting to modify the upstream code to take care of individual registers?
>  
>       _memcpy_fromio(ctrl->saved_regs, lbc, sizeof(struct fsl_lbc_regs));
> +
> The patchwork is also showing two links for the patch. Please apply the 
> original patch present at:
> https://patchwork.ozlabs.org/patch/538605/
> 
> I will look into how this happened to avoid such incidents in future.

Your reply looked like a new patch, so Patchwork treated it as such.  If you 
fix your mailer to use proper quote markers (the > at the beginning of each 
line) then this won't happen.

-Scott

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

* RE: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-11-03  7:36               ` Scott Wood
@ 2015-11-03  9:12                 ` Dogra Raghav
  0 siblings, 0 replies; 16+ messages in thread
From: Dogra Raghav @ 2015-11-03  9:12 UTC (permalink / raw)
  To: Scott Wood; +Cc: Kushwaha Prabhakar, linuxppc-dev

DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogV29vZCBTY290dC1CMDc0
MjENCj4gU2VudDogVHVlc2RheSwgTm92ZW1iZXIgMDMsIDIwMTUgMTowNyBQTQ0KPiBUbzogRG9n
cmEgUmFnaGF2LUI0NjE4NCA8cmFnaGF2QGZyZWVzY2FsZS5jb20+DQo+IENjOiBLdXNod2FoYSBQ
cmFiaGFrYXItQjMyNTc5IDxwcmFiaGFrYXJAZnJlZXNjYWxlLmNvbT47IGxpbnV4cHBjLQ0KPiBk
ZXZAbGlzdHMub3psYWJzLm9yZw0KPiBTdWJqZWN0OiBSZTogW1BBVENIIDEvMl0gbXBjODV4eC9s
YmM6IG1vZGlmeSBzdXNwZW5kL3Jlc3VtZSBlbnRyeQ0KPiBzZXF1ZW5jZQ0KPiANCj4gT24gVHVl
LCAyMDE1LTExLTAzIGF0IDAwOjMzIC0wNjAwLCBEb2dyYSBSYWdoYXYtQjQ2MTg0IHdyb3RlOg0K
PiA+IEhpIFNjb3R0LA0KPiA+DQo+ID4gSSBqdXN0IGNoZWNrZWQgb24gcGF0Y2h3b3JrIGFuZCBu
b3RpY2VkIHRoYXQgdGhlIG9yaWdpbmFsIHBhdGNoIGhhcw0KPiA+IGJlZW4gbW9kaWZpZWQgYXMg
c29tZWhvdyBteSBvcmlnaW5hbCBjb21tZW50IGhhcyBiZWNvbWUgcGFydCBvZiB0aGUNCj4gcGF0
Y2g6DQo+ID4gKyAgICAgaWYgKCFsYmMpDQo+ID4gKyAgICAgICAgICAgICBnb3RvIG91dDsNCj4g
Pg0KPiA+ICAgICAgIGN0cmwtPnNhdmVkX3JlZ3MgPSBrbWFsbG9jKHNpemVvZihzdHJ1Y3QgZnNs
X2xiY19yZWdzKSwgR0ZQX0tFUk5FTCk7DQo+ID4gICAgICAgaWYgKCFjdHJsLT5zYXZlZF9yZWdz
KQ0KPiA+ICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+ID4gW0RvZ3JhIFJhZ2hhdi1C
NDYxODRdIFRoaXMgaXMgdGhlIGV4aXN0aW5nIHVwc3RyZWFtIGNvZGUuIEFyZSB5b3UNCj4gPiBz
dWdnZXN0aW5nIHRvIG1vZGlmeSB0aGUgdXBzdHJlYW0gY29kZSB0byB0YWtlIGNhcmUgb2YgaW5k
aXZpZHVhbA0KPiByZWdpc3RlcnM/DQo+ID4NCj4gPiAgICAgICBfbWVtY3B5X2Zyb21pbyhjdHJs
LT5zYXZlZF9yZWdzLCBsYmMsIHNpemVvZihzdHJ1Y3QNCj4gPiBmc2xfbGJjX3JlZ3MpKTsNCj4g
PiArDQo+ID4gVGhlIHBhdGNod29yayBpcyBhbHNvIHNob3dpbmcgdHdvIGxpbmtzIGZvciB0aGUg
cGF0Y2guIFBsZWFzZSBhcHBseQ0KPiA+IHRoZSBvcmlnaW5hbCBwYXRjaCBwcmVzZW50IGF0Og0K
PiA+IGh0dHBzOi8vcGF0Y2h3b3JrLm96bGFicy5vcmcvcGF0Y2gvNTM4NjA1Lw0KPiA+DQo+ID4g
SSB3aWxsIGxvb2sgaW50byBob3cgdGhpcyBoYXBwZW5lZCB0byBhdm9pZCBzdWNoIGluY2lkZW50
cyBpbiBmdXR1cmUuDQo+IA0KPiBZb3VyIHJlcGx5IGxvb2tlZCBsaWtlIGEgbmV3IHBhdGNoLCBz
byBQYXRjaHdvcmsgdHJlYXRlZCBpdCBhcyBzdWNoLiAgSWYgeW91IGZpeA0KPiB5b3VyIG1haWxl
ciB0byB1c2UgcHJvcGVyIHF1b3RlIG1hcmtlcnMgKHRoZSA+IGF0IHRoZSBiZWdpbm5pbmcgb2Yg
ZWFjaA0KPiBsaW5lKSB0aGVuIHRoaXMgd29uJ3QgaGFwcGVuLg0KPiANCj4gLVNjb3R0DQoNCk9r
LCBzb3J0ZWQuDQoNCi1SYWdoYXYNCg==

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

* Re: [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-10-30  6:24 [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence Raghav Dogra
  2015-10-30 20:03 ` Scott Wood
  2015-11-02  6:12 ` Dogra Raghav
@ 2015-12-23 21:10 ` Scott Wood
  2015-12-24  4:19 ` [1/2] " Scott Wood
  3 siblings, 0 replies; 16+ messages in thread
From: Scott Wood @ 2015-12-23 21:10 UTC (permalink / raw)
  To: Raghav Dogra, linuxppc-dev; +Cc: prabhakar

On Fri, 2015-10-30 at 11:54 +0530, Raghav Dogra wrote:
> Modify platform driver suspend/resume to syscore
> suspend/resume. This is because p1022ds needs to use
> localbus when entering the PCIE resume.
> 
> Signed-off-by: Raghav Dogra <raghav@freescale.com>
> ---
>  arch/powerpc/sysdev/Makefile  |  2 +-
>  arch/powerpc/sysdev/fsl_lbc.c | 51 +++++++++++++++++++++++++++++++++-------
> ---
>  2 files changed, 40 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile
> index f7cb2a1..4c19e614 100644
> --- a/arch/powerpc/sysdev/Makefile
> +++ b/arch/powerpc/sysdev/Makefile
> @@ -18,9 +18,9 @@ obj-$(CONFIG_PPC_PMI)		+= pmi.o
>  obj-$(CONFIG_U3_DART)		+= dart_iommu.o
>  obj-$(CONFIG_MMIO_NVRAM)	+= mmio_nvram.o
>  obj-$(CONFIG_FSL_SOC)		+= fsl_soc.o fsl_mpic_err.o
> +obj-$(CONFIG_FSL_LBC)		+= fsl_lbc.o
>  obj-$(CONFIG_FSL_PCI)		+= fsl_pci.o $(fsl-msi-obj-y)
>  obj-$(CONFIG_FSL_PMC)		+= fsl_pmc.o
> -obj-$(CONFIG_FSL_LBC)		+= fsl_lbc.o
>  obj-$(CONFIG_FSL_GTM)		+= fsl_gtm.o
>  obj-$(CONFIG_FSL_85XX_CACHE_SRAM)	+= fsl_85xx_l2ctlr.o
> fsl_85xx_cache_sram.o
>  obj-$(CONFIG_SIMPLE_GPIO)	+= simple_gpio.o
> diff --git a/arch/powerpc/sysdev/fsl_lbc.c b/arch/powerpc/sysdev/fsl_lbc.c
> index d631022..332d700 100644
> --- a/arch/powerpc/sysdev/fsl_lbc.c
> +++ b/arch/powerpc/sysdev/fsl_lbc.c
> @@ -27,6 +27,7 @@
>  #include <linux/platform_device.h>
>  #include <linux/interrupt.h>
>  #include <linux/mod_devicetable.h>
> +#include <linux/syscore_ops.h>
>  #include <asm/prom.h>
>  #include <asm/fsl_lbc.h>
>  
> @@ -354,24 +355,42 @@ err:
>  #ifdef CONFIG_SUSPEND
>  
>  /* save lbc registers */
> -static int fsl_lbc_suspend(struct platform_device *pdev, pm_message_t
> state)
> +static int fsl_lbc_syscore_suspend(void)
>  {
> -	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> -	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> +	struct fsl_lbc_ctrl *ctrl;
> +	struct fsl_lbc_regs __iomem *lbc;
> +
> +	ctrl = fsl_lbc_ctrl_dev;
> +	if (!ctrl)
> +		goto out;
> +
> +	lbc = ctrl->regs;
> +	if (!lbc)
> +		goto out;
>  
>  	ctrl->saved_regs = kmalloc(sizeof(struct fsl_lbc_regs),
> GFP_KERNEL);
>  	if (!ctrl->saved_regs)
>  		return -ENOMEM;
>  
>  	_memcpy_fromio(ctrl->saved_regs, lbc, sizeof(struct fsl_lbc_regs));
> +
> +out:
>  	return 0;
>  }
>  
>  /* restore lbc registers */
> -static int fsl_lbc_resume(struct platform_device *pdev)
> +static int fsl_lbc_syscore_resume(void)
>  {
> -	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> -	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> +	struct fsl_lbc_ctrl *ctrl;
> +	struct fsl_lbc_regs __iomem *lbc;
> +
> +	ctrl = fsl_lbc_ctrl_dev;
> +	if (!ctrl)
> +		goto out;
> +
> +	lbc = ctrl->regs;
> +	if (!lbc)
> +		goto out;
>  
>  	if (ctrl->saved_regs) {
>  		_memcpy_toio(lbc, ctrl->saved_regs,
> @@ -379,7 +398,9 @@ static int fsl_lbc_resume(struct platform_device *pdev)
>  		kfree(ctrl->saved_regs);
>  		ctrl->saved_regs = NULL;
>  	}
> -	return 0;
> +
> +out:
> +	return;
>  }
>  #endif /* CONFIG_SUSPEND */
>  
> @@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] = {
>  	{},
>  };
>  
> +#ifdef CONFIG_SUSPEND
> +static struct syscore_ops lbc_syscore_pm_ops = {
> +	.suspend = fsl_lbc_syscore_suspend,
> +	.resume = fsl_lbc_syscore_resume,
> +};
> +#endif
> +
>  static struct platform_driver fsl_lbc_ctrl_driver = {
>  	.driver = {
>  		.name = "fsl-lbc",
>  		.of_match_table = fsl_lbc_match,
>  	},
>  	.probe = fsl_lbc_ctrl_probe,
> -#ifdef CONFIG_SUSPEND
> -	.suspend     = fsl_lbc_suspend,
> -	.resume      = fsl_lbc_resume,
> -#endif
>  };
>  
>  static int __init fsl_lbc_init(void)
>  {
> +#ifdef CONFIG_SUSPEND
> +	register_syscore_ops(&lbc_syscore_pm_ops);
> +#endif
>  	return platform_driver_register(&fsl_lbc_ctrl_driver);
>  }
> -module_init(fsl_lbc_init);
> +arch_initcall(fsl_lbc_init);

This was changed to subsys_initcall as of v4.2...  What tree did you use to
generate this patch?  I'll fix the conflict this time, but please always base
patches against the latest code -- and test them in that context.

-Scott

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

* Re: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-10-30  6:24 [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence Raghav Dogra
                   ` (2 preceding siblings ...)
  2015-12-23 21:10 ` Scott Wood
@ 2015-12-24  4:19 ` Scott Wood
  2015-12-24  4:38   ` Kushwaha Prabhakar
  3 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-12-24  4:19 UTC (permalink / raw)
  To: Raghav Dogra; +Cc: linuxppc-dev, prabhakar

On Fri, Oct 30, 2015 at 11:54:59AM +0530, Raghav Dogra wrote:
>  /* restore lbc registers */
> -static int fsl_lbc_resume(struct platform_device *pdev)
> +static int fsl_lbc_syscore_resume(void)
>  {
> -	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> -	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> +	struct fsl_lbc_ctrl *ctrl;
> +	struct fsl_lbc_regs __iomem *lbc;
> +
> +	ctrl = fsl_lbc_ctrl_dev;
> +	if (!ctrl)
> +		goto out;
> +
> +	lbc = ctrl->regs;
> +	if (!lbc)
> +		goto out;
>  
>  	if (ctrl->saved_regs) {
>  		_memcpy_toio(lbc, ctrl->saved_regs,
> @@ -379,7 +398,9 @@ static int fsl_lbc_resume(struct platform_device *pdev)
>  		kfree(ctrl->saved_regs);
>  		ctrl->saved_regs = NULL;
>  	}
> -	return 0;
> +
> +out:
> +	return;
>  }

arch/powerpc/sysdev/fsl_lbc.c:401:2: error: 
'return' with no value, in function returning non-void [-Werror=return-type]


>  #endif /* CONFIG_SUSPEND */
>  
> @@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] = {
>  	{},
>  };
>  
> +#ifdef CONFIG_SUSPEND
> +static struct syscore_ops lbc_syscore_pm_ops = {
> +	.suspend = fsl_lbc_syscore_suspend,
> +	.resume = fsl_lbc_syscore_resume,
> +};
> +#endif

arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
initialization from incompatible pointer type [-Werror]
arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
(near initialization for 'lbc_syscore_pm_ops.resume') [-Werror]

-Scott

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

* RE: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-12-24  4:19 ` [1/2] " Scott Wood
@ 2015-12-24  4:38   ` Kushwaha Prabhakar
  2015-12-24  4:49     ` Scott Wood
  0 siblings, 1 reply; 16+ messages in thread
From: Kushwaha Prabhakar @ 2015-12-24  4:38 UTC (permalink / raw)
  To: Scott Wood, Dogra Raghav; +Cc: linuxppc-dev

> -----Original Message-----
> From: Wood Scott-B07421
> Sent: Thursday, December 24, 2015 9:49 AM
> To: Dogra Raghav-B46184 <raghav@freescale.com>
> Cc: linuxppc-dev@lists.ozlabs.org; Kushwaha Prabhakar-B32579
> <prabhakar@freescale.com>
> Subject: Re: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
>=20
> On Fri, Oct 30, 2015 at 11:54:59AM +0530, Raghav Dogra wrote:
> >  /* restore lbc registers */
> > -static int fsl_lbc_resume(struct platform_device *pdev)
> > +static int fsl_lbc_syscore_resume(void)
> >  {
> > -	struct fsl_lbc_ctrl *ctrl =3D dev_get_drvdata(&pdev->dev);
> > -	struct fsl_lbc_regs __iomem *lbc =3D ctrl->regs;
> > +	struct fsl_lbc_ctrl *ctrl;
> > +	struct fsl_lbc_regs __iomem *lbc;
> > +
> > +	ctrl =3D fsl_lbc_ctrl_dev;
> > +	if (!ctrl)
> > +		goto out;
> > +
> > +	lbc =3D ctrl->regs;
> > +	if (!lbc)
> > +		goto out;
> >
> >  	if (ctrl->saved_regs) {
> >  		_memcpy_toio(lbc, ctrl->saved_regs, @@ -379,7 +398,9 @@
> static int
> > fsl_lbc_resume(struct platform_device *pdev)
> >  		kfree(ctrl->saved_regs);
> >  		ctrl->saved_regs =3D NULL;
> >  	}
> > -	return 0;
> > +
> > +out:
> > +	return;
> >  }
>=20
> arch/powerpc/sysdev/fsl_lbc.c:401:2: error:
> 'return' with no value, in function returning non-void [-Werror=3Dreturn-=
type]
>=20
>=20
> >  #endif /* CONFIG_SUSPEND */
> >
> > @@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] =
=3D
> {
> >  	{},
> >  };
> >
> > +#ifdef CONFIG_SUSPEND
> > +static struct syscore_ops lbc_syscore_pm_ops =3D {
> > +	.suspend =3D fsl_lbc_syscore_suspend,
> > +	.resume =3D fsl_lbc_syscore_resume,
> > +};
> > +#endif
>=20
> arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
> initialization from incompatible pointer type [-Werror]
> arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
> (near initialization for 'lbc_syscore_pm_ops.resume') [-Werror]
>=20

Can you please help us with the tool-chain used for compiling.

--prabhakar

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

* Re: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-12-24  4:38   ` Kushwaha Prabhakar
@ 2015-12-24  4:49     ` Scott Wood
  2015-12-24  5:22       ` Kushwaha Prabhakar
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2015-12-24  4:49 UTC (permalink / raw)
  To: Kushwaha Prabhakar-B32579, Dogra Raghav-B46184; +Cc: linuxppc-dev

On Wed, 2015-12-23 at 22:38 -0600, Kushwaha Prabhakar-B32579 wrote:
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Thursday, December 24, 2015 9:49 AM
> > To: Dogra Raghav-B46184 <raghav@freescale.com>
> > Cc: linuxppc-dev@lists.ozlabs.org; Kushwaha Prabhakar-B32579
> > <prabhakar@freescale.com>
> > Subject: Re: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
> > 
> > On Fri, Oct 30, 2015 at 11:54:59AM +0530, Raghav Dogra wrote:
> > >  /* restore lbc registers */
> > > -static int fsl_lbc_resume(struct platform_device *pdev)
> > > +static int fsl_lbc_syscore_resume(void)
> > >  {
> > > -	struct fsl_lbc_ctrl *ctrl = dev_get_drvdata(&pdev->dev);
> > > -	struct fsl_lbc_regs __iomem *lbc = ctrl->regs;
> > > +	struct fsl_lbc_ctrl *ctrl;
> > > +	struct fsl_lbc_regs __iomem *lbc;
> > > +
> > > +	ctrl = fsl_lbc_ctrl_dev;
> > > +	if (!ctrl)
> > > +		goto out;
> > > +
> > > +	lbc = ctrl->regs;
> > > +	if (!lbc)
> > > +		goto out;
> > > 
> > >  	if (ctrl->saved_regs) {
> > >  		_memcpy_toio(lbc, ctrl->saved_regs, @@ -379,7 +398,9 @@
> > static int
> > > fsl_lbc_resume(struct platform_device *pdev)
> > >  		kfree(ctrl->saved_regs);
> > >  		ctrl->saved_regs = NULL;
> > >  	}
> > > -	return 0;
> > > +
> > > +out:
> > > +	return;
> > >  }
> > 
> > arch/powerpc/sysdev/fsl_lbc.c:401:2: error:
> > 'return' with no value, in function returning non-void [-Werror=return
> > -type]
> > 
> > 
> > >  #endif /* CONFIG_SUSPEND */
> > > 
> > > @@ -391,20 +412,26 @@ static const struct of_device_id fsl_lbc_match[] =
> > {
> > >  	{},
> > >  };
> > > 
> > > +#ifdef CONFIG_SUSPEND
> > > +static struct syscore_ops lbc_syscore_pm_ops = {
> > > +	.suspend = fsl_lbc_syscore_suspend,
> > > +	.resume = fsl_lbc_syscore_resume,
> > > +};
> > > +#endif
> > 
> > arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
> > initialization from incompatible pointer type [-Werror]
> > arch/powerpc/sysdev/fsl_lbc.c:416:2: error:
> > (near initialization for 'lbc_syscore_pm_ops.resume') [-Werror]
> > 
> 
> Can you please help us with the tool-chain used for compiling.

It doesn't matter.  The patch is clearly wrong based on inspection.

-Scott

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

* RE: [1/2] mpc85xx/lbc: modify suspend/resume entry sequence
  2015-12-24  4:49     ` Scott Wood
@ 2015-12-24  5:22       ` Kushwaha Prabhakar
  0 siblings, 0 replies; 16+ messages in thread
From: Kushwaha Prabhakar @ 2015-12-24  5:22 UTC (permalink / raw)
  To: Scott Wood, Dogra Raghav; +Cc: linuxppc-dev

DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFdvb2QgU2NvdHQtQjA3NDIx
DQo+IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJlciAyNCwgMjAxNSAxMDoxOSBBTQ0KPiBUbzogS3Vz
aHdhaGEgUHJhYmhha2FyLUIzMjU3OSA8cHJhYmhha2FyQGZyZWVzY2FsZS5jb20+OyBEb2dyYQ0K
PiBSYWdoYXYtQjQ2MTg0IDxyYWdoYXZAZnJlZXNjYWxlLmNvbT4NCj4gQ2M6IGxpbnV4cHBjLWRl
dkBsaXN0cy5vemxhYnMub3JnDQo+IFN1YmplY3Q6IFJlOiBbMS8yXSBtcGM4NXh4L2xiYzogbW9k
aWZ5IHN1c3BlbmQvcmVzdW1lIGVudHJ5IHNlcXVlbmNlDQo+IA0KPiBPbiBXZWQsIDIwMTUtMTIt
MjMgYXQgMjI6MzggLTA2MDAsIEt1c2h3YWhhIFByYWJoYWthci1CMzI1Nzkgd3JvdGU6DQo+ID4g
PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogV29vZCBTY290dC1CMDc0
MjENCj4gPiA+IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJlciAyNCwgMjAxNSA5OjQ5IEFNDQo+ID4g
PiBUbzogRG9ncmEgUmFnaGF2LUI0NjE4NCA8cmFnaGF2QGZyZWVzY2FsZS5jb20+DQo+ID4gPiBD
YzogbGludXhwcGMtZGV2QGxpc3RzLm96bGFicy5vcmc7IEt1c2h3YWhhIFByYWJoYWthci1CMzI1
NzkNCj4gPiA+IDxwcmFiaGFrYXJAZnJlZXNjYWxlLmNvbT4NCj4gPiA+IFN1YmplY3Q6IFJlOiBb
MS8yXSBtcGM4NXh4L2xiYzogbW9kaWZ5IHN1c3BlbmQvcmVzdW1lIGVudHJ5IHNlcXVlbmNlDQo+
ID4gPg0KPiA+ID4gT24gRnJpLCBPY3QgMzAsIDIwMTUgYXQgMTE6NTQ6NTlBTSArMDUzMCwgUmFn
aGF2IERvZ3JhIHdyb3RlOg0KPiA+ID4gPiAgLyogcmVzdG9yZSBsYmMgcmVnaXN0ZXJzICovDQo+
ID4gPiA+IC1zdGF0aWMgaW50IGZzbF9sYmNfcmVzdW1lKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug
KnBkZXYpDQo+ID4gPiA+ICtzdGF0aWMgaW50IGZzbF9sYmNfc3lzY29yZV9yZXN1bWUodm9pZCkN
Cj4gPiA+ID4gIHsNCj4gPiA+ID4gLQlzdHJ1Y3QgZnNsX2xiY19jdHJsICpjdHJsID0gZGV2X2dl
dF9kcnZkYXRhKCZwZGV2LT5kZXYpOw0KPiA+ID4gPiAtCXN0cnVjdCBmc2xfbGJjX3JlZ3MgX19p
b21lbSAqbGJjID0gY3RybC0+cmVnczsNCj4gPiA+ID4gKwlzdHJ1Y3QgZnNsX2xiY19jdHJsICpj
dHJsOw0KPiA+ID4gPiArCXN0cnVjdCBmc2xfbGJjX3JlZ3MgX19pb21lbSAqbGJjOw0KPiA+ID4g
PiArDQo+ID4gPiA+ICsJY3RybCA9IGZzbF9sYmNfY3RybF9kZXY7DQo+ID4gPiA+ICsJaWYgKCFj
dHJsKQ0KPiA+ID4gPiArCQlnb3RvIG91dDsNCj4gPiA+ID4gKw0KPiA+ID4gPiArCWxiYyA9IGN0
cmwtPnJlZ3M7DQo+ID4gPiA+ICsJaWYgKCFsYmMpDQo+ID4gPiA+ICsJCWdvdG8gb3V0Ow0KPiA+
ID4gPg0KPiA+ID4gPiAgCWlmIChjdHJsLT5zYXZlZF9yZWdzKSB7DQo+ID4gPiA+ICAJCV9tZW1j
cHlfdG9pbyhsYmMsIGN0cmwtPnNhdmVkX3JlZ3MsIEBAIC0zNzksNyArMzk4LDkgQEANCj4gPiA+
IHN0YXRpYyBpbnQNCj4gPiA+ID4gZnNsX2xiY19yZXN1bWUoc3RydWN0IHBsYXRmb3JtX2Rldmlj
ZSAqcGRldikNCj4gPiA+ID4gIAkJa2ZyZWUoY3RybC0+c2F2ZWRfcmVncyk7DQo+ID4gPiA+ICAJ
CWN0cmwtPnNhdmVkX3JlZ3MgPSBOVUxMOw0KPiA+ID4gPiAgCX0NCj4gPiA+ID4gLQlyZXR1cm4g
MDsNCj4gPiA+ID4gKw0KPiA+ID4gPiArb3V0Og0KPiA+ID4gPiArCXJldHVybjsNCj4gPiA+ID4g
IH0NCj4gPiA+DQo+ID4gPiBhcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9sYmMuYzo0MDE6MjogZXJy
b3I6DQo+ID4gPiAncmV0dXJuJyB3aXRoIG5vIHZhbHVlLCBpbiBmdW5jdGlvbiByZXR1cm5pbmcg
bm9uLXZvaWQNCj4gPiA+IFstV2Vycm9yPXJldHVybiAtdHlwZV0NCj4gPiA+DQo+ID4gPg0KPiA+
ID4gPiAgI2VuZGlmIC8qIENPTkZJR19TVVNQRU5EICovDQo+ID4gPiA+DQo+ID4gPiA+IEBAIC0z
OTEsMjAgKzQxMiwyNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZA0KPiA+ID4g
PiBmc2xfbGJjX21hdGNoW10gPQ0KPiA+ID4gew0KPiA+ID4gPiAgCXt9LA0KPiA+ID4gPiAgfTsN
Cj4gPiA+ID4NCj4gPiA+ID4gKyNpZmRlZiBDT05GSUdfU1VTUEVORA0KPiA+ID4gPiArc3RhdGlj
IHN0cnVjdCBzeXNjb3JlX29wcyBsYmNfc3lzY29yZV9wbV9vcHMgPSB7DQo+ID4gPiA+ICsJLnN1
c3BlbmQgPSBmc2xfbGJjX3N5c2NvcmVfc3VzcGVuZCwNCj4gPiA+ID4gKwkucmVzdW1lID0gZnNs
X2xiY19zeXNjb3JlX3Jlc3VtZSwgfTsgI2VuZGlmDQo+ID4gPg0KPiA+ID4gYXJjaC9wb3dlcnBj
L3N5c2Rldi9mc2xfbGJjLmM6NDE2OjI6IGVycm9yOg0KPiA+ID4gaW5pdGlhbGl6YXRpb24gZnJv
bSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yXQ0KPiA+ID4gYXJjaC9wb3dlcnBj
L3N5c2Rldi9mc2xfbGJjLmM6NDE2OjI6IGVycm9yOg0KPiA+ID4gKG5lYXIgaW5pdGlhbGl6YXRp
b24gZm9yICdsYmNfc3lzY29yZV9wbV9vcHMucmVzdW1lJykgWy1XZXJyb3JdDQo+ID4gPg0KPiA+
DQo+ID4gQ2FuIHlvdSBwbGVhc2UgaGVscCB1cyB3aXRoIHRoZSB0b29sLWNoYWluIHVzZWQgZm9y
IGNvbXBpbGluZy4NCj4gDQo+IEl0IGRvZXNuJ3QgbWF0dGVyLiAgVGhlIHBhdGNoIGlzIGNsZWFy
bHkgd3JvbmcgYmFzZWQgb24gaW5zcGVjdGlvbi4NCj4gDQoNCkNhbiB5b3UgcGxlYXNlIGhlbHAg
bWUgd2l0aCB0aGUgdGhpbmdzIHdoaWNoIG5lZWRzIHRvIGJlIHVwZGF0ZWQNCk9yIA0KQ29tcGxl
dGUgcGF0Y2ggaXMgd3JvbmcuDQoNCi0tcHJhYmhha2FyDQoNCg==

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

end of thread, other threads:[~2015-12-24  5:36 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-30  6:24 [PATCH 1/2] mpc85xx/lbc: modify suspend/resume entry sequence Raghav Dogra
2015-10-30 20:03 ` Scott Wood
2015-11-02  6:12 ` Dogra Raghav
2015-11-02 23:00   ` Scott Wood
2015-11-03  5:31     ` Dogra Raghav
2015-11-03  5:39       ` Scott Wood
2015-11-03  6:09         ` Dogra Raghav
2015-11-03  6:13           ` Scott Wood
2015-11-03  6:33             ` Dogra Raghav
2015-11-03  7:36               ` Scott Wood
2015-11-03  9:12                 ` Dogra Raghav
2015-12-23 21:10 ` Scott Wood
2015-12-24  4:19 ` [1/2] " Scott Wood
2015-12-24  4:38   ` Kushwaha Prabhakar
2015-12-24  4:49     ` Scott Wood
2015-12-24  5:22       ` Kushwaha Prabhakar

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.