From owner-freebsd-wireless@freebsd.org Mon Jul 13 10:34:58 2020 Return-Path: Delivered-To: freebsd-wireless@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4A7D935F740 for ; Mon, 13 Jul 2020 10:34:58 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4B50QV0zVSz3Tlx; Mon, 13 Jul 2020 10:34:58 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from mx1.sbone.de (mx1.sbone.de [IPv6:2a01:4f8:13b:39f::9f:25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE" (not verified)) (Authenticated sender: bz/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id C91E22BC5B; Mon, 13 Jul 2020 10:34:57 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:31::2013:587]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id AA6898D4A161; Mon, 13 Jul 2020 10:34:55 +0000 (UTC) Received: from content-filter.sbone.de (content-filter.sbone.de [IPv6:fde9:577b:c1a9:31::2013:2742]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 21097E707D0; Mon, 13 Jul 2020 10:34:55 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:31::2013:587]) by content-filter.sbone.de (content-filter.sbone.de [fde9:577b:c1a9:31::2013:2742]) (amavisd-new, port 10024) with ESMTP id 5tMNQtY2KbpB; Mon, 13 Jul 2020 10:34:53 +0000 (UTC) Received: from [192.168.2.110] (unknown [IPv6:fde9:577b:c1a9:31:25c1:7c49:3c9f:c3d7]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id E84ABE707B5; Mon, 13 Jul 2020 10:34:52 +0000 (UTC) From: "Bjoern A. Zeeb" To: "Emmanuel Vadot" Cc: driesm.michiels@gmail.com, freebsd-wireless@freebsd.org Subject: Re: Current state of recent wireless cards Date: Mon, 13 Jul 2020 10:34:51 +0000 X-Mailer: MailMate (2.0BETAr6146) Message-ID: <778A3FF0-905B-49ED-ABDE-913C3451AB16@FreeBSD.org> In-Reply-To: <20200710233308.b27284cd15dec5849fb5cc32@bidouilliste.com> References: <000501d655e3$90c40170$b24c0450$@gmail.com> <20200710233308.b27284cd15dec5849fb5cc32@bidouilliste.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.33 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, 13 Jul 2020 10:34:58 -0000 On 10 Jul 2020, at 21:33, Emmanuel Vadot wrote: > That's a bit optimistic that attach and firmware loading is half of > the work no ? > I don't know how much linuxkpi layer is needed for 80211 compat but I > guess it's "a lot" ? Part of that “lot” is that as Adrian also indicates the net80211 parts also need doing as otherwise you cannot write the compat on top and that makes it hard to estimate how much will be compat or native yet. Also given along with ath10k this is the “first” bits to do this in FreeBSD it’ll always take longer than doing a 2nd or 3rd driver. > IIRC Linux have multiple 80211 framework no ? Well kind-of layered: mac80211 / cfg80211 and the user space config stuff in nl80211 and I’d almost thought intermangled add the entire regdomain parts. https://wireless.wiki.kernel.org has at least some overview there. > I guess your work only focus on one (used by iwlwifi), do you know > how > many drivers used the same one ? What about FullMAC drivers like the > SDIO broadcom one used in many ARM SBC, is that using the same > framework ? The Broadcom driver could be a great deal easier to port than it is. It will be easier to port with this as some parts are already covered as a result of this and more will be. The SDIO parts for the fmac are not part of this as the Intel work is PCI-only but those were done last year already. I am currently trying to get my hands-on a PCI card as well as I hope that might speed up some things. On another note, I was able to get the rtw88 driver compile in under a day based on the iwlwifi. That’s kind-of an ideal case, other drivers would need more time (and it’ll highly depend on whether that is other Linux or other WiFi bits). I had done a comparison after the initial iwlwifi work based on compile time errors for a few Dual BSD-GPL or ISC or similarly friendly licensed drivers: the order was iwlwifi < rtw88 < ath11k < ath10k < brcmfmac in terms of individual errors and functions missing/to implement. I also had numbers of how much the iwlwifi work had reduced all this but they are outdated. I also looked at the mt7601u GPL driver (as the hope is that some of these could also be ported more quickly and possibly live outside the tree but at least be avail) and it wasn’t too bad either. A handful of extra WiFi constants and 6 or so functions and then the usual Linux noise on top. /bz