[PATCH v1 2/2] PM / AVS: SmartReflex: disable spamming interrupts

2013-07-12 Thread Andrii Tseglytskyi
condition applies when a notifier does not exist OR is unable to handle the interrupt as well. Signed-off-by: Nishanth Menon Signed-off-by: Andrii Tseglytskyi --- drivers/power/avs/smartreflex.c | 23 +-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/drivers

[PATCH v1 1/2] PM / AVS: SmartReflex: fix interrupt disable sequence

2013-07-12 Thread Andrii Tseglytskyi
Reflex AVS block. Reported-by: Honda Kenji Reported-by: Maki Tanaka Signed-off-by: Nishanth Menon Signed-off-by: Andrii Tseglytskyi --- drivers/power/avs/smartreflex.c |8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/power/avs/smartreflex.c b/drivers

[PATCH v1 0/2] PM / AVS: interrupt handling fixes

2013-07-12 Thread Andrii Tseglytskyi
Hi Kevin, Could you please take a look to the following patch series. It consists of two patches, which are needed for proper SmartReflex Interrupt handling. Based on Linux v3.10. Verified on OMAP4430. Thank you in advance. Regards, Andrii Nishanth Menon (2): PM / AVS: SmartReflex: fix inter

Re: [PATCH v2 2/2] PM / AVS: SmartReflex/class3: Fix order of initialization of SR class and SR driver

2013-06-12 Thread Andrii Tseglytskyi
On 06/12/2013 04:32 PM, Tony Lindgren wrote: * Kevin Hilman [130610 10:58]: Andrii Tseglytskyi writes: SmartReflex consists of three entities: SR device, SR class and SR driver. SmartReflex driver depends on SmartReflex class, but order of their initialization is not clear. They both use

[PATCH v2 2/2] PM / AVS: SmartReflex/class3: Fix order of initialization of SR class and SR driver

2013-06-04 Thread Andrii Tseglytskyi
(), and removes redundant call of sr_late_init(). This provides predictable order of SmartReflex initcalls: 1. device_initcall() -> SmartReflex class init 2. late_initcall() -> SmartReflex driver init Signed-off-by: Andrii Tseglytskyi --- arch/arm/mach-omap2/smartreflex-class3.c

[PATCH v2 0/2] PM / AVS: SmartReflex: optimization series

2013-06-04 Thread Andrii Tseglytskyi
#define removed from "PM / AVS: SmartReflex: use devm_* API to initialize SmartReflex" - rebased to v3.10-rc4 Andrii Tseglytskyi (2): PM / AVS: SmartReflex: use devm_* API to initialize SmartReflex PM / AVS: SmartReflex/class3: Fix order of initialization of SR class and SR driver

[PATCH v2 1/2] PM / AVS: SmartReflex: use devm_* API to initialize SmartReflex

2013-06-04 Thread Andrii Tseglytskyi
Use of of devm_* API for resource allocation provides benefits such as auto handling of resource free. This reduces possibility have memory leaks in case of wrong error handling. All direct release calls should be removed to avoid races. Reported-by: Grygorii Strashko Signed-off-by: Andrii

[PATCH v1 2/2] PM / AVS: SmartReflex/class3: Fix order of initialization of SR class and SR driver

2013-05-30 Thread Andrii Tseglytskyi
(), and removes redundant call of sr_late_init(). This provides predictable order of SmartReflex initcalls: 1. device_initcall() -> SmartReflex class init 2. late_initcall() -> SmartReflex driver init Signed-off-by: Andrii Tseglytskyi --- arch/arm/mach-omap2/smartreflex-class3.c

[PATCH v1 1/2] PM / AVS: SmartReflex: use devm_* API to initialize SmartReflex

2013-05-30 Thread Andrii Tseglytskyi
Use of of devm_* API for resource allocation provides benefits such as auto handling of resource free. This reduces possibility have memory leaks in case of wrong error handling. All direct release calls should be removed to avoid races. Reported-by: Grygorii Strashko Signed-off-by: Andrii

[PATCH v1 0/2] PM / AVS: SmartReflex: optimization series

2013-05-30 Thread Andrii Tseglytskyi
Available on GitHub: https://github.com/andriit/linux-omap-k3.8/commits/avs_sr_driver_optimization_v02 Andrii Tseglytskyi (2): PM / AVS: SmartReflex: use devm_* API to initialize SmartReflex PM / AVS: SmartReflex/class3: Fix order of initialization of SR class and SR driver arch/arm/mach

[PATCH v2 2/3] PM / AVS: SmartReflex: disable runtime PM on driver remove

2013-05-30 Thread Andrii Tseglytskyi
Runtime PM should be disabled for device on driver remove, otherwise runtime PM will be not balanced, and this will cause an error message, on next driver probe. Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- drivers/power/avs/smartreflex.c |1 + 1 file changed, 1 insertion

[PATCH v2 1/3] PM / AVS: SmartReflex: disable errgen before vpbound disable

2013-05-30 Thread Andrii Tseglytskyi
From: Nishanth Menon vpboundsintr_en is available inside the IP block as an re-sycned version and one which is not. Due to this, there is an 1 sysclk cycle window where the SR_SInterruptz signal could be asserted low. IF, intr_en is cleared on the exact same cycle as the irqclr, an additional pul

[PATCH v2 3/3] PM / AVS: SmartReflex: fix driver name

2013-05-30 Thread Andrii Tseglytskyi
DRIVER_NAME was undefined for SmartReflex. Now it is defined with valid value "smartreflex". It is needed to define proper value for: MODULE_ALIAS("platform:" DRIVER_NAME); Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- drivers/power/avs/smartreflex.c |3

[PATCH v2 0/3] PM / AVS: SmartReflex: driver misc fixes

2013-05-30 Thread Andrii Tseglytskyi
-rc3 - minor comment update in "disable errgen before vpbound disable" patch Andrii Tseglytskyi (2): PM / AVS: SmartReflex: disable runtime PM on driver remove PM / AVS: SmartReflex: fix driver name Nishanth Menon (1): PM / AVS: SmartReflex: disable errgen before vpbound disable

Re: [PATCH v1 1/3] PM / AVS: SmartReflex: disable errgen before vpbound disable

2013-05-29 Thread Andrii Tseglytskyi
On 05/29/2013 12:58 PM, Andrii Tseglytskyi wrote: Hi Kevin, Thanks a lot for your comments. On 05/28/2013 09:45 PM, Kevin Hilman wrote: Andrii Tseglytskyi writes: From: Nishanth Menon vpboundsintr_en is available inside the IP block as an re-sycned version and one which is not. Due to

Re: [PATCH v1 0/3] PM / AVS: SmartReflex: driver misc fixes

2013-05-29 Thread Andrii Tseglytskyi
On 05/29/2013 12:03 AM, Kevin Hilman wrote: Andrii Tseglytskyi writes: The following patch series contain several misc fixes to SmartReflex driver: 1. disable errgen before vpbound disable. Critical fix, needed for proper work of AVS-VP communicaton protocol. 2. disable runtime PM on driver

Re: [PATCH v1 1/3] PM / AVS: SmartReflex: disable errgen before vpbound disable

2013-05-29 Thread Andrii Tseglytskyi
Hi Kevin, Thanks a lot for your comments. On 05/28/2013 09:45 PM, Kevin Hilman wrote: Andrii Tseglytskyi writes: From: Nishanth Menon vpboundsintr_en is available inside the IP block as an re-sycned version and one which is not. Due to this, there is an 1 sysclk cycle window where

[PATCH v1 1/3] PM / AVS: SmartReflex: use omap_sr * for errgen interfaces

2013-05-27 Thread Andrii Tseglytskyi
SmartReflex enable/disable sequence. Now they take struct omap_sr* as input parameter. Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- arch/arm/mach-omap2/smartreflex-class3.c |4 ++-- drivers/power/avs/smartreflex.c | 26 +- include/linux/power

[PATCH v1 3/3] PM / AVS: SmartReflex: use omap_sr * for enable/disable interface

2013-05-27 Thread Andrii Tseglytskyi
struct omap_sr* as input parameter. Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- arch/arm/mach-omap2/smartreflex-class3.c |4 ++-- drivers/power/avs/smartreflex.c | 23 +++ include/linux/power/smartreflex.h|4 ++-- 3 files changed, 15

[PATCH v1 2/3] PM / AVS: SmartReflex: use omap_sr * for minmax interfaces

2013-05-27 Thread Andrii Tseglytskyi
omap_sr* as input parameter. Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- drivers/power/avs/smartreflex.c | 14 +++--- include/linux/power/smartreflex.h |2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/power/avs/smartreflex.c b

[PATCH v1 0/3] PM / AVS: SmartReflex: use omap_sr * for class interfaces

2013-05-27 Thread Andrii Tseglytskyi
GitHub: https://github.com/andriit/linux-omap-k3.8/commits/avs_sr_driver_std_class_interfaces_v01 Andrii Tseglytskyi (3): PM / AVS: SmartReflex: use omap_sr * for errgen interfaces PM / AVS: SmartReflex: use omap_sr * for minmax interfaces PM / AVS: SmartReflex: use omap_sr * for enable/disable

[PATCH v1 2/3] PM / AVS: SmartReflex: disable runtime PM on driver remove

2013-05-27 Thread Andrii Tseglytskyi
Runtime PM should be disabled for device on driver remove, otherwise runtime PM will be not balanced, and this will cause an error message, on next driver probe. Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- drivers/power/avs/smartreflex.c |1 + 1 file changed, 1 insertion

[PATCH v1 3/3] PM / AVS: SmartReflex: fix driver name

2013-05-27 Thread Andrii Tseglytskyi
DRIVER_NAME was undefined for SmartReflex. Now it is defined with valid value "smartreflex". It is needed to define proper value for: MODULE_ALIAS("platform:" DRIVER_NAME); Signed-off-by: Andrii Tseglytskyi Acked-by: Nishanth Menon --- drivers/power/avs/smartreflex.c |3

[PATCH v1 1/3] PM / AVS: SmartReflex: disable errgen before vpbound disable

2013-05-27 Thread Andrii Tseglytskyi
From: Nishanth Menon vpboundsintr_en is available inside the IP block as an re-sycned version and one which is not. Due to this, there is an 1 sysclk cycle window where interruptz could be asserted low for 1 cycle. IF, intr_en is cleared on the exact same cycle as the irqclr, an additional pulse

[PATCH v1 0/3] PM / AVS: SmartReflex: driver misc fixes

2013-05-27 Thread Andrii Tseglytskyi
://github.com/andriit/linux-omap-k3.8/commits/avs_sr_driver_misc_fixes_v01 Andrii Tseglytskyi (2): PM / AVS: SmartReflex: disable runtime PM on driver remove PM / AVS: SmartReflex: fix driver name Nishanth Menon (1): PM / AVS: SmartReflex: disable errgen before vpbound disable drivers/power/avs

Re: [RFC v1] regulator: core: introduce regulator chain locking scheme

2013-04-15 Thread Andrii Tseglytskyi
Hi Mark, On 04/15/2013 06:50 PM, Mark Brown wrote: In addition, such locking scheme allows to have access to the supplier regulator API from inside child's (consumer) regulator API. I've still not seen any use case articulated for doing this... Use case is introduced in ABB series: http://www