Nokia N900: twl4030-power different data in DTS and board code
Hello,
now I'm looking at differences between legacy board code and DTS file for Nokia N900 and I see some inconsistency for twl4030-power driver.
In board code are defined more twl4030 power scripts which override defaults defined in twl4030-power code. See:
Next in DTS file is defined just "compatible" keyword, but no custom scripts, see:
And the last in DTS file is defined line:
compatible = "ti,twl4030-power-n900"
which is not in twl4030-power driver itself, see:
So all this stuff looks like some errors when board code was ported to DTS. Tony, can you look at this at all?
Signature · 2 lines
Pali Rohár [email protected]
Quoted 17 lines · Pali Rohár
Hello,
now I'm looking at differences between legacy board code and DTS file for Nokia N900 and I see some inconsistency for twl4030-power driver.
In board code are defined more twl4030 power scripts which override defaults defined in twl4030-power code. See:
Next in DTS file is defined just "compatible" keyword, but no custom scripts, see:
And the last in DTS file is defined line:
Quoted 8 lines
compatible = "ti,twl4030-power-n900"
which is not in twl4030-power driver itself, see:
So all this stuff looks like some errors when board code was ported to DTS. Tony, can you look at this at all?
AFAIK it should work fine with the generic "ti,twl4030-power-idle-osc-off". This means reboot works and regulators are cut off during off mode.
The n900 specific code was based on something before the TI generic values were available I think. And the last time I looked at it I came to the conclusion the n900 specific code is no better.
Or did I miss something? Are you seeing some issues with PM with dts based code?
We can certainly add it to twl4030-power if it provides something that the "ti,twl4030-power-idle-osc-off" does not.
Regards,
Tony
Quoted 28 lines · On Saturday 02 January 2016 18:14:31 Tony Lindgren wrote:
Quoted 27 lines · Pali Rohár
Hello,
now I'm looking at differences between legacy board code and DTS file for Nokia N900 and I see some inconsistency for twl4030-power driver.
In board code are defined more twl4030 power scripts which override defaults defined in twl4030-power code. See:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tre
e/arch/arm/mach-omap2/board-rx51-peripherals.c#n790Next in DTS file is defined just "compatible" keyword, but no custom scripts, see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tre
e/arch/arm/boot/dts/omap3-n900.dts#n416And the last in DTS file is defined line:
compatible = "ti,twl4030-power-n900"
which is not in twl4030-power driver itself, see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tre
e/drivers/mfd/twl4030-power.c#n851
Quoted 6 lines
Quoted 2 lines
So all this stuff looks like some errors when board code was ported to DTS. Tony, can you look at this at all?
AFAIK it should work fine with the generic "ti,twl4030-power-idle-osc-off". This means reboot works and regulators are cut off during off mode.
Ok.
Quoted 3 lines
The n900 specific code was based on something before the TI generic values were available I think. And the last time I looked at it I came to the conclusion the n900 specific code is no better.
Hm... if generic values are better, why old values are still there (in board n900 code)?
Quoted 2 lines
Or did I miss something? Are you seeing some issues with PM with dts based code?
I'm just asking why we have different code for DST and board...
Quoted 2 lines
We can certainly add it to twl4030-power if it provides something that the "ti,twl4030-power-idle-osc-off" does not.
But do we need 'compatible = "ti,twl4030-power-n900"' specification in omap3-n900.dts file at all?
Signature · 2 lines
Pali Rohár [email protected]
Quoted 8 lines · Pali Rohár
Quoted 3 lines · On Saturday 02 January 2016 18:14:31 Tony Lindgren wrote:
The n900 specific code was based on something before the TI generic values were available I think. And the last time I looked at it I came to the conclusion the n900 specific code is no better.
Hm... if generic values are better, why old values are still there (in board n900 code)?
We never had PM working in a generic way for the legacy booting but relied on board specific configuration instead for the ones that did work. Probably not worth changing the board-*.c file configuration unless you want to test that the new generic settings work.
Quoted 4 lines
Quoted 2 lines
Or did I miss something? Are you seeing some issues with PM with dts based code?
I'm just asking why we have different code for DST and board...
OK. Yeah no reason beyond somebody taking the time to verify that the generic settings work on n900 in legacy booting mode :)
Quoted 5 lines
Quoted 2 lines
We can certainly add it to twl4030-power if it provides something that the "ti,twl4030-power-idle-osc-off" does not.
But do we need 'compatible = "ti,twl4030-power-n900"' specification in
omap3-n900.dtsfile at all?
Well that generally done to allow adding support for the board specific configuration if needed with a fallback to the generic configuration. That's used quite a bit, for example boards typically set the compatible to the specific board but still end up booting with a generic one sucha as "ti,omap3".
Regards,
Tony