[PATCH 0/2] IO voltage domain support for rk3188 and rk3288
From: Kevin Hilman <hidden>
Date: 2014-09-10 23:13:00
Also in:
linux-devicetree, lkml
Linus Walleij [off-list ref] writes:
On Sat, Aug 30, 2014 at 1:27 PM, Heiko St?bner [off-list ref] wrote:quoted
Am Freitag, 29. August 2014, 21:51:46 schrieb Doug Anderson:quoted
On Thu, Aug 28, 2014 at 2:26 PM, Santosh Shilimkar [off-list ref] wrote:quoted
On Thursday 28 August 2014 03:36 PM, Doug Anderson wrote:quoted
These two patches add support for automatically configuring the IO voltage domains on rk3188 and rk3288 SoCs. The first patch adds some new notification types to the regulator code. It's used by the second patch which actually implements the IO voltage domain driver. These two patches were co-developed by Heiko St?bner and Doug Anderson (proof of concept patches were written by Heiko). They were tested in a private branch on an rk3288 board using rk808 instead of mainline since rk808 support isn't finalized in mainline yet. (sorry if you got this series twice; my mailer seems unhappy with me) Heiko St?bner (2): regulator: core: Add REGULATOR_EVENT_PRE_VOLTAGE_CHANGE (and ABORT) soc/rockchip: io-domain: add driver handling io domainsSorry to shot down but your IO domains are nothing but voltage domains and you should really build something in the drivers/power/*If everyone agrees that this belongs in drivers/power that's totally OK. Neither Heiko nor I was confident that it should be in drivers/soc. I had even though that the code wouldn't be totally out of place in the Rockchip pinctrl driver (adding Linus W since I think some SoCs did add code to handle 3.3V vs. 1.8V in pinctrl).a bit of context for Linus ... This is essentially the continuation of the thread "io-domain voltages as regulators?" from the beginning of august. After more discussions we found out that the io voltage selection I asked about is not an independent supply, but instead has to reflect the voltage of the real supplying regulator. And setting the io-voltage setting to 1.8V while the regulator is supplying 3.3V for example may actually damage the chip. So in our current approach here, we added a driver that tracks voltage changes of the supplying regulator via a notifier and sets the register bits accordingly.I feel I'm not smart enough for this. You need the PM people to look at this stuff, like Rafael Wysocki, Kevin Hilman and Ulf Hansson.
I think the best fit for this is along with the Adaptive Voltage Scaling (AVS) stuff we currently have in drivers/power/avs. It's not exactly adaptive in the same sense as the TI/SmartReflex is because there's no hardware being configured to dynamically make micro-adjustments to the regulators. But, it is adaptive in the sense that there's SoC-specific "stuff" to do right around the same time the voltage is scaled. So I would suggest drivers/power/avs. Kevin