[v4,0/6] Pad retentions support for Exynos5433

Message ID 1490256207-10061-1-git-send-email-m.szyprowski@samsung.com
Headers show
Series
  • Pad retentions support for Exynos5433
Related show

Message

Marek Szyprowski March 23, 2017, 8:03 a.m.
Hello,

This patchset is a next step to add support for all power domains on
Exynos5433 SoCs. This patchset contains patches for Exynos pin control
driver and Exynos LPASS MFD driver, which are needed to make the
platform ready for adding power domains support.

Patches in this patchset have runtime dependency. They are order in such
a way to make the changes bisectable (mfd lpass changes should be applied
after pinctrl patches). Other dependencies mentioned previously in v3 of
this patchset has been finally merged to v4.11-rc1.

Patches have been rebased on top of linux v4.11-rc3.

Best regards
Marek Szyprowski
Samsung R&D Institute Poland


Changelog:
v4:
- rebased onto v4.11-rc3
- added missing Acks from Lee Jones and Rob Herring

v3: https://lkml.org/lkml/2017/1/30/358
- moved adding new PMU register defines to separate patch (requested by
  Krzysztof Kozlowski)
- rebased onto Linux next-20170130 (removed "soc: samsung: pmu: Add dummy
  support for Exynos5433 SoC" and "arm64: dts: exynos: Add clocks to
  Exynos5433 LPASS module" patches, which are already merged)

v2: https://lkml.org/lkml/2017/1/26/57
- fixed issues pointed by Krzysztof Kozlowski:
  1. added more checks to Exynos PMU driver for NULL drvdata
  2. reused EXYNOS_WAKEUP_FROM_LOWPWR in retention data for Exynos5433
  3. converted lpass driver to devm_clk_get
  4. added missing ->remove callback to lpass driver

v1: https://lkml.org/lkml/2017/1/25/214
- initial version


Patch summary:

Marek Szyprowski (6):
  pinctrl: samsung: Ensure that pad retention is disabled on driver init
  pinctrl: samsung: Add support for pad retention control for Exynos5433
    SoCs
  mfd: exynos-lpass: Remove pad retention control
  mfd: exynos-lpass: Add support for clocks
  mfd: exynos-lpass: Add missing remove() function
  mfd: exynos-lpass: Add runtime PM support

 .../bindings/mfd/samsung,exynos5433-lpass.txt      |  8 ++-
 drivers/mfd/exynos-lpass.c                         | 48 ++++++++++-------
 drivers/pinctrl/samsung/pinctrl-exynos.c           | 63 ++++++++++++++++++++++
 include/linux/mfd/syscon/exynos5-pmu.h             |  3 --
 4 files changed, 99 insertions(+), 23 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Krzysztof Kozlowski March 23, 2017, 7:15 p.m. | #1
On Thu, Mar 23, 2017 at 09:03:23AM +0100, Marek Szyprowski wrote:
> This patch adds support for retention control for Exynos5433 SoCs. Three

> groups of pins has been defined for retention control: common shared group

> for ALIVE, CPIF, eSE, FINGER, IMEM, NFC, PERIC, TOUCH pin banks and

> separate control for FSYS and AUD pin banks, for which PMU retention

> registers match whole banks.

> 

> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

> ---

>  drivers/pinctrl/samsung/pinctrl-exynos.c | 58 ++++++++++++++++++++++++++++++++

>  1 file changed, 58 insertions(+)

> 


Thanks, applied.

Let it settle for one day so auto-builders will catch up and then I will
provide a stable tag for Lee (MFD).

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Krzysztof Kozlowski March 28, 2017, 10:14 a.m. | #2
On Tue, Mar 28, 2017 at 12:22 PM, Linus Walleij
<linus.walleij@linaro.org> wrote:
> On Thu, Mar 23, 2017 at 9:03 AM, Marek Szyprowski

> <m.szyprowski@samsung.com> wrote:

>

>> This patchset is a next step to add support for all power domains on

>> Exynos5433 SoCs. This patchset contains patches for Exynos pin control

>> driver and Exynos LPASS MFD driver, which are needed to make the

>> platform ready for adding power domains support.

>>

>> Patches in this patchset have runtime dependency. They are order in such

>> a way to make the changes bisectable (mfd lpass changes should be applied

>> after pinctrl patches). Other dependencies mentioned previously in v3 of

>> this patchset has been finally merged to v4.11-rc1.

>>

>> Patches have been rebased on top of linux v4.11-rc3.

>

> Pinctrl development is based on -rc1.

>

> I expect Krzysztof to figure out and apply the patches to his Samsung pinctrl

> branch and forward to me, all looks OK to me.


Yes, I already have them:
https://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/samsung.git/log/?h=pinctrl-next

However this reminds me to prepare a pull request for mfd tree because
they base on top of it.

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Krzysztof Kozlowski April 4, 2017, 8:23 a.m. | #3
On Mon, Apr 3, 2017 at 12:18 PM, Lee Jones <lee.jones@linaro.org> wrote:
> On Tue, 28 Mar 2017, Krzysztof Kozlowski wrote:

>

>>

>> Hi Lee,

>>

>>

>> This is dependency for mfd/exynos-lpass driver changes from Marek Szyprowski.

>> That's a material for v4.12 and I will be pushing this later to Linus Walleij.

>

> This does not work, and *may* still break.

>

> The only way to guarantee the order of the patches is to have them

> *all* as part of the pull-request.  Not just some of them.


What do you mean exactly? If these two patches come through my tree
first, then everything will work fine because they do not break any
other stuff.

If you pull it and apply the rest on top, then it should also work
without problems because your history will contain everything needed
in proper order.

In both cases bisectability is preserved. Did I missed something?

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lee Jones April 4, 2017, 9:50 a.m. | #4
On Tue, 04 Apr 2017, Krzysztof Kozlowski wrote:

> On Mon, Apr 3, 2017 at 12:18 PM, Lee Jones <lee.jones@linaro.org> wrote:

> > On Tue, 28 Mar 2017, Krzysztof Kozlowski wrote:

> >

> >>

> >> Hi Lee,

> >>

> >>

> >> This is dependency for mfd/exynos-lpass driver changes from Marek Szyprowski.

> >> That's a material for v4.12 and I will be pushing this later to Linus Walleij.

> >

> > This does not work, and *may* still break.

> >

> > The only way to guarantee the order of the patches is to have them

> > *all* as part of the pull-request.  Not just some of them.

> 

> What do you mean exactly? If these two patches come through my tree

> first, then everything will work fine because they do not break any

> other stuff.

> 

> If you pull it and apply the rest on top, then it should also work

> without problems because your history will contain everything needed

> in proper order.

> 

> In both cases bisectability is preserved. Did I missed something?


Okay, so you're suggesting that I rebase MFD *on-top* of your PR.  That
does work for me because I insist on being able to re-work my tree at
any time.  However, be aware that some Maintainers do not work this
way, thus *normally* you will have to send PR containing all of the
dependant patches.

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lee Jones April 11, 2017, 12:03 p.m. | #5
On Thu, 23 Mar 2017, Marek Szyprowski wrote:

> Disable device on driver remove and release allocated regmap.

> 

> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

> Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

> ---

>  drivers/mfd/exynos-lpass.c | 11 +++++++++++

>  1 file changed, 11 insertions(+)


Applied, thanks.

> diff --git a/drivers/mfd/exynos-lpass.c b/drivers/mfd/exynos-lpass.c

> index be264988bdc9..9dbbedad916f 100644

> --- a/drivers/mfd/exynos-lpass.c

> +++ b/drivers/mfd/exynos-lpass.c

> @@ -137,6 +137,16 @@ static int exynos_lpass_probe(struct platform_device *pdev)

>  	return of_platform_populate(dev->of_node, NULL, NULL, dev);

>  }

>  

> +static int exynos_lpass_remove(struct platform_device *pdev)

> +{

> +	struct exynos_lpass *lpass = platform_get_drvdata(pdev);

> +

> +	exynos_lpass_disable(lpass);

> +	regmap_exit(lpass->top);

> +

> +	return 0;

> +}

> +

>  static int __maybe_unused exynos_lpass_suspend(struct device *dev)

>  {

>  	struct exynos_lpass *lpass = dev_get_drvdata(dev);

> @@ -171,6 +181,7 @@ static SIMPLE_DEV_PM_OPS(lpass_pm_ops, exynos_lpass_suspend,

>  		.of_match_table	= exynos_lpass_of_match,

>  	},

>  	.probe	= exynos_lpass_probe,

> +	.remove	= exynos_lpass_remove,

>  };

>  module_platform_driver(exynos_lpass_driver);

>  


-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html