Hi,
I'm trying to get things set up to use TIMER4 (or 5, 6, or 7) to provide
an external clock source to another component and I'm having some trouble.
For now I'm happy with just getting the standard 24khz clock, though I may
want to be able to modify the frequency in the future.
I'm using the Yocto Project (Dora) to build my images and the straight TI
kernels from the meta-ti layer (linux-ti-staging_3.12) with a static
devicetree. I've customized my devicetree enough that I'm somewhat
comfortable with devicetree configs, but I know I'm a long way from having
real devicetree-fu. That said, I've added the following in an attempt to
get TIMER4 to come up:
In the am33xx_pinmux section:
timer4_pins: pinmux_timer4_pins {
pinctrl-single,pins = <
0x90 0x12 /* gpmc_advn_ale as TIMER4, OUTPUT_PULLUP | MODE2 */
>;
};
And further down (note: I'm not certain this is necessary or correct, but
it was a shot in the dark):
&timer4_fck {
pinctrl-names = "default";
pinctrl-0 = <&timer4_pins>;
status = "okay";
};
I sadly don't have a scope to verify clock on the TIMER4 pin, but my guess
is that something's not qorking right from the following reported in
/sys/kernel/debug/clk/clk_summary (note: I clipped bit after the relevant
part):
root@beaglebone:/sys/kernel/debug/clk# more clk_summary
clock enable_cnt prepare_cnt rate
---------------------------------------------------------------------
tclkin_ck 0 0 12000000
virt_26000000_ck 0 0 26000000
virt_25000000_ck 0 0 25000000
virt_24000000_ck 1 1 24000000
sys_clkin_ck 9 23 24000000
dpll_mpu_ck 1 1 300000000
dpll_mpu_m2_ck 4 4 300000000
timer6_fck 0 1 24000000
timer3_fck 0 1 24000000
dbg_sysclk_ck 0 1 24000000
timer7_fck 0 1 24000000
timer5_fck 0 1 24000000
timer4_fck 0 1 24000000
timer2_fck 1 1 24000000
timer1_fck 1 1 24000000
I also haven't seen the device that needs the clocking initialize properly
yet, so that's another tipoff.
Maybe related, I'm also seeing the following in the dmesg:
[ 0.132509] platform mpu.1: FIXME: clock-name 'fck' DOES NOT exist in dt!
Any help or pointers would be appreciated. I've tried looking at section 20
in the AM335x TRM and I get the feeling there's just a register setting or
two that need to be done, but I'm just beginning to learn the hardware end
of the universe after many years as a UN*X guy, so I got a bit lost in
trying to figure out how to do it.
Thanks,
-d
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.