Thread (37 messages) 37 messages, 9 authors, 2013-01-04

[PATCH 5/9] clocksource: tegra: Enable ARM arch_timer with TSC

From: pdeschrijver@nvidia.com (Peter De Schrijver)
Date: 2012-12-20 12:24:02
Also in: linux-devicetree, linux-tegra, lkml

quoted
quoted
quoted
+
+	/* CNTFRQ */
+	asm("mcr p15, 0, %0, c14, c0, 0\n" : : "r" (freq));
+	asm("mrc p15, 0, %0, c14, c0, 0\n" : "=r" (val));
+	BUG_ON(val != freq);
This is scary. CNTFRQ is only writable from secure mode, and will
explode in any other situation.

Also, writing to CNTFRQ doesn't change the timer frequency! This is just
a way for secure mode to tell the rest of the world the frequency the
timer is ticking at. Unless you've wired the input clock to be able to
change the frequency?
ATM, our upstream kernel is expected in secure mode. This situation
may be changed later, though....
I appreciate this. But I expect this kernel to be also used on the
non-secure side if someone tried to run KVM with it. And this would go
bang right away.
But the guest wouldn't necessarily have this peripheral, or any other Tegra114
peripheral for that matter?

Cheers,

Peter.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help