From owner-freebsd-wireless@FreeBSD.ORG Mon Feb 27 01:36:37 2012 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ED1E6106566B for ; Mon, 27 Feb 2012 01:36:37 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ww0-f50.google.com (mail-ww0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id 74E4A8FC12 for ; Mon, 27 Feb 2012 01:36:37 +0000 (UTC) Received: by wgbds12 with SMTP id ds12so492438wgb.31 for ; Sun, 26 Feb 2012 17:36:36 -0800 (PST) Received-SPF: pass (google.com: domain of adrian.chadd@gmail.com designates 10.180.93.4 as permitted sender) client-ip=10.180.93.4; Authentication-Results: mr.google.com; spf=pass (google.com: domain of adrian.chadd@gmail.com designates 10.180.93.4 as permitted sender) smtp.mail=adrian.chadd@gmail.com; dkim=pass header.i=adrian.chadd@gmail.com Received: from mr.google.com ([10.180.93.4]) by 10.180.93.4 with SMTP id cq4mr23151700wib.21.1330306596443 (num_hops = 1); Sun, 26 Feb 2012 17:36:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=wgNe7blKC7idneEQCIYJMAMBecrb7x7aujioes7/2TA=; b=KM2vTIrxS34kNWTqZsJT1CJRouwynB0uAJX0wRhR1+D05ZUE5GoRvVC//wZpdLEhyb X4xLa+JbLgo/xYWFDz5PB6yah5XJMHgZ6NrqKMkUDlgg7CeftphaGz5i9xNzGauwacY5 /QLqmaW7QMHM29nYseJZ/hwZymXhPcAfS1P+I= MIME-Version: 1.0 Received: by 10.180.93.4 with SMTP id cq4mr18439384wib.21.1330306596276; Sun, 26 Feb 2012 17:36:36 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.216.198.81 with HTTP; Sun, 26 Feb 2012 17:36:36 -0800 (PST) Date: Sun, 26 Feb 2012 17:36:36 -0800 X-Google-Sender-Auth: U7P4Xw4W3ZU2T6pfTlPNoCZT93A Message-ID: From: Adrian Chadd To: freebsd-wireless@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 Subject: [wi] Trying to make it work for people; a day of tinkering.. X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 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: Mon, 27 Feb 2012 01:36:38 -0000 Hi all, I've been tinkering with these orinoco/lucent wi(4) NICs. The one in particular is a Hermes firmware NIC, STA firmware 72801. The summary is pretty simple: * Setting sysctls hw.wi.debug=1 and hw.wi.txerate=1 makes for some interesting debugging output; * We _are_ receiving TX and RX interrupts from the NIC; * TXing for me is failing, with "invalid format" errors; * RX'ing for me fires off completion interrupts, but the rx function doesn't find the node, so it simply tosses the frame; * If I change the TX encapsulation from 802_11 to 802_3, TX is actually successful - but RX stays unsuccessful. r160991 is a likely culprit - it changed a whole lot of the TX codepath to support raw frame TX, but there's no evidence at all that it ever worked in STA/IBSS modes. I also am not sure whether the "ibss mode" value in wi_start_locked() should be "3". It looks like openbsd sets that to 0 unless you're in IBSS mode. Also: "ifconfig wlan0 list sta" always shows no node, so it's quite likely net80211 thinks there's no actual association going on. is this because mgmt frames aren't being received by the rx path and thus net80211 doesn't "know" about the new association? Also: scan logs that it's changing channels but I don't (yet) see beacon frames being received - and the scan cache is never populated. That's another thing to try and figure out. It'd be nice if someone were able to import the openbsd if_wi driver (mostly) verbatim. I'm not sure I want to spend hours trying to figure out which particular configuration bit is required to restore functionality here. Thanks to Justin Hibbits for sitting down with me and briefly brainstorming this stuff! Adrian