On 09/08/11 22:42, Tarl Neustaedter wrote:
For what it's worth, Sun systems don't (currently) use a "bus-frequency" property. We do have a "stick-frequency" property, which relates the "stick" register to real-time nanoseconds, but that's specific to the sun4v series of platforms.
Do sun4m systems actually benchmark the CPU within OBP? From Artyom's blog for example, it appears that OBP attempts to benchmark the CPU since its speed is listed as over 1GHz in QEMU in the Solaris kernel -v output which makes me feel that it does.
I think this may be related to some random hangs I see during CPU detection in SPARC32 which look like they are caused by an interaction between the level 14 timer and the kernel (as changing the values makes this more/less likely). In other words, I think that benchmarking the CPU during startup and writing the estimated frequency into the device tree may fix interesting issues caused by calling get_hrtime() within a tight loop during emulation.
ATB,
Mark.