From owner-freebsd-wireless@freebsd.org Tue May 17 18:15:20 2016 Return-Path: Delivered-To: freebsd-wireless@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A47DB3F975 for ; Tue, 17 May 2016 18:15:20 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-io0-x242.google.com (mail-io0-x242.google.com [IPv6:2607:f8b0:4001:c06::242]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 580B41997 for ; Tue, 17 May 2016 18:15:20 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-io0-x242.google.com with SMTP id i75so5104527ioa.2 for ; Tue, 17 May 2016 11:15:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:date:message-id:subject:from:to; bh=4RTZvToUrUdlvYFnNwwysEuFawZcOK18+sv3SsC1/Wo=; b=iCoLWov5O4YjhgQZz413fSyU2F1bd+zHSrcz+H3TQrNOZG4kDxPq7+3feld0eOkSLL KYh6wukYul+RndMd68QGZNFzZAvfm0FIovIDJqaVB044l/5E1SMI6hU+0UWzGV5C9pkK 0+8isam6MnsTdRE8DERyrK6B/ntkJSFAqU0eQcvLO/7BXdlhYYLTsGIxEfhW0yH6Lrvn ebJ6jwu/kVik4cJbMZ32cd04uboYJ7ZwMp86aCjaZRtjrAfZahBr8r4Vy2hEHCWVSOI6 IBvMpygTxOhz7NyYV78e7fkEheqjqHkhua+6pipjiBDD9IJzhe0C/OfLWPWBW73v+lo+ DeQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:date:message-id:subject:from :to; bh=4RTZvToUrUdlvYFnNwwysEuFawZcOK18+sv3SsC1/Wo=; b=L2STIa6S+jh92OI1gDNGowR648H77jm83asF2eqCGK2tKOlO/5JnHxwnw9YK7go581 OsSEZ8VKb6Bbuz4uHJ9OKFakIYDGlAe4cC2toqGIOBvaQZMpae5zZOmM8CN5BPLJCcDr eVd3kTllgyLpddzCws3SHugA4wEt3+wBYyq+NHHuXOjiW6AJES4t9t267lwUWKmtagdq z2w7T4D7HDFx1d+lbaG6FCPwi5+LmJhLFG8Xsi+OW8kXu2rJBSAWZ3wYnkQSN4tX57n9 LqRAxhT3T5xiwXFlzK2ao69Q8i8elZ/8iaTnCFdvv7gtbqsiw+SNL7s+KaihXwXjAdcE XFTQ== X-Gm-Message-State: AOPr4FVzC/pNGFbM1UJd+4CcoPN460ZjfrbICc1Gwjr21b152mS8e4RjhrPYJRgAh5LWzT3nRBhZD51ujS4cJw== MIME-Version: 1.0 X-Received: by 10.36.51.16 with SMTP id k16mr3809602itk.80.1463508919765; Tue, 17 May 2016 11:15:19 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.36.113.3 with HTTP; Tue, 17 May 2016 11:15:19 -0700 (PDT) Date: Tue, 17 May 2016 11:15:19 -0700 X-Google-Sender-Auth: 4LC4RUvV_9ilxsEcOGJg1YjoVJM Message-ID: Subject: bwn(4) updates - PHY-N support, newer firmware, etc From: Adrian Chadd To: "freebsd-wireless@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.22 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, 17 May 2016 18:15:20 -0000 hiya, I've been .. fixing bwn(4) a bunch. I've fixed really badly behaved rate control code, some TX/RX handling, and I have some descriptor handling issues to fix. It's actually useful now, and I encourage people to test it. I've also added PHY-N support from Linux b43. It's GPL, so it's not included by default. Here's what you have to do: * add BWN_DEBUG and BWN_GPL_PHY to your kernel config * edit sys/modules/bwn/Makefile and uncomment the PHY-N bits * rebuild The only NIC I've tested so far is the BCM4321, which is circa 2006. The next NIC is the BCM4322 which is circa 2008 and requires a bit more work. My aim is to port the later GPL PHYs to bwn(4) so we at least have support, even if it's GPL. It's not included in the default builds and the PHY source is in sys/gnu/ so it doesn't clash with the BSD bits. The BCM4321 also works in 5GHz 11a mode, so I'm now able to fix up 5GHz operation. Here's what's outstanding: * fix rx rssi for basically everything; * add firmware revision 5xx support; * fix up some busdma / contigmalloc issues with bwn; * add the later PHYs; * abstract the PHY code out to look like the ath_hal setup, which means the PHY code doesn't know about the main driver, and we can load the GPL PHY code as a module rather than recompiling things. Once this list is done, I'll take a stab at porting over the 11n rate bits so we can at least get basic 11n TX/RX working. That requires a bunch of PHY work as well as a bunch of TX/RX work, so it's not going to happen any time soon. If anyone would like to help with the above entries then please let me know. -adrian