Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Feb 2014 11:54:15 -0700
From:      Ian Lepore <ian@FreeBSD.org>
To:        freebsd-arm <freebsd-arm@FreeBSD.org>
Subject:   wandboard / imx6 speed
Message-ID:  <1393008855.1145.125.camel@revolution.hippie.lan>

next in thread | raw e-mail | index | archive | help
Just a progress update.... Building on the temperature sensor code
written recently by Steve Lawrance, I commited changes for imx6 last
night that run the processor at full speed as long as the temperature
stays below the "throttle point", a configurable temperature that
defaults to 10C below the max temp the chip can handle.  (I haven't been
able to get any of my boards over 55C yet, and the max temp is 95C on
solo/dual and 105C on quad.)

There are some new sysctls under dev.imx6_anatop.0 to show temperature
and frequency.  It's not clear that's where they'll always live in the
sysctl mibs, other systems use dev.cpu.#.  For imx6 these things aren't
really per-cpu, there're per-SoC and maybe we need a dev.soc or hw.imx6
or something like that.

 dev.imx6_anatop.0.cpu_mhz: 984
 dev.imx6_anatop.0.temperature: 38.5C
 dev.imx6_anatop.0.throttle_temperature: 95.0C

To change the throttle_temperature, you have to specify a new value in
deci-kelvins or add 'C' or 'F' as suffix to the number.

The max cpu freq is taken from the OTP data burned into the chip.  My
wandboard dual doesn't have the right value, it comes up with 792 as the
max speed, but the chip markings are the numbers for a 1Ghz part.  It
appears that Wanboard shipped some units without blowing the right speed
fuses.  I'm thinking of adding a sysctl/tuneable to override the OTP
data to get around it (and to just generally allow for overclocking,
because I'm an OC kind of guy at heart).

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1393008855.1145.125.camel>