linux/net/core
Andy Gospodarek d519e17e2d net: export device speed and duplex via sysfs
This patch exports the link-speed (in Mbps) and duplex of an interface
via sysfs.  This eliminates the need to use ethtool just to check the
link-speed.  Not requiring 'ethtool' and not relying on the SIOCETHTOOL
ioctl should be helpful in an embedded environment where space is at a
premium as well.

NOTE: This patch also intentionally allows non-root users to check the link
speed and duplex -- something not possible with ethtool.

Here's some sample output:

# cat /sys/class/net/eth0/speed
100
# cat /sys/class/net/eth0/duplex
half
# ethtool eth0
Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  Not reported
        Advertised auto-negotiation: No
        Speed: 100Mb/s
        Duplex: Half
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: off
        Supports Wake-on: g
        Wake-on: g
        Current message level: 0x000000ff (255)
        Link detected: yes

Signed-off-by: David S. Miller <davem@davemloft.net>
2009-10-05 00:43:35 -07:00
..
datagram.c net: skb ftracer - add tracepoint to skb_copy_datagram_iovec (v3) 2009-08-13 16:26:14 -07:00
dev_mcast.c
dev.c net: introduce NETDEV_POST_INIT notifier 2009-10-05 00:43:34 -07:00
drop_monitor.c net: drop_monitor: make last_rx timestamp private 2009-09-02 14:37:45 -07:00
dst.c
ethtool.c ethtool: Remove support for obsolete string query operations 2009-10-05 00:10:11 -07:00
fib_rules.c
filter.c
flow.c
gen_estimator.c net: restore gnet_stats_basic to previous definition 2009-08-17 21:33:49 -07:00
gen_stats.c net: restore gnet_stats_basic to previous definition 2009-08-17 21:33:49 -07:00
iovec.c net: Fix memcpy_toiovecend() to use the right offset 2009-06-08 00:25:39 -07:00
kmap_skb.h
link_watch.c
Makefile
neighbour.c neigh: Convert garbage collection from softirq to workqueue 2009-08-02 18:35:16 -07:00
net_namespace.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-08-12 17:44:53 -07:00
net-sysfs.c net: export device speed and duplex via sysfs 2009-10-05 00:43:35 -07:00
net-sysfs.h
net-traces.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
netevent.c
netpoll.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-09-02 00:32:56 -07:00
pktgen.c pktgen: Avoid dirtying skb->users when txq is full 2009-10-05 00:21:54 -07:00
request_sock.c
rtnetlink.c net_sched: reintroduce dev->qdisc for use by sch_api 2009-09-06 02:07:03 -07:00
scm.c
skb_dma_map.c net: skb_shared_info optimization 2009-06-08 00:21:48 -07:00
skbuff.c net: remove unused skb->do_not_encrypt 2009-07-24 15:05:31 -04:00
sock.c net: Fix sock_wfree() race 2009-09-30 16:20:38 -07:00
stream.c
sysctl_net_core.c
user_dma.c net/core/user_dma.c: Use frag list abstraction interfaces. 2009-06-09 00:19:10 -07:00
utils.c