Re: NetworkManager and IPW2100
- From: Dan Williams <dcbw redhat com>
- To: Ryan Skadberg <skadz1 gmail com>
- Cc: networkmanager-list gnome org
- Subject: Re: NetworkManager and IPW2100
- Date: Sun, 24 Oct 2004 20:36:13 -0400 (EDT)
On Sun, 24 Oct 2004, Ryan Skadberg wrote:
> My assumption is that it is an IPW2100 issue, but I wanted to make
> sure no one else has this working first.
> The next question would be, how is NetworkManager checking signal
> strength? And then, what does it expect to get? I'd like to go to
> the IPW2100 developers and see if I can get them to fix this ASAP.
NetworkManager uses the iw_get_stats/iw_get_range combo, like most other
applications that do signal strength for the current connection (old GNOME
wireless applet, netapplet).
has_range = (iw_get_range_info (iwlib_socket, nm_device_get_iface
(dev), &range) >= 0);
if (iw_get_stats (iwlib_socket, nm_device_get_iface (dev), &stats,
&range, has_range) == 0)
/* Update our max quality while we're at it */
dev->options.wireless.max_quality = range.max_qual.level;
dev->options.wireless.noise = stats.qual.noise;
percent = nm_wireless_qual_to_percent (dev,
What your problem appears to be is that the ipw2100 drivers _dont_
_support_ the SIOCGIWSTATS ioctl(), which NetworkManager really wants. I
appears there is fallback code in iwlib (from wireless-tools) to read from
/proc, but that' won't necessarily do the right thing. The driver should
really support SIOCGIWSTATS, not just SIOCGIWRANGE.
static iw_handler ipw2100_wx_handlers =
NULL, /* SIOCGIWSTATS */
In any case, can you do 'cat /proc/net/wireless' and post the results to
the list here?
] [Thread Prev