[Armadillo:04260] Re: Armadillo-500のネットワーク設定について(ethtool使用)
大木朋春
email@hidden
2009年 5月 18日 (月) 09:48:51 JST
溝渕様
大木です。
いつもお世話になっております。
返信が遅くなりまして申し訳ありません。
> Linuxカーネルは、linux-2.6.18-at8をお使いとのことですが、ソースの修正な
> どは行なっていませんか?
at8をベースとしていますが、一部修正を行っています。
最初の質問メールで書き忘れたことをお詫びします。
~/linux-2.6.18-at8/drivers/net/mii.cに関していえばat12(すみません、比較結果があったのがat12
だったので)と1箇所違う他はまったく同じで、その違いは260行目付近の
/* if forced media, go no further */
if (mii->force_media)
return 0; /* duplex did not change */
をまるまるコメントアウトしているというものです。
これは最初の質問メールで
# LANケーブル抜いた状態でethtool eth0をやっても常に
# Link detected: yes
# となるのは、また別の問題。
と書いた内容の修正であり、別件で貴社の担当者様に問い合わせて御指示頂いたものです。
> 以下のイメージファイルは、linux-2.6.18-at8を使用したものですが、このイ
> メージファイルを書き込んでも挙動は変わりませんか?
> [linux-a500-1.04.bin.gz]
> http://armadillo.atmark-techno.com/files/downloads/armadillo-500/image/linux-a500-1.04.bin.gz
ethtoolが入ってないので、ethtool_5-1_arm.debからバイナリを取り出し、入れ込んで実行してみました。
[email@hidden (ttymxc0) /home/ftp/pub]# ./ethtool -s eth0 autoneg off
[email@hidden (ttymxc0) /home/ftp/pub]# ./ethtool -s eth0 duplex half
[email@hidden (ttymxc0) /home/ftp/pub]#
(ここでLANケーブル挿抜)
[email@hidden (ttymxc0) /home/ftp/pub]# ./ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: No
Speed: 100Mb/s
Duplex: Half
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: off
Current message level: 0x00000004 (4)
Link detected: yes
[email@hidden (ttymxc0) /home/ftp/pub]#
こちらで作成したイメージと違い、ケーブル挿抜で
eth0: link down
eth0: link up, 100Mbps, full-duplex, lpa 0x05E1
が表示されませんでした。
ソースコードを見直してみましたが、上記箇所をコメントアウトすることで以降の処理が実行
されてしまい、
eth0: link down
eth0: link up, 100Mbps, full-duplex, lpa 0x05E1
等のメッセージが表示されてしまうようです。
ただし、ここを戻したとしてもケーブルを抜いた状態でも
Link detected: yes
となるので、これは問題です。
両方に対応した修正をご教示いただければ幸いです。
> また、関係無いとは思いますが、お使いのatmark-distのバージョンを教えてい
> ただけますか?
atmark-dist-20080617
です。
以上、よろしくお願いいたします。
----------------
大木 朋春
armadillo メーリングリストの案内