regulator: core: manage enable GPIO list
authorKim, Milo <Milo.Kim@ti.com>
Mon, 18 Feb 2013 06:50:48 +0000 (06:50 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 4 Mar 2013 02:37:57 +0000 (10:37 +0800)
commit967cfb18c0e331b43a29ae7f60ec1ef0dcb02f6b
tree46784bf101f2a189637bc50a2e17363efd63a6be
parentf19b00da8ed37db4e3891fe534fcf3a605a0e562
regulator: core: manage enable GPIO list

 To support shared enable GPIO pin, replace GPIO code with new static functions

 Reference count: 'enable_count'
   Balance the reference count of each GPIO and actual pin control.
   The count is incremented with enabling GPIO.
   On the other hand, it is decremented on disabling GPIO.
   Actual GPIO pin is enabled at the initial use.(enable_count = 0)
   The pin is disabled if it is not used(shared) any more. (enable_count <=1)
   Regardless of the enable count, update GPIO state of the regulator.

Signed-off-by: Milo(Woogyom) Kim <milo.kim@ti.com>
Reviewed-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/regulator/core.c