RTL8111/8168B r8168 unknown chip version (2c800000)

以前にMalformed Packetとr8169 で書いた内容の検証がだいぶ進みました。
そもそもR8111/8168Bなんだから、はじめからr8169じゃなくてr8168で動かせよって話なのですが、elrepoのkmod-r8168をいれると、上がってこないというトラウマがあったため、別の路線をあたっていましたが、原点に変えることになりました。

きっかけはコレです。

unknown chip version (2c800000)
ACPI: PCI interrupt for device 0000:02:00.0 disabled
r8168: probe of 0000:02:00.0 failed with error -1

コンソールをよく見てみたら、unknow chipとおっしゃっています。
ethtoolでも次のように確認できます。

ethtool -d eth0
unknown RealTek chip

単純にr8168が古く、新しいリビジョンのチップを認識していないせいでした。
本家よりr8168-8.032.00をもってきてmake modulesしてr8168.koを入れ替えたら、すんなり認識しました。
ethtoolの結果も適正にみえます。

ethtool -d eth0
Offset  Values
--------        -----
000:     bc 5f f4 39 11 23 00 00 40 00 01 00 80 00 00 00
010:     00 00 00 00 00 00 00 00 24 0f 06 00 00 00 00 00
020:     00 40 8f 06 00 00 00 00 00 00 00 00 00 00 00 00
030:     00 00 00 00 00 00 00 0c 00 00 00 00 3f 80 00 00
040:     80 0f 90 2f 0e 87 02 00 00 00 00 00 00 00 00 00
050:     10 00 cf 9c 40 50 01 08 00 00 00 00 00 00 00 00
060:     40 11 00 80 01 ff ff 17 0c f7 00 00 93 00 c0 f0
070:     01 00 3f 00 dc f0 00 00 00 00 00 00 00 00 03 00
080:     24 fe 19 00 00 00 04 00 00 00 00 00 00 00 00 00
090:     92 4f 9e 0b f9 61 58 07 9a 60 6c 15 e9 88 23 49
0a0:     d1 98 bd a7 ae d6 72 52 f1 4f 80 07 bc 38 60 d3
0b0:     00 00 60 d3 ff ff ff ff ff ff ff ff 00 00 00 00
0c0:     00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0d0:     60 00 00 32 00 00 00 00 00 00 f3 05 fb ff fe 00
0e0:     21 20 51 5f 00 80 8f 06 00 00 00 00 0c 00 00 00
0f0:     3f 00 40 00 00 00 00 00 ff 01 03 00 00 00 00 00

ひとつバージョンがうえのr8168-8.034.00もあったのですが、うまくコンパイルできなかったのでr8168-8.032.00を使いました。

これでなぞのフレーム化けと、パフォーマンスの低下がなくなってくれれば今夜はビールがうまいです。

コメントを残す

メールアドレスが公開されることはありません。


*