Re: [PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-16 Thread Tomasz Figa
Hi,

On 08.05.2014 14:49, Tomasz Figa wrote:
> Up till now there was no single generic method to bind devices to their
> power domains using Device Tree. Each platform has been doing this using
> its own way, example of which are Exynos power domain bindings [1] and
> look-up code [2].
> 
> This series is intended to change this and provide generic DT bindings for
> power domain specification and generic code performing look-up of power
> domains and binding them to devices.
> 
> First two patches are the most important part of this series, as they
> introduce $subject. Patch 3 converts mach-exynos to use the new generic
> method. Further patches are adding one more user of the new code,
> mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
> domain driver a bit and last 3 patches (9-11) adding display support for
> Mini6410 board, including a node for display controller (FIMD) which is
> a power domain consumer.
> 
> The design of DT bindings and provider code is heavily inspired by
> implementation of clock providers in Common Clock Framework, while
> the code binding devices to power domains by my Exynos power domain
> implementation (now removed by this series ;)).
> 
> Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
> boards using MFC, 
> 
> [1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
> [2] arch/arm/mach-exynos/pm_domains.c
> 
> Changes since v3:
> (http://thread.gmane.org/gmane.linux.power-management.general/44571)
>  - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
>  - renamed "power-domain" property to "power-domains" to facilitate further
>extension to support multiple power domains per device in future.
> 
> Changes since v2:
> (http://thread.gmane.org/gmane.linux.kernel/1658926)
>  - rebased onto current Rafael's linux-pm bleeding-edge branch,
>  - dropped patches for s3c64xx for now. I will send them in separate series,
>  - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
>  - fixed various stylistic issues reported in review comments.
> 
> Changes since v1 (RFC):
> [https://lkml.org/lkml/2014/1/11/141]
>  - rebased onto current Rafael's linux-pm bleeding-edge branch,
>  - reordered the patches a bit (to have the generic ones first),
>  - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
>  - added support for deferred probing (as suggested by Stephen Boyd),
>  - fixed several minor issues pointed by Stephen Boyd,
>  - replaced notifiers with direct hooks in driver core to make power domain
>support independent from specific bus type and allow error handling.
> 
> Tomasz Figa (3):
>   base: power: Add generic OF-based power domain look-up
>   drivercore: Bind/unbind power domain on probe/remove
>   ARM: exynos: Move to generic power domain bindings
> 
>  .../bindings/arm/exynos/power_domain.txt   |  12 +-
>  .../devicetree/bindings/power/power_domain.txt |  51 
>  arch/arm/mach-exynos/pm_domains.c  |  81 +-
>  drivers/base/dd.c  |   9 +-
>  drivers/base/power/domain.c| 283 
> +
>  include/linux/pm_domain.h  |  46 
>  kernel/power/Kconfig   |   4 +
>  7 files changed, 398 insertions(+), 88 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt
> 

Rob, Mark, could we have your ACK (or NAK if you find some issues) for
DT bindings introduced by this series?

Rafael, I wonder if we could still have this series applied for 3.16. I
know it is a bit late already, but the series isn't too invasive, as it
mostly generalizes what was being done on per-platform basis and makes
the code generic. Also I have already seen at least two other series
depending on this one, so they would benefit from this being merged.

Best regards,
Tomasz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-16 Thread Tomasz Figa
Hi,

On 08.05.2014 14:49, Tomasz Figa wrote:
 Up till now there was no single generic method to bind devices to their
 power domains using Device Tree. Each platform has been doing this using
 its own way, example of which are Exynos power domain bindings [1] and
 look-up code [2].
 
 This series is intended to change this and provide generic DT bindings for
 power domain specification and generic code performing look-up of power
 domains and binding them to devices.
 
 First two patches are the most important part of this series, as they
 introduce $subject. Patch 3 converts mach-exynos to use the new generic
 method. Further patches are adding one more user of the new code,
 mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
 domain driver a bit and last 3 patches (9-11) adding display support for
 Mini6410 board, including a node for display controller (FIMD) which is
 a power domain consumer.
 
 The design of DT bindings and provider code is heavily inspired by
 implementation of clock providers in Common Clock Framework, while
 the code binding devices to power domains by my Exynos power domain
 implementation (now removed by this series ;)).
 
 Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
 boards using MFC, 
 
 [1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
 [2] arch/arm/mach-exynos/pm_domains.c
 
 Changes since v3:
 (http://thread.gmane.org/gmane.linux.power-management.general/44571)
  - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
  - renamed power-domain property to power-domains to facilitate further
extension to support multiple power domains per device in future.
 
 Changes since v2:
 (http://thread.gmane.org/gmane.linux.kernel/1658926)
  - rebased onto current Rafael's linux-pm bleeding-edge branch,
  - dropped patches for s3c64xx for now. I will send them in separate series,
  - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
  - fixed various stylistic issues reported in review comments.
 
 Changes since v1 (RFC):
 [https://lkml.org/lkml/2014/1/11/141]
  - rebased onto current Rafael's linux-pm bleeding-edge branch,
  - reordered the patches a bit (to have the generic ones first),
  - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
  - added support for deferred probing (as suggested by Stephen Boyd),
  - fixed several minor issues pointed by Stephen Boyd,
  - replaced notifiers with direct hooks in driver core to make power domain
support independent from specific bus type and allow error handling.
 
 Tomasz Figa (3):
   base: power: Add generic OF-based power domain look-up
   drivercore: Bind/unbind power domain on probe/remove
   ARM: exynos: Move to generic power domain bindings
 
  .../bindings/arm/exynos/power_domain.txt   |  12 +-
  .../devicetree/bindings/power/power_domain.txt |  51 
  arch/arm/mach-exynos/pm_domains.c  |  81 +-
  drivers/base/dd.c  |   9 +-
  drivers/base/power/domain.c| 283 
 +
  include/linux/pm_domain.h  |  46 
  kernel/power/Kconfig   |   4 +
  7 files changed, 398 insertions(+), 88 deletions(-)
  create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt
 

Rob, Mark, could we have your ACK (or NAK if you find some issues) for
DT bindings introduced by this series?

Rafael, I wonder if we could still have this series applied for 3.16. I
know it is a bit late already, but the series isn't too invasive, as it
mostly generalizes what was being done on per-platform basis and makes
the code generic. Also I have already seen at least two other series
depending on this one, so they would benefit from this being merged.

Best regards,
Tomasz
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Sent with wrong Rafael's address, please ignore this thread. Just resent
with correct address. Sorry for the noise.

Best regards,
Tomasz

On 08.05.2014 14:45, Tomasz Figa wrote:
> Up till now there was no single generic method to bind devices to their
> power domains using Device Tree. Each platform has been doing this using
> its own way, example of which are Exynos power domain bindings [1] and
> look-up code [2].
> 
> This series is intended to change this and provide generic DT bindings for
> power domain specification and generic code performing look-up of power
> domains and binding them to devices.
> 
> First two patches are the most important part of this series, as they
> introduce $subject. Patch 3 converts mach-exynos to use the new generic
> method. Further patches are adding one more user of the new code,
> mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
> domain driver a bit and last 3 patches (9-11) adding display support for
> Mini6410 board, including a node for display controller (FIMD) which is
> a power domain consumer.
> 
> The design of DT bindings and provider code is heavily inspired by
> implementation of clock providers in Common Clock Framework, while
> the code binding devices to power domains by my Exynos power domain
> implementation (now removed by this series ;)).
> 
> Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
> boards using MFC, 
> 
> [1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
> [2] arch/arm/mach-exynos/pm_domains.c
> 
> Changes since v3:
> (http://thread.gmane.org/gmane.linux.power-management.general/44571)
>  - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
>  - renamed "power-domain" property to "power-domains" to facilitate further
>extension to support multiple power domains per device in future.
> 
> Changes since v2:
> (http://thread.gmane.org/gmane.linux.kernel/1658926)
>  - rebased onto current Rafael's linux-pm bleeding-edge branch,
>  - dropped patches for s3c64xx for now. I will send them in separate series,
>  - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
>  - fixed various stylistic issues reported in review comments.
> 
> Changes since v1 (RFC):
> [https://lkml.org/lkml/2014/1/11/141]
>  - rebased onto current Rafael's linux-pm bleeding-edge branch,
>  - reordered the patches a bit (to have the generic ones first),
>  - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
>  - added support for deferred probing (as suggested by Stephen Boyd),
>  - fixed several minor issues pointed by Stephen Boyd,
>  - replaced notifiers with direct hooks in driver core to make power domain
>support independent from specific bus type and allow error handling.
> 
> Tomasz Figa (3):
>   base: power: Add generic OF-based power domain look-up
>   drivercore: Bind/unbind power domain on probe/remove
>   ARM: exynos: Move to generic power domain bindings
> 
>  .../bindings/arm/exynos/power_domain.txt   |  12 +-
>  .../devicetree/bindings/power/power_domain.txt |  51 
>  arch/arm/mach-exynos/pm_domains.c  |  81 +-
>  drivers/base/dd.c  |   9 +-
>  drivers/base/power/domain.c| 283 
> +
>  include/linux/pm_domain.h  |  46 
>  kernel/power/Kconfig   |   4 +
>  7 files changed, 398 insertions(+), 88 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Up till now there was no single generic method to bind devices to their
power domains using Device Tree. Each platform has been doing this using
its own way, example of which are Exynos power domain bindings [1] and
look-up code [2].

This series is intended to change this and provide generic DT bindings for
power domain specification and generic code performing look-up of power
domains and binding them to devices.

First two patches are the most important part of this series, as they
introduce $subject. Patch 3 converts mach-exynos to use the new generic
method. Further patches are adding one more user of the new code,
mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
domain driver a bit and last 3 patches (9-11) adding display support for
Mini6410 board, including a node for display controller (FIMD) which is
a power domain consumer.

The design of DT bindings and provider code is heavily inspired by
implementation of clock providers in Common Clock Framework, while
the code binding devices to power domains by my Exynos power domain
implementation (now removed by this series ;)).

Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
boards using MFC, 

[1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
[2] arch/arm/mach-exynos/pm_domains.c

Changes since v3:
(http://thread.gmane.org/gmane.linux.power-management.general/44571)
 - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
 - renamed "power-domain" property to "power-domains" to facilitate further
   extension to support multiple power domains per device in future.

Changes since v2:
(http://thread.gmane.org/gmane.linux.kernel/1658926)
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - dropped patches for s3c64xx for now. I will send them in separate series,
 - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
 - fixed various stylistic issues reported in review comments.

Changes since v1 (RFC):
[https://lkml.org/lkml/2014/1/11/141]
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - reordered the patches a bit (to have the generic ones first),
 - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
 - added support for deferred probing (as suggested by Stephen Boyd),
 - fixed several minor issues pointed by Stephen Boyd,
 - replaced notifiers with direct hooks in driver core to make power domain
   support independent from specific bus type and allow error handling.

Tomasz Figa (3):
  base: power: Add generic OF-based power domain look-up
  drivercore: Bind/unbind power domain on probe/remove
  ARM: exynos: Move to generic power domain bindings

 .../bindings/arm/exynos/power_domain.txt   |  12 +-
 .../devicetree/bindings/power/power_domain.txt |  51 
 arch/arm/mach-exynos/pm_domains.c  |  81 +-
 drivers/base/dd.c  |   9 +-
 drivers/base/power/domain.c| 283 +
 include/linux/pm_domain.h  |  46 
 kernel/power/Kconfig   |   4 +
 7 files changed, 398 insertions(+), 88 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt

-- 
1.9.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Up till now there was no single generic method to bind devices to their
power domains using Device Tree. Each platform has been doing this using
its own way, example of which are Exynos power domain bindings [1] and
look-up code [2].

This series is intended to change this and provide generic DT bindings for
power domain specification and generic code performing look-up of power
domains and binding them to devices.

First two patches are the most important part of this series, as they
introduce $subject. Patch 3 converts mach-exynos to use the new generic
method. Further patches are adding one more user of the new code,
mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
domain driver a bit and last 3 patches (9-11) adding display support for
Mini6410 board, including a node for display controller (FIMD) which is
a power domain consumer.

The design of DT bindings and provider code is heavily inspired by
implementation of clock providers in Common Clock Framework, while
the code binding devices to power domains by my Exynos power domain
implementation (now removed by this series ;)).

Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
boards using MFC, 

[1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
[2] arch/arm/mach-exynos/pm_domains.c

Changes since v3:
(http://thread.gmane.org/gmane.linux.power-management.general/44571)
 - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
 - renamed "power-domain" property to "power-domains" to facilitate further
   extension to support multiple power domains per device in future.

Changes since v2:
(http://thread.gmane.org/gmane.linux.kernel/1658926)
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - dropped patches for s3c64xx for now. I will send them in separate series,
 - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
 - fixed various stylistic issues reported in review comments.

Changes since v1 (RFC):
[https://lkml.org/lkml/2014/1/11/141]
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - reordered the patches a bit (to have the generic ones first),
 - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
 - added support for deferred probing (as suggested by Stephen Boyd),
 - fixed several minor issues pointed by Stephen Boyd,
 - replaced notifiers with direct hooks in driver core to make power domain
   support independent from specific bus type and allow error handling.

Tomasz Figa (3):
  base: power: Add generic OF-based power domain look-up
  drivercore: Bind/unbind power domain on probe/remove
  ARM: exynos: Move to generic power domain bindings

 .../bindings/arm/exynos/power_domain.txt   |  12 +-
 .../devicetree/bindings/power/power_domain.txt |  51 
 arch/arm/mach-exynos/pm_domains.c  |  81 +-
 drivers/base/dd.c  |   9 +-
 drivers/base/power/domain.c| 283 +
 include/linux/pm_domain.h  |  46 
 kernel/power/Kconfig   |   4 +
 7 files changed, 398 insertions(+), 88 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt

-- 
1.9.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Up till now there was no single generic method to bind devices to their
power domains using Device Tree. Each platform has been doing this using
its own way, example of which are Exynos power domain bindings [1] and
look-up code [2].

This series is intended to change this and provide generic DT bindings for
power domain specification and generic code performing look-up of power
domains and binding them to devices.

First two patches are the most important part of this series, as they
introduce $subject. Patch 3 converts mach-exynos to use the new generic
method. Further patches are adding one more user of the new code,
mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
domain driver a bit and last 3 patches (9-11) adding display support for
Mini6410 board, including a node for display controller (FIMD) which is
a power domain consumer.

The design of DT bindings and provider code is heavily inspired by
implementation of clock providers in Common Clock Framework, while
the code binding devices to power domains by my Exynos power domain
implementation (now removed by this series ;)).

Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
boards using MFC, 

[1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
[2] arch/arm/mach-exynos/pm_domains.c

Changes since v3:
(http://thread.gmane.org/gmane.linux.power-management.general/44571)
 - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
 - renamed power-domain property to power-domains to facilitate further
   extension to support multiple power domains per device in future.

Changes since v2:
(http://thread.gmane.org/gmane.linux.kernel/1658926)
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - dropped patches for s3c64xx for now. I will send them in separate series,
 - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
 - fixed various stylistic issues reported in review comments.

Changes since v1 (RFC):
[https://lkml.org/lkml/2014/1/11/141]
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - reordered the patches a bit (to have the generic ones first),
 - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
 - added support for deferred probing (as suggested by Stephen Boyd),
 - fixed several minor issues pointed by Stephen Boyd,
 - replaced notifiers with direct hooks in driver core to make power domain
   support independent from specific bus type and allow error handling.

Tomasz Figa (3):
  base: power: Add generic OF-based power domain look-up
  drivercore: Bind/unbind power domain on probe/remove
  ARM: exynos: Move to generic power domain bindings

 .../bindings/arm/exynos/power_domain.txt   |  12 +-
 .../devicetree/bindings/power/power_domain.txt |  51 
 arch/arm/mach-exynos/pm_domains.c  |  81 +-
 drivers/base/dd.c  |   9 +-
 drivers/base/power/domain.c| 283 +
 include/linux/pm_domain.h  |  46 
 kernel/power/Kconfig   |   4 +
 7 files changed, 398 insertions(+), 88 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt

-- 
1.9.2

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Up till now there was no single generic method to bind devices to their
power domains using Device Tree. Each platform has been doing this using
its own way, example of which are Exynos power domain bindings [1] and
look-up code [2].

This series is intended to change this and provide generic DT bindings for
power domain specification and generic code performing look-up of power
domains and binding them to devices.

First two patches are the most important part of this series, as they
introduce $subject. Patch 3 converts mach-exynos to use the new generic
method. Further patches are adding one more user of the new code,
mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
domain driver a bit and last 3 patches (9-11) adding display support for
Mini6410 board, including a node for display controller (FIMD) which is
a power domain consumer.

The design of DT bindings and provider code is heavily inspired by
implementation of clock providers in Common Clock Framework, while
the code binding devices to power domains by my Exynos power domain
implementation (now removed by this series ;)).

Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
boards using MFC, 

[1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
[2] arch/arm/mach-exynos/pm_domains.c

Changes since v3:
(http://thread.gmane.org/gmane.linux.power-management.general/44571)
 - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
 - renamed power-domain property to power-domains to facilitate further
   extension to support multiple power domains per device in future.

Changes since v2:
(http://thread.gmane.org/gmane.linux.kernel/1658926)
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - dropped patches for s3c64xx for now. I will send them in separate series,
 - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
 - fixed various stylistic issues reported in review comments.

Changes since v1 (RFC):
[https://lkml.org/lkml/2014/1/11/141]
 - rebased onto current Rafael's linux-pm bleeding-edge branch,
 - reordered the patches a bit (to have the generic ones first),
 - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
 - added support for deferred probing (as suggested by Stephen Boyd),
 - fixed several minor issues pointed by Stephen Boyd,
 - replaced notifiers with direct hooks in driver core to make power domain
   support independent from specific bus type and allow error handling.

Tomasz Figa (3):
  base: power: Add generic OF-based power domain look-up
  drivercore: Bind/unbind power domain on probe/remove
  ARM: exynos: Move to generic power domain bindings

 .../bindings/arm/exynos/power_domain.txt   |  12 +-
 .../devicetree/bindings/power/power_domain.txt |  51 
 arch/arm/mach-exynos/pm_domains.c  |  81 +-
 drivers/base/dd.c  |   9 +-
 drivers/base/power/domain.c| 283 +
 include/linux/pm_domain.h  |  46 
 kernel/power/Kconfig   |   4 +
 7 files changed, 398 insertions(+), 88 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt

-- 
1.9.2

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 0/3] Generic Device Tree based power domain look-up

2014-05-08 Thread Tomasz Figa
Sent with wrong Rafael's address, please ignore this thread. Just resent
with correct address. Sorry for the noise.

Best regards,
Tomasz

On 08.05.2014 14:45, Tomasz Figa wrote:
 Up till now there was no single generic method to bind devices to their
 power domains using Device Tree. Each platform has been doing this using
 its own way, example of which are Exynos power domain bindings [1] and
 look-up code [2].
 
 This series is intended to change this and provide generic DT bindings for
 power domain specification and generic code performing look-up of power
 domains and binding them to devices.
 
 First two patches are the most important part of this series, as they
 introduce $subject. Patch 3 converts mach-exynos to use the new generic
 method. Further patches are adding one more user of the new code,
 mach-s3c64xx, with first 3 patches (4-6) required to clean-up its power
 domain driver a bit and last 3 patches (9-11) adding display support for
 Mini6410 board, including a node for display controller (FIMD) which is
 a power domain consumer.
 
 The design of DT bindings and provider code is heavily inspired by
 implementation of clock providers in Common Clock Framework, while
 the code binding devices to power domains by my Exynos power domain
 implementation (now removed by this series ;)).
 
 Successfully tested on Exynos4210-based Trats and Exynos4412-based Trats2
 boards using MFC, 
 
 [1] Documentation/devicetree/bindings/arm/exynos/power_domain.txt
 [2] arch/arm/mach-exynos/pm_domains.c
 
 Changes since v3:
 (http://thread.gmane.org/gmane.linux.power-management.general/44571)
  - rebased onto current Rafael's linux-pm bleeding-edge branch (0a112bf),
  - renamed power-domain property to power-domains to facilitate further
extension to support multiple power domains per device in future.
 
 Changes since v2:
 (http://thread.gmane.org/gmane.linux.kernel/1658926)
  - rebased onto current Rafael's linux-pm bleeding-edge branch,
  - dropped patches for s3c64xx for now. I will send them in separate series,
  - do not call pm_genpd_dev_need_restore(true) in genpd_bind_domain(),
  - fixed various stylistic issues reported in review comments.
 
 Changes since v1 (RFC):
 [https://lkml.org/lkml/2014/1/11/141]
  - rebased onto current Rafael's linux-pm bleeding-edge branch,
  - reordered the patches a bit (to have the generic ones first),
  - dropped renaming of S3C64xx power domains (as suggested by Mark Brown),
  - added support for deferred probing (as suggested by Stephen Boyd),
  - fixed several minor issues pointed by Stephen Boyd,
  - replaced notifiers with direct hooks in driver core to make power domain
support independent from specific bus type and allow error handling.
 
 Tomasz Figa (3):
   base: power: Add generic OF-based power domain look-up
   drivercore: Bind/unbind power domain on probe/remove
   ARM: exynos: Move to generic power domain bindings
 
  .../bindings/arm/exynos/power_domain.txt   |  12 +-
  .../devicetree/bindings/power/power_domain.txt |  51 
  arch/arm/mach-exynos/pm_domains.c  |  81 +-
  drivers/base/dd.c  |   9 +-
  drivers/base/power/domain.c| 283 
 +
  include/linux/pm_domain.h  |  46 
  kernel/power/Kconfig   |   4 +
  7 files changed, 398 insertions(+), 88 deletions(-)
  create mode 100644 Documentation/devicetree/bindings/power/power_domain.txt
 
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/