重村法克です。

On Mon, 02 Mar 2009 19:56:50 +0900
"G .Otsuji" <anno...@gmail.com> wrote:
> それで寄り道しました。hwpstate.cを添付します。

        この寄り道は参考になります:-)。実際には外さないとリリースできませんが。。

        ちなみにファームウェアのバージョンアップで 3.6GHz まで伸びました。

> At Sun, 1 Mar 2009 18:57:37 +0900,
> Norikatsu Shigemura <n...@ninth-nine.com> wrote:
> > On Sun, 1 Mar 2009 18:40:41 +0900
> > Norikatsu Shigemura <n...@ninth-nine.com> wrote:
> > >   1.466V ほどなのですが…。。まだ冬なので 36 ℃とか。。(^^;
> >     そうそう。k8temp(4) については作者の rpaulo 氏に問い合わせ中です。
> >     もうちょっとリアルタイムに温度を取りたいところ。
> 1) sysctlの練習も兼ねて、こちらに寄り道してみました。
> sysctl debug.hwpstate_temp
> で温度が出ます。
> % sysctl debug.hwpstate_temp
> debug.hwpstate_temp: 32.000
> 摂氏1/8度=0.125度区切りだということで小数点以下三桁用意しました。

        3.6GHz でぶん回すと 57 ℃まで上がりますね。800MHz 時に 36 ℃あたり
        で…。36 ℃から 3.6GHz にすると 2 秒で 10 ℃上がります:-)。逆に 800MHz
        にすると 10 秒に 1 ℃の割合で低下します。

        ちなみに文字列に変換して, 渡してますが, 整数型(INT)で問題ありません。
        その場合, "I" ではなく "IK" にすると表示の時等で色々と取り計らって
        くれます。

        sysctl:
                温度型(IK) - 整数, 単位はケルビンで 10 倍したもの(小数点第一
                位を取り扱うため)。
                設定時 F (ファーレンハイト)にした場合, ケルビンに変換されます。
                内部(デバイスドライバ)ではもちろんケルビンで。
        設定例(できないけど):
                sysctl debug.hwpstate_temp=100F
        表示例:
                sysctl hw.acpi.thermal.tz0.temperature
                hw.acpi.thermal.tz0.temperature: 53.8C

> 2) mWも出るようにしてみました。
> % sysctl dev.cpu.0.freq_levels
> dev.cpu.0.freq_levels: 2500/96000 1250/29000
> けれど適当な見積りなのであまり信用しないでください。

        3.6GHz で 150W, 800MHz で 18W ってすごくわかりやすいですね。

dev.cpu.0.freq_levels: 3600/149000 2300/80000 1800/52000 800/18000

        式を見ましたが, 係数をどうするか以外は問題無いかと。あと選択も悪くない
        かと思います。 > 係数

        あとこれ見ると 3.6GHz 止まりなのがよくわかります。Over Voltage ジャ
        ンパーピンを無効にしてるのですが, これ有効にしたら, 更に上が狙えそうで
        すね。まぁその前に冷却系をなんとかしてから…になると思いますが。

> 4) いただいた下のパッチをいれてみました。すこし改変して。

        基本的に current に入れるつもりで, バージョンチェック無しで問題あり
        ません。MFC するときは, それなりに他の部分も持っていくと。
        ぱっと見すぐ気がついた点としては, 下記のような問題でしょうか。

>>   ンにするか外側に括弧をつけます。#define とマクロ名の間にタブ文字を 1 個入
>>   れます。マクロがある関数のインライン展開である場合は、関数名は全て小文字

        #defineスペース ではなく #defineタブ で。

> 5)
> At Mon, 02 Mar 2009 07:27:51 +0900,
> "G .Otsuji" <anno...@gmail.com> wrote:
> > acpiを触ってないのでacpi_perf依存を外しても大丈夫だとおもいます。
> > けれどacpi_throttleは結局認識されそうなので。
> #if 0で外してみました。
> 初めにacpi_perfがよくわからず、すべてのcpufreqドライバが書いていたので、なんかご利益があるのだろうと思って
> 書いてみたんです。やっぱり外すべきではないかもしれないので、#if 0にしてます。ごめんなさい。

        厳密に読んでませんが, なんとなく基底クラスのような動きしてるので, 組
        み込んでしまって問題ないと思います。 > acpi_perf(4)

> > 3) ソースをstyle(9)に準拠したいです。COPYRIGHTも。
> style(9)に添ったemacs22の設定教えてください m(_ _)m
> とても面倒です。

        というわけで私は emacs を使ってないので使ってる人をつっついてみま
        した:-)。どうも元ネタがあったらしいのですが, 元ネタで残ってた問題
        が解消してるようで, 意外と広く参考になったようです:-)。

        以上よろしくお願いいたします。

メールによる返信