Dan Williams wrote:
Jean, what's the official word on range->max_qual.level? I don't know where I came up with the requirement that max_qual.level must be 0 to indicate that the units are in dBm (as opposed to RSSI), but it might well have been because we had no way to detect RSSI vs. dBm before IW_QUAL_DBM was added as a flag in WE-19, and therefore using level = 0 was the only reliable way because 0 is the theoretical "max" level that most cards can handle. So if you want to express your quality in dBm, you have a choice; either set IW_QUAL_DBM explicitly and do what you want with max_qual.level, or set your max_qual.level to 0. That's my interpretation, of course I could be wrong. Furthermore, there's no point to setting your max_qual.level to be the lowest level, since that's what your max_qual.noise is!!! max_qual.noise is the noise floor of your card and that effectively _is_ the lowest level at which your card can operate. In the ideal world, which we are now much closer to, we could _require_ that IW_QUAL_DBM was set, otherwise values would be interpreted as RSSI. And we can if the driver's we_source_version is >= 19. I agree, it's all quite confusing for starters.
Setting IW_QUAL_DBM when updating does make /proc/net/wireless report level and noise as negative numbers. Thanks for pointing me in that direction.
I also tried both 0 and -100 as the qual_max values. The range is definitely better with -100 than with 0.
Larry - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html