On 08/17/2013 06:43 PM, Ezequiel Garcia wrote:
On Sat, Aug 17, 2013 at 02:29:28PM +0200, Sebastian Hesselbarth wrote:
In fact: I'm not sure. I'm slightly inclined towards considering both
clocks as clock sources, just as Stephen and Tomasz are proposing.
But in the end, passing it by DT should be the way to go. I cannot look
into the XP datasheet, but I would guess that the exact feature of the
ip is not to use _the_ fixed 25MHz clock but XTAL as reference. Maybe
one of the free-electrons guys can look it up?
No, the documentation has a register bit for "25Mhz frequency enable",
for each timer/watchdog.
---
Anyway, I (almost) agree that the 25Mhz fixed clock must be somehow represented
in the device-tree, but I'm not exactly sure how. Gregory: maybe you can help
in this?
In armada-370-xp.dtsi add a 25MHz ref clock node and modify timer node
to reference it:
cpus { ... };
clocks {
ref25M: timer-clock {
compatible = "fixed-clock";
clock-frequency = <25000000>;
};
}
...
internal-regs {
timer@20300 {
compatible = "marvell,armada-370-xp-timer";
reg = <0x20300 0x30>, <0x21040 0x30>;
interrupts = <37>, <38>, <39>, <40>, <5>, <6>;
clocks = <&coreclk 2>, <&ref25M>;
clock-names = "fabric", "fixed";
};
};
Then use of_clk_get_by_name(np, "fabric") and of_clk_get_by_name(np,
"fixed") respectively. Clock select strategy should be, (a) fail if
no clock, (b) use fabric/fixed if just one clock, (c) use fixed if
both clocks.
Does that answer your questions? :)
Sebastian
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html