From patchwork Tue Oct 5 13:53:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= X-Patchwork-Id: 12536853 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BFD1C433FE for ; Tue, 5 Oct 2021 13:55:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 616E161A50 for ; Tue, 5 Oct 2021 13:55:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235872AbhJEN46 (ORCPT ); Tue, 5 Oct 2021 09:56:58 -0400 Received: from mail-dm6nam11on2079.outbound.protection.outlook.com ([40.107.223.79]:3808 "EHLO NAM11-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S234570AbhJEN4L (ORCPT ); Tue, 5 Oct 2021 09:56:11 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FuEi+mPPn2oth/Kamq/Kkd157ORpujba315chUai0Z30llrxl91ae5K9ljSLaeBnizKvTEFI0EcRNE24p2VDfpgMlgQQt3o4rWnGxarGtkeMNmMzAFFlVH+osIdsoGSIgIoUm6OQp2GENX3hEBASVOsBw11tOETG+WIPuOS4ZlIgXP/SURvxD7V5XUQrhRrvqzjdYnofwNeOQWC0eEFtAbQCfBS2MPMqqqx//JcIxc7jtePcecmIgjyFIikQLww0ctOeiCmNZyG/G+7EiUXQBrQXWkmjpUfPeSgnkuLukULkHuPf69mAqhnjOcvWgS/VWfe3afLAy5NsZGPg3FNstw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=y/eEVjaEiLkJ7KuCf9W4wxE2tCnb3ptteKpeBmMPRXc=; b=KLzvnRXIhhWKcdoZB51c9abUGNPlek+4fzPvODZo1ZqB15fNw9gxLvHO+KSAZqo7d0B4TDk8J3ehqssCBO9PWa/EGNn9Wek69tknZM4iPZXbxSBklwlTWTwnRUqlVsoUuh20vbOvsPt3QjF7iV0Vmw9Q2l58Ya7G6zKrmLRe9MLqLh8Eq4vmq56VPp77fV7zuX8jwQmqroocu6jDYJc4L3oWP1U8OfY97v0mQiiNpyn5YZ3+RXcBiIWVRE7PE4M/ZjfTu27QR4GpJ18/3sE2yX1R9XAaP+au0q7ne2fWTZFwlc3oC/L05SFGDaObQ3ST6jXyJZPrKxXEa5pZDU4Ing== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silabs.com; dmarc=pass action=none header.from=silabs.com; dkim=pass header.d=silabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.onmicrosoft.com; s=selector2-silabs-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y/eEVjaEiLkJ7KuCf9W4wxE2tCnb3ptteKpeBmMPRXc=; b=cz361h7dthNgrpTRD70cSdqsJyMsKc5YLdjENDkD7ku+eeuqoy0LQPOT8DP8bS57Gv/VaV6+mqQlcHS50MW3CaHCOj4WINaj3htrgOvXk++SwaCLvtQUZ1zAJD3b0BwrSmmvL8euL1rYjEn+LqM86F4bRNy/n7wyOgaBGadRJAw= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=silabs.com; Received: from PH0PR11MB5657.namprd11.prod.outlook.com (2603:10b6:510:ee::19) by PH0PR11MB5642.namprd11.prod.outlook.com (2603:10b6:510:e5::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14; Tue, 5 Oct 2021 13:54:19 +0000 Received: from PH0PR11MB5657.namprd11.prod.outlook.com ([fe80::31cb:3b13:b0e8:d8f4]) by PH0PR11MB5657.namprd11.prod.outlook.com ([fe80::31cb:3b13:b0e8:d8f4%9]) with mapi id 15.20.4566.022; Tue, 5 Oct 2021 13:54:19 +0000 From: Jerome Pouiller To: linux-wireless@vger.kernel.org, netdev@vger.kernel.org, Kalle Valo Cc: devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, Greg Kroah-Hartman , "David S . Miller" , devicetree@vger.kernel.org, Rob Herring , linux-mmc@vger.kernel.org, =?utf-8?q?Pali?= =?utf-8?q?_Roh=C3=A1r?= , Ulf Hansson , =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= Subject: [PATCH v8 00/24] wfx: get out from the staging area Date: Tue, 5 Oct 2021 15:53:36 +0200 Message-Id: <20211005135400.788058-1-Jerome.Pouiller@silabs.com> X-Mailer: git-send-email 2.33.0 X-ClientProxiedBy: PR3P189CA0084.EURP189.PROD.OUTLOOK.COM (2603:10a6:102:b4::29) To PH0PR11MB5657.namprd11.prod.outlook.com (2603:10b6:510:ee::19) MIME-Version: 1.0 Received: from pc-42.silabs.com (37.71.187.125) by PR3P189CA0084.EURP189.PROD.OUTLOOK.COM (2603:10a6:102:b4::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14 via Frontend Transport; Tue, 5 Oct 2021 13:54:16 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 249956d3-dd40-47b7-9941-08d98807a070 X-MS-TrafficTypeDiagnostic: PH0PR11MB5642: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LfUfAAoMc2fAgF21QP8QHEVBefltp47iCl1ksLR12B7dnCZW/dWFPCRVBTpJzLX0bwKoknYhc1nIA/HxDKHpdNcZERn/fVBVBu/1JkJ0Q+YPXpzV59RNZ5JKoHbhAIcYCPrrtrn1sWdt4kZmprCNAb4s+l3UcilRan3Q0VfU1pdNwvzyT8gTMDrtSt6Bh2FanHVY+276aI75k3mi2XuvCoo6hv7X1q+ihHD88aVDnyIpueMqMa9rgTaGfXqomRjvtK7NN3Z/e58cIM9iHbzUikdFeVGDG5He7XkV+ywoBPjHumf4dwggzLZ52Aa8PYCBOidtnpMy4Hkq+MRKVAwLc4kQ1G/1Xfk3hIJMqheCRuPdJJIZmUYN1Zd+1sgomWXNKSj9TeQrl6BmJEx0XQHY7vMEXNJ/GuWz4nUhpHL18r6Az4aImz2ax6fPfPkTr/f2fl/oEM0ODGHD6SsQydtOTDX8OgfIpxY/Pm8qAFNCXN0zSAD8PL9o1k4uyY+f7QFFKOJbAXXL7zGvff4MARDu5VQLowHKtsYb+sdK6s1oe/4NHYi2+F/n95o1F3+pd0as/1kcNaT0o2mS97cm+P2GoSJdP8ATdQ1lJqLdeJKljvhIXFD3KLnzeG0n9U4rs0R058ArolBijoo7kbPzF/YRRI43op60pcLcCQYttFnKYDkEJinCqM1RT0Yngc3UQ5eTfnLHhoRjKnalPV+lFQi77xbFjiUiBVt4VovYnMkK5utZ0Mmj29UWGSJeqE9WBx7tc7B5jA92lhBUnxVvzjC7YEfQ2dqO/bCKQQ9IzEquLSBwjq36b1V0mICVz/IHdFd3jcHNe305zjEMdfpWw+VLvQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB5657.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(86362001)(5660300002)(26005)(30864003)(52116002)(7696005)(956004)(8676002)(2616005)(38100700002)(8936002)(38350700002)(4326008)(6666004)(186003)(7416002)(6916009)(66574015)(107886003)(83380400001)(36756003)(66476007)(66556008)(508600001)(2906002)(966005)(316002)(6486002)(1076003)(66946007)(54906003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?H/J7Tl3t2lr7dON0T4sM8UgTdqkK?= =?utf-8?q?NTpuUdMj67FVj82wrn35nwOksCnGlOdC0T+UrO8ZyLf2T3HdGZQ758IsGH7O8MDxg?= =?utf-8?q?c+t1IEPPt/ofIc09XrOgt9JVxpZPX4kEzzoI+ehmlUvIjMX/vFKs4uzgMOjs4xM+W?= =?utf-8?q?HcaxuvKe9yfC01V73qHguFeFkcng3MA1eVVLgYAtz+6pQ1V7x3YJKSuAaYUEVqztk?= =?utf-8?q?mV4QcXVCpMmN57a3tEFg6jUC50kr40S0g/jh0koDdyGu4LHCHbjoIFYHee6hQdZIy?= =?utf-8?q?wuCWKeSBZCfpxhIt/mo/bhsvEo6UavstMukOdeuq/Jhpxk9vC674imlJTrZ/4KPz/?= =?utf-8?q?mHcfdlkvicaT+4Z8URfPaftXI71nRsiEC2Cmjh2YW6OvM+scZHUt6dk4scxSfUwl1?= =?utf-8?q?/Tk7FJWL8G3j2p06/7BDOeo+UagoXl5osggEpTrXQmlgqjW+/a7Bpq+8v2yubXmEE?= =?utf-8?q?t11gIgpvetwkVJUp88IvrRV1p/sRpqbEkG+sL9ek28gVvP9Vrse4dDGrMZANGkFvd?= =?utf-8?q?y9rK+VsIMgr+8RzJ0L5KQEwxuuNoCRkKvdB8yqYc1dwr3f/h+Wa8ALE7Igjh+aKNR?= =?utf-8?q?RaVA9KJOagjKfdbDU7lxyXjyGKD2FHGeA1Bsba+W0x7iQ3jOcMPKRuXeU/lt9TXgI?= =?utf-8?q?uj9Vwk3CNr1+LEshWszLy/A/qrq+HSdIh2378DlZk/WvQzAsG2OzqbJoG/A9KEjDM?= =?utf-8?q?xNS8LiLT1jSsWYE/ngWNhFq/dJfI2zLB1QrAE5UctUZ5bHgb706YH/L2Q/xs5aqnY?= =?utf-8?q?AmG++ibDoTRkGVkQjkNkwuswXuMf8AvMTopbqlaxqa3KbLzcaEn9mQC3tyMFH2e9o?= =?utf-8?q?3TjlWXyQi7Smd/jae2Gw4QR5DjrRL8cr1uYC3BH4S/GiMFsCoBCTeEEtqHAhzFsNV?= =?utf-8?q?dBr1vDfxoHTGGVq+OAZbnuCs3iVWssqddSMCQG9LoNESazR6BtlxYFMXozEGj08VH?= =?utf-8?q?U3NnBV1tZs0+0IX1qIor6JxvqBvEz+S5STjvzTddPOppgiWEdHdOZGkEo2pBtU8BL?= =?utf-8?q?P0eyRC+AKc3hvHruwSIl+i7PVeYzQembQ1ev1nNGb+HKAihy6Ii16GLWqk94hFNWm?= =?utf-8?q?J3AvqkKuqT3g3rewNnYX9HKAayBrVNteDRO8KjSFTO2Mayj0qERuCiNrbdfn3BOVA?= =?utf-8?q?UKiEQEt0a7dieGM4WNVyPvCjTE+CJFPiFAPvrWsVZsSwDh6Q6OHBshLMnyTdYfHcY?= =?utf-8?q?HE7lszQPcdoqOPPgDdYOnE6zdThloLSRrgl1OHKkiGsGPuUJiwK+zrKW0ThV1q6Vi?= =?utf-8?q?BnfzY/LO28Oq/r3r?= X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: 249956d3-dd40-47b7-9941-08d98807a070 X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5657.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2021 13:54:19.0017 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 54dbd822-5231-4b20-944d-6f4abcd541fb X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9mF+nqZRFg2jDsa1iBGI992PQR26Kfcs2I3CdDY1f9q75BjhuTrg0cw/Bq4lfVtd0v+sVRLWSa6McVdK4jymVA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5642 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Jérôme Pouiller Hello, I think the wfx driver is now mature enough to be accepted in the drivers/net/wireless directory. The firmware is now a part of the linux-firmware repository since relase 20210315[1]. It had taken a bit of time because I have worked with the legal department to simplify the redistribution terms of the firmware. [1]: https://lore.kernel.org/linux-firmware/2833354.gXvVfaC4I7@pc-42/ As requested by Kalle[2], I send one file per patch. At the end, all the patches (or at least the patches 3 to 24) will be squashed (therefore, I didn't bother to write real commit messages). [2]: https://lore.kernel.org/lkml/87ft6p2n0h.fsf@codeaurora.org/ Here is a diagram of the global architecture that may help to understand the code: ,------------------------------------. | mac80211 | `------------------------------------' ,------------+-----------+-----------. | sta | | | | scan | | | | main | | | +------------+ data_tx | | | key | | data_rx | | hif_tx_mib | queue | | | hif_tx | | | | hif_rx | | | | hif_api_* | | | +------------+-----------+-----------+--------. | bh | fwio | +------------------------------------+--------+ | hwio | +---------------------------------------------+ | bus_sdio | | bus_spi | `---------------------------------------------' ,---------------------------------------------. | spi / sdio | `---------------------------------------------' Roughly, I have sent the files from the bottom to the top. v8: - Change the way the DT is handled. The user can now specify the name of the board (= chip + antenna) he use. It easier for board designers to add new entries. I plan to send a PR to linux-firmware to include PDS files of the developpement boards belong the firmware (I also plan to relocate these file into wfx/ instead of silabs/). (Kalle, Pali) - Prefix visible functions and structs with "wfx_". I mostly kept the code under 80 columns. (Kalle, Pali, Greg) - Remove support for force_ps_timeout for now. (Kalle) - Fix licenses of Makefile, Kconfig and hif_api*.h. (Kalle) - Do not mix and match endianess in struct hif_ind_startup. (Kalle) - Remove magic values. (Kalle) - Use IS_ALIGNED(). (BTW, PTR_IS_ALIGNED() does not exist?) (Kalle) - I have also noticed that some headers files did not declare all the struct they used. These issues remain (I hope they are not blockers): - I have currently no ideas how to improve/simplify the parsing PDS file. (Kalle) - We would like to relate the SDIO quirks into mmc/core/quirks.h, but the API to do that does not yet exist. (Ulf, Pali) v7: - Update location of mmc-pwrseq-simple.txt (Rob) v6: - Rebase on last staging-next (roughtly somewhere after the 5.15 merge window). So, this series include the patches from: https://lore.kernel.org/netdev/20210913130203.1903622-1-Jerome.Pouiller@silabs.com/ v5: - Add reference to the PR to linux-firmware in the cover letter - Rebase on last staging tree (that mainly include commit 6efed0a69794 "staging: wfx: fix possible panic with re-queued frames" and a few cosmetics changes) - Remove useless trailing spaces in DT binding (Rob) - Add a commit message in the patch 2 since I am not sure it will be squashed with the other (Rob) v4: - Rebase on last staging tree - Add 'additionalProperties: false' to the DT specification (I made that change blindly because I am able to reproduce Rob's error) (Rob) - Replace C++ comments with Ansi C comments (Kalle) - Check that existing Ansi C comments comply with net/ "compact" style - Drop one obsolete comment - Remove comments after '#endif' in header files - Remove macro redefinitions in hif_api_general.h (Kalle) - Replace compiletime_assert() with BUILD_BUG_ON_MSG() (Kalle) - Rename ieee80211_is_action_back() (Kalle) - Add a comment explaining how the PDS is sent to the device (Kalle) - Add a comment about case where CONFIG_MMC==m in the Makefile (Kalle) - Fix irrevelant comment about CONFIG_VMAP_STACK (Kalle) - Talk about the unreliable SDIO Vendor ID in the Kconfig help (Kalle) - Mention the firmware status in the cover letter (Kalle) - Fix misaligned function arguments in key.c v3: - dt-bindings: Rename config-file property (Rob) - dt-bindings: No additional properties are allowed (spi-max-frequency is already listed) (Rob) - dt-bindings: Remove references for mac-address properties (Rob) - Rebase on staging/staging-next v2: - dt-bindings: Improve device description and add link to the datasheet (Rob) - dt-bindings: Add blank lines between each DT property (Rob) - dt-bindings: Explicitly mention mac-address and local-mac-address and add references to ethernet-controller.yaml (Rob) - dt-bindings: "config-file" is not for development/debug (Rob) - dt-bindings: Remove description of "spi-max-frequency" (Rob) - dt-bindings: Use "folded scalar" syntax instead of escaping the colons - bus_sdio.c: A compatible node in the DT is now mandatory to probe the device. Also change documentation of dt-bindings accordingly (Pali, Ulf) - bus_sdio.c: Move SDIO IDs to sdio_ids.h (Pali) - bh.c: Import patch "staging: wfx: fix test on return value of gpiod_get_value()" (Nathan) - data_tx.c: Import patch "staging: wfx: fix use of uninitialized pointer" - sta.c: Import patch "staging: wfx: make a const array static, makes object smaller" (Colin) v1: - Drop the function name in the warning message (Kalle) - Replace goto by return in wfx_send_pdata_pds() (Kalle, Dan) - Improve error label in wfx_send_pdata_pds() (Kalle) Jérôme Pouiller (24): mmc: sdio: add SDIO IDs for Silabs WF200 chip dt-bindings: introduce silabs,wfx.yaml wfx: add Makefile/Kconfig wfx: add wfx.h wfx: add main.c/main.h wfx: add bus.h wfx: add bus_spi.c wfx: add bus_sdio.c wfx: add hwio.c/hwio.h wfx: add fwio.c/fwio.h wfx: add bh.c/bh.h wfx: add hif_api_*.h wfx: add hif_tx*.c/hif_tx*.h wfx: add key.c/key.h wfx: add hif_rx.c/hif_rx.h wfx: add data_rx.c/data_rx.h wfx: add queue.c/queue.h wfx: add data_tx.c/data_tx.h wfx: add sta.c/sta.h wfx: add scan.c/scan.h wfx: add debug.c/debug.h wfx: add traces.h wfx: remove from the staging area wfx: get out from the staging area .../bindings/net/wireless/silabs,wfx.yaml | 64 ++-- MAINTAINERS | 3 +- drivers/net/wireless/Kconfig | 1 + drivers/net/wireless/Makefile | 1 + drivers/net/wireless/silabs/Kconfig | 18 + drivers/net/wireless/silabs/Makefile | 3 + .../wireless/silabs}/wfx/Kconfig | 5 + .../wireless/silabs}/wfx/Makefile | 3 +- .../{staging => net/wireless/silabs}/wfx/bh.c | 31 +- .../{staging => net/wireless/silabs}/wfx/bh.h | 1 + .../wireless/silabs}/wfx/bus.h | 2 +- .../wireless/silabs}/wfx/bus_sdio.c | 91 +++-- .../wireless/silabs}/wfx/bus_spi.c | 68 +++- .../wireless/silabs}/wfx/data_rx.c | 2 +- .../wireless/silabs}/wfx/data_rx.h | 4 +- .../wireless/silabs}/wfx/data_tx.c | 86 ++--- .../wireless/silabs}/wfx/data_tx.h | 14 +- .../wireless/silabs}/wfx/debug.c | 41 +-- .../wireless/silabs}/wfx/debug.h | 6 +- .../wireless/silabs}/wfx/fwio.c | 78 ++-- .../wireless/silabs}/wfx/fwio.h | 0 .../wireless/silabs}/wfx/hif_api_cmd.h | 144 ++++---- .../wireless/silabs}/wfx/hif_api_general.h | 60 ++-- .../wireless/silabs}/wfx/hif_api_mib.h | 68 ++-- .../wireless/silabs}/wfx/hif_rx.c | 142 ++++---- .../wireless/silabs}/wfx/hif_rx.h | 0 .../wireless/silabs}/wfx/hif_tx.c | 152 ++++---- drivers/net/wireless/silabs/wfx/hif_tx.h | 64 ++++ drivers/net/wireless/silabs/wfx/hif_tx_mib.c | 333 ++++++++++++++++++ drivers/net/wireless/silabs/wfx/hif_tx_mib.h | 55 +++ .../wireless/silabs}/wfx/hwio.c | 156 ++++---- .../wireless/silabs}/wfx/hwio.h | 36 +- .../wireless/silabs}/wfx/key.c | 24 +- .../wireless/silabs}/wfx/key.h | 0 .../wireless/silabs}/wfx/main.c | 58 ++- .../wireless/silabs}/wfx/main.h | 5 +- .../wireless/silabs}/wfx/queue.c | 22 +- .../wireless/silabs}/wfx/queue.h | 2 +- .../wireless/silabs}/wfx/scan.c | 19 +- .../wireless/silabs}/wfx/scan.h | 0 .../wireless/silabs}/wfx/sta.c | 111 +++--- .../wireless/silabs}/wfx/sta.h | 0 .../wireless/silabs}/wfx/traces.h | 10 +- .../wireless/silabs}/wfx/wfx.h | 13 +- drivers/staging/Kconfig | 1 - drivers/staging/Makefile | 1 - drivers/staging/wfx/TODO | 6 - drivers/staging/wfx/hif_tx.h | 60 ---- drivers/staging/wfx/hif_tx_mib.c | 324 ----------------- drivers/staging/wfx/hif_tx_mib.h | 49 --- include/linux/mmc/sdio_ids.h | 7 + 51 files changed, 1262 insertions(+), 1182 deletions(-) rename {drivers/staging/wfx/Documentation => Documentation}/devicetree/bindings/net/wireless/silabs,wfx.yaml (68%) create mode 100644 drivers/net/wireless/silabs/Kconfig create mode 100644 drivers/net/wireless/silabs/Makefile rename drivers/{staging => net/wireless/silabs}/wfx/Kconfig (60%) rename drivers/{staging => net/wireless/silabs}/wfx/Makefile (76%) rename drivers/{staging => net/wireless/silabs}/wfx/bh.c (90%) rename drivers/{staging => net/wireless/silabs}/wfx/bh.h (96%) rename drivers/{staging => net/wireless/silabs}/wfx/bus.h (97%) rename drivers/{staging => net/wireless/silabs}/wfx/bus_sdio.c (73%) rename drivers/{staging => net/wireless/silabs}/wfx/bus_spi.c (77%) rename drivers/{staging => net/wireless/silabs}/wfx/data_rx.c (97%) rename drivers/{staging => net/wireless/silabs}/wfx/data_rx.h (77%) rename drivers/{staging => net/wireless/silabs}/wfx/data_tx.c (87%) rename drivers/{staging => net/wireless/silabs}/wfx/data_tx.h (76%) rename drivers/{staging => net/wireless/silabs}/wfx/debug.c (89%) rename drivers/{staging => net/wireless/silabs}/wfx/debug.h (65%) rename drivers/{staging => net/wireless/silabs}/wfx/fwio.c (83%) rename drivers/{staging => net/wireless/silabs}/wfx/fwio.h (100%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_cmd.h (81%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_general.h (88%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_mib.h (86%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_rx.c (69%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_rx.h (100%) rename drivers/{staging => net/wireless/silabs}/wfx/hif_tx.c (72%) create mode 100644 drivers/net/wireless/silabs/wfx/hif_tx.h create mode 100644 drivers/net/wireless/silabs/wfx/hif_tx_mib.c create mode 100644 drivers/net/wireless/silabs/wfx/hif_tx_mib.h rename drivers/{staging => net/wireless/silabs}/wfx/hwio.c (51%) rename drivers/{staging => net/wireless/silabs}/wfx/hwio.h (62%) rename drivers/{staging => net/wireless/silabs}/wfx/key.c (90%) rename drivers/{staging => net/wireless/silabs}/wfx/key.h (100%) rename drivers/{staging => net/wireless/silabs}/wfx/main.c (93%) rename drivers/{staging => net/wireless/silabs}/wfx/main.h (92%) rename drivers/{staging => net/wireless/silabs}/wfx/queue.c (95%) rename drivers/{staging => net/wireless/silabs}/wfx/queue.h (95%) rename drivers/{staging => net/wireless/silabs}/wfx/scan.c (88%) rename drivers/{staging => net/wireless/silabs}/wfx/scan.h (100%) rename drivers/{staging => net/wireless/silabs}/wfx/sta.c (88%) rename drivers/{staging => net/wireless/silabs}/wfx/sta.h (100%) rename drivers/{staging => net/wireless/silabs}/wfx/traces.h (97%) rename drivers/{staging => net/wireless/silabs}/wfx/wfx.h (93%) delete mode 100644 drivers/staging/wfx/TODO delete mode 100644 drivers/staging/wfx/hif_tx.h delete mode 100644 drivers/staging/wfx/hif_tx_mib.c delete mode 100644 drivers/staging/wfx/hif_tx_mib.h