From owner-freebsd-wireless@FreeBSD.ORG Tue Dec 11 09:19:53 2012 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1A5E95C4 for ; Tue, 11 Dec 2012 09:19:53 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-we0-f182.google.com (mail-we0-f182.google.com [74.125.82.182]) by mx1.freebsd.org (Postfix) with ESMTP id 8BA6B8FC0C for ; Tue, 11 Dec 2012 09:19:52 +0000 (UTC) Received: by mail-we0-f182.google.com with SMTP id u54so1994994wey.13 for ; Tue, 11 Dec 2012 01:19:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=l6fn71eAu4YznaeUt886VZSj2DKtXgDyWXFHIah5mY8=; b=R5BktFbLROiFjPnsNiIzBfUvICNxfkcFKG7wl99n5zEs6TQhlaP3YC4OsoqFDGec9D tIWRHgC28pyr9/vIhEbwXt9JCXrtahpShM2A7xuYDW3n8nxmETuSm/EwB1WouYBa4QwT U0l2KZFArfeqgay9p3x5rdGmLEaGZ+4g26SVYr6nS3hPV2tOCbkaOtoZdJfgOcom7CQT 65lVX2n0kF+MOvb9VHwsXWe65NFDLmH+eAlspDvykOpbYL3xzkA27gb4yf6VKALrmT76 e1OfRWzI1hfknIVKX7EZ1Duu95HVZuSNZGMJ3dSjG0tM/nKf8kkyl+86dLaw5C/Nc//O 3JhQ== MIME-Version: 1.0 Received: by 10.216.85.211 with SMTP id u61mr6674724wee.212.1355217591216; Tue, 11 Dec 2012 01:19:51 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.217.57.9 with HTTP; Tue, 11 Dec 2012 01:19:51 -0800 (PST) In-Reply-To: References: <201210180934.48741.jhugo@meraka.csir.co.za> Date: Tue, 11 Dec 2012 01:19:51 -0800 X-Google-Sender-Auth: MxFxQ0kR7dqM_-xjbOVYsm0hzp8 Message-ID: Subject: Re: 11n in adhoc mode From: Adrian Chadd To: Johann Hugo Content-Type: text/plain; charset=ISO-8859-1 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: Tue, 11 Dec 2012 09:19:53 -0000 .. so now I have 11n IBSS working, but the performance is pretty shocking. I bet there's some timers that are just not programmed correctly. I see massive numbers of long retries and CRC errors. In any case, there are a few odd things out: * ieee80211_ies_expand() doesn't parse HTINFO, only HTCAP. I don't know why - Bernhard, any ideas? * Taught ieee80211_sta_join() about the HT setup, so it sets up HT information based on the probe response. * The problem here is that the STA code sets up the HT information based on the association response, rather than the probe response; but there's no association request/response with IBSS. So if you don't capture it during probe response, you're short of luck; * .. and when doing an initial scan, the probe response goes to the scan module; it doesn't make it through to the normal probe response code that follows and thus it can't possibly be used to upgrade things. * Then some ancillary stuff - mostly processing beacon frames from peers and handling HT IE changes correctly. So with this, I have what looks like a working 802.11n IBSS - at least there are MCS rates negotiated on both sides. I don't like it one bit though; I'd like to sit down with Bernhard and anyone else who knows net80211 well enough to see whether things are "right". But.. it seems quite plausible to make work now. I don't think I have the time / brain cycles to debug some of the more stranger behaviour (and I can't ignore that the driver/HAL is missing a whole heap of 11n chipset IBSS fixes, let along the IBSS data path needing some TX and RX AMPDU fixes) but I'll definitely see if I can just get the basics up and running. Thanks, Adrian