> >>> + > >>> + /* 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. _______________________________________________ devicetree-discuss mailing list devicetree-discuss@lists.ozlabs.org https://lists.ozlabs.org/listinfo/devicetree-discuss