From owner-freebsd-wireless@FreeBSD.ORG Fri Oct 11 04:01:15 2013 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 3168DBE6; Fri, 11 Oct 2013 04:01:15 +0000 (UTC) (envelope-from tx2023@gmail.com) Received: from mail-pb0-x22e.google.com (mail-pb0-x22e.google.com [IPv6:2607:f8b0:400e:c01::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0190F23DC; Fri, 11 Oct 2013 04:01:14 +0000 (UTC) Received: by mail-pb0-f46.google.com with SMTP id rq2so3561702pbb.5 for ; Thu, 10 Oct 2013 21:01:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=jhPozvZeaQ+W8muaVZPKL0bEzQYGrun9jX7g823wNqI=; b=Y+uj7o87k072JdEk0ieTh3slf9bOpvDdssi2WgnkFlhTs+D+8h/HZLfuRSgmgmKSz5 9GGpcex6qqLXM81bgMhWs3ZORLJkkhQ4J/LWQR2XOcR60VE0lI5bvCJM2iXXtVRLZgXS XHmwDKZ789D7O0N38qMjz1Pk3M660NAHlZGNDXIji2OqpxV2Uo9Bm7g7+LCbnH1ZJuvt hK2SqUeuI2SJjJOdCo91l+69G5FY2dppd9KiUa+wzyqyVJhgKEQjz+NjRb2ScIfSQTOk hlKv7ozw0NYJjA0LRSL6QwdqgW3J3vXY8GjR+PG8VsFlcUpSWKyy6TjAJAI7RmPRw1qX 2MHQ== MIME-Version: 1.0 X-Received: by 10.66.161.38 with SMTP id xp6mr19025711pab.145.1381464074643; Thu, 10 Oct 2013 21:01:14 -0700 (PDT) Received: by 10.68.13.226 with HTTP; Thu, 10 Oct 2013 21:01:14 -0700 (PDT) In-Reply-To: References: Date: Fri, 11 Oct 2013 12:01:14 +0800 Message-ID: Subject: Re: Correlation values for Atheros adaptive noise immunity From: w To: Adrian Chadd Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Cc: "freebsd-wireless@freebsd.org" X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Oct 2013 04:01:15 -0000 With open source, we should be able to change it from "wrong" to "right" :) I just spotted a little more bugs to be corrected: \freebsd\sys\dev\ath\ath_hal\ar5416\ar5416_ani.c Search "+1 <" (3 hits in 1 file) Line 382: if (aniState->noiseImmunityLevel+1 < params->maxNoiseImmunityLevel) { Line 388: if (aniState->spurImmunityLevel+1 < params->maxSpurImmunityLevel) { Line 480: aniState->noiseImmunityLevel+1 < params->maxNoiseImmunityLevel)) { I think there shouldn=92t be a +1 before the the < sign because the variables are integers. Thanks again for your help. ~ w ~ On Fri, Oct 11, 2013 at 9:34 AM, Adrian Chadd wrote: > I don't have any open source PHY documentation. :) I'd have to write it. > > Which isn't a bad thing; I'm happy to go and re-read what I (legally, > legitimately!) have from Atheros about their PHY design and ANI and write= up > what's implemented in the driver. > > The thing with ANI is that a lot of the parameters (like self-correlation > thresholds) have to do with how signal detection in the PHY works. So it'= s > not specifically noise immunity as much as it's tweaking the sensitivity > range and thresholds of the receiver hardware. > > There's some interesting things that should be re-investigated (ie, the > m1/m2 thresholds and how weak signal detection works); I vaguely recall w= hen > I was working there that ANI was doing it "wrong". I'll setup a meeting o= r > two with the PHY team when I'm back in California and jot down some furth= er > notes about this. > > > > -adrian > > (note: so I'm legally allowed to have all this stuff and I'm legally allo= wed > to code up open source drivers with it, but what I can't do is share the > documentation I have. So no, I won't share it. But whatever goes into ope= n > source to improve their chips is open/fair game. Hence, I can write > documentation and discuss whatever ends up in the open source drivers..) > > > > On 10 October 2013 18:30, w wrote: >> >> Do you have the open source link for the PHY documentation so I could re= ad >> it? >> >> Actually my goal is quite simple I think: To test the effectiveness of >> ANI. >> >> Thanks very much. >> >> ~ w ~ >> >> On Fri, Oct 11, 2013 at 4:43 AM, Adrian Chadd wrote= : >> > Yeah, it's all a bit confusing. I'd have to re-read the PHY >> > documentation i >> > have here in order to really understand whta's going on. >> > >> > What are you trying to achieve herE? >> > >> > >> > -adrian >> > >> > >> > >> > On 9 October 2013 20:03, w wrote: >> >> >> >> Update: looking at the patent again: >> >> http://www.freepatentsonline.com/7349503.html >> >> >> >> Note that bb_m1thres and bb_m2thres refer to normalized, >> >> self-correlated thresholds, bb_m2count_thr refers to the number of >> >> self-correlation values (wherein a typical count would not exceed 31)= , >> >> and bb_use_self_corr_low refers to an enabling bit value. >> >> >> >> (but the variables are still quite confusing.) >> >> >> >> >> >> ~ w ~ >> >> >> >> On Thu, Oct 10, 2013 at 10:12 AM, w wrote: >> >> > Yup, I read the patent. I have also read the Atheros documentation >> >> > for >> >> > ANI (for a different hardware version but it says the operation is >> >> > similar). >> >> > >> >> > Are we able to see physical layer parameters like signal level / >> >> > correlation / channel state information, >> >> > or are they hidden inside the hardware? >> >> > >> >> > ~ w ~ >> >> > >> >> > >> >> > >> >> > On Thu, Oct 10, 2013 at 10:05 AM, Adrian Chadd >> >> > wrote: >> >> >> I'm not sure. I think it's a signal level. Have you read the ANI >> >> >> patent(s) ? >> >> >> >> >> >> >> >> >> >> >> >> -adrian >> >> >> >> >> >> >> >> >> >> >> >> On 9 October 2013 19:04, w wrote: >> >> >>> >> >> >>> Is there any way I can printk the correlation values for >> >> >>> ar5416_ani.c? >> >> >>> >> >> >>> I couldn=92t find the variable that contains the correlation valu= e. >> >> >>> Line 267 of the ar5416_ani.c file says: >> >> >>> OS_REG_RMW_FIELD(ah, AR_PHY_SFCORR, >> >> >>> AR_PHY_SFCORR_M1_THRESH, m1Thresh[on]); >> >> >>> >> >> >>> I don=92t know what the variables mean or what the function means= or >> >> >>> what data type the variables are because I want to printk them. >> >> >>> >> >> >>> References: >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> http://svnweb.freebsd.org/base/head/sys/dev/ath/ath_hal/ar5416/ar= 5416_ani.c?view=3Dmarkup >> >> >>> >> >> >>> https://wiki.freebsd.org/dev/ath_hal%284%29/AutomaticNoiseImmunit= y >> >> >>> >> >> >>> ~ w ~ >> >> >>> _______________________________________________ >> >> >>> freebsd-wireless@freebsd.org mailing list >> >> >>> http://lists.freebsd.org/mailman/listinfo/freebsd-wireless >> >> >>> To unsubscribe, send any mail to >> >> >>> "freebsd-wireless-unsubscribe@freebsd.org" >> >> >> >> >> >> >> >> _______________________________________________ >> >> freebsd-wireless@freebsd.org mailing list >> >> http://lists.freebsd.org/mailman/listinfo/freebsd-wireless >> >> To unsubscribe, send any mail to >> >> "freebsd-wireless-unsubscribe@freebsd.org" >> > >> > > >