[PATCH 6/9] ARM: tegra: Export tegra_powergate_power_on
From: Stephen Warren <hidden>
Date: 2014-06-18 15:38:01
Also in:
linux-ide, linux-tegra, lkml
On 06/18/2014 06:18 AM, Peter De Schrijver wrote:
On Tue, Jun 17, 2014 at 11:51:20PM +0200, Thierry Reding wrote:quoted
* PGP Signed by an unknown key On Tue, Jun 17, 2014 at 05:01:46PM +0300, Peter De Schrijver wrote:quoted
On Tue, Jun 17, 2014 at 02:13:15PM +0200, Thierry Reding wrote:quoted
quoted
Old Signed by an unknown keyOn Mon, Jun 16, 2014 at 04:01:02PM -0600, Stephen Warren wrote:quoted
On 06/04/2014 05:32 AM, Mikko Perttunen wrote:quoted
This symbol needs to be exported to power on rails without using tegra_powergate_sequence_power_up. tegra_powergate_sequence_power_up cannot be used in situations where the driver wants to handle clocking by itself.Thierry, are you OK with this change?I would've preferred tegra_powergate_sequence_power_up() to be usedI don't think the current tegra_powergate_sequence_power_up() API is very well defined though. I don't think the clocks and resets required by the sequence should be provided by the driver. For one, there can be several clocks and resets that need to be controlled for a single domain.Do you have any suggestions for what the API should look like? Even if we plan to move to some different API, I think there's some advantage in using it consistently if for no other reason than to make it easier to replace occurrences later on.I think the API should only have the domain ID as input so: int tegra_powerdomain_on(int id) /* * Prerequisites: domain is off * Result: domain is on, clocks of the modules in the domain are off, modules are in reset */ int tegra_powerdomain_off(int id) /* * Prerequisites: all clocks of the modules in the domain are off * result: domain is off */
That doesn't make sense; the PMC doesn't have access to the clock and reset IDs - that's why the API requires them to be passed in.