Thread (37 messages) 37 messages, 6 authors, 2016-12-30

[PATCH 0/9] Runtime PM for Exynos pin controller driver

From: m.szyprowski@samsung.com (Marek Szyprowski)
Date: 2016-12-27 08:29:07
Also in: linux-gpio, linux-pm, linux-samsung-soc

Hi Anand,


On 2016-12-24 11:10, Anand Moon wrote:
Hi Marek

On 23 December 2016 at 17:54, Marek Szyprowski [off-list ref] wrote:
quoted
Hello,

This patchset is a next step to add support for audio power domain on
Exynos5 SoCs.

Audio power domain on Exynos5 SoCs contains following hardware modules:
1. clock controller
2. pin controller
3. PL330 DMA controller
4. I2S audio controller

Till now it was assumed that pin controller is located in the "always on"
power domain and lacked runtime power management. This patch finally
removes such assumption and adds runtime pm support and awareness to this
driver. To achieve this, some changes in the Exynos platform support code
were needed, like moving pad retention control to the pin controller driver.
Some cleanup to the pin controller driver has been also done while changing
the code. This new feature requires some additional information in the
device tree, what is handled by patches 1,2 and 9.

Please note that patches are ordered in such a way that the changes can be
bisected, so the properties are added to dts before the code requiring them.

The other patches related to enabling full support for audio power domain
can be found here:
1. PL330 ADMA controller non-irqsafe runtime PM:
    https://www.spinics.net/lists/arm-kernel/msg550008.html
2. Runtime PM for clock controllers (Exynos Audio subsystem will be added
    in v4 soon): https://www.spinics.net/lists/arm-kernel/msg538122.html

Patches are based on linux-next from 2016.12.22.

Best regards
Marek Szyprowski
Samsung R&D Institute Poland


Patch summary:

Marek Szyprowski (9):
   ARM: dts: exynos: Add PMU syscon to pinctrl nodes
   ARM: dts: exynos: Add pinctrl sleep state for 542x i2s module
   pinctrl: samsung: Remove dead code
   pinctrl: samsung: Use generic of_device_get_match_data helper
   pinctrl: samsung: Move retention control from mach-exynos to the
     pinctrl driver
   pinctrl: samsung: Replace syscore ops with standard platform device
     pm_ops
   pinctrl: samsung: Add property to mark pad state as suitable for power
     down
   pinctrl: samsung: Add runtime PM support
   ARM: dts: exynos: Add audio power domain support to Exynos542x SoCs

  .../bindings/pinctrl/samsung-pinctrl.txt           |  12 ++
  arch/arm/boot/dts/exynos3250.dtsi                  |   2 +
  arch/arm/boot/dts/exynos4210.dtsi                  |   3 +
  arch/arm/boot/dts/exynos4x12.dtsi                  |   3 +
  arch/arm/boot/dts/exynos5250.dtsi                  |   4 +
  arch/arm/boot/dts/exynos5420-pinctrl.dtsi          |  11 ++
  arch/arm/boot/dts/exynos5420.dtsi                  |  18 ++-
  arch/arm/mach-exynos/suspend.c                     |  64 ---------
  drivers/pinctrl/samsung/pinctrl-exynos.c           | 148 +++++++++++++++++++++
  drivers/pinctrl/samsung/pinctrl-samsung.c          | 126 ++++++++----------
  drivers/pinctrl/samsung/pinctrl-samsung.h          |  15 +++
  11 files changed, 271 insertions(+), 135 deletions(-)
Is their core configuration missing to enable audio through HDMI on
Odroid Boards.
I could not get the sound working on Odroid XU4.
Audio support for HDMI on Exynos requires some additional code. We will take
a look at this too.

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help