So, how do we get these in the rpi kernel source? I was testing this using a firmware from Infineon's repository which is a rev newer than what is in the RPi image. I will try it again tonight, but with the firmware which is shipped in the current, Bookworm RPi image. It is a rev back from the version I was using here to test this. It still does have external auth, so it may work as well. I'll let you know. Keith On Thu, Dec 19, 2024 at 7:43 AM James Prestwood <prestwoj@xxxxxxxxx> wrote: > > Hi Keith, > > On 12/19/24 5:38 AM, KeithG wrote: > > On Thu, Dec 19, 2024 at 6:46 AM James Prestwood <prestwoj@xxxxxxxxx> wrote: > >> Hi Keith, > >> > >> On 12/18/24 5:46 PM, KeithG wrote: > >>> On Wed, Dec 18, 2024 at 8:10 AM KeithG <ys3al35l@xxxxxxxxx> wrote: > >>>> On Wed, Dec 18, 2024 at 4:21 AM Arend van Spriel > >>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>> On 12/18/2024 1:21 AM, KeithG wrote: > >>>>>> On Tue, Dec 17, 2024 at 7:47 AM Arend van Spriel > >>>>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>>>> > >>>>>>> On 12/17/2024 1:13 AM, KeithG wrote: > >>>>>>>> On Mon, Dec 16, 2024 at 1:50 PM Arend van Spriel > >>>>>>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>>>>>> On 12/16/2024 1:21 PM, KeithG wrote: > >>>>>>>>>> On Mon, Dec 16, 2024 at 3:47 AM Arend van Spriel > >>>>>>>>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>>>>>>>> On 12/16/2024 10:43 AM, Arend van Spriel wrote: > >>>>>>>>>>>> On 12/16/2024 1:17 AM, KeithG wrote: > >>>>>>>>>>>>> On Sun, Dec 15, 2024 at 11:33 AM Arend Van Spriel > >>>>>>>>>>>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>>>>>>>>>>> On December 15, 2024 5:08:12 PM KeithG <ys3al35l@xxxxxxxxx> wrote: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>> On Sun, Dec 15, 2024 at 6:12 AM Arend van Spriel > >>>>>>>>>>>>>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>>>>>>>>>>>>> On 12/14/2024 2:34 PM, KeithG wrote: > >>>>>>>>>>>>>>>>> Arend, > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> I looked through the info where I got the latest firmware: > >>>>>>>>>>>>>>>>> https://community.infineon.com/t5/Wi-Fi-Bluetooth-for-Linux/Wi-Fi- > >>>>>>>>>>>>>>>>> A-class-Linux-Driver-release-FMAC-2024-11-21-Documents/td-p/905045 > >>>>>>>>>>>>>>>>> https://community.infineon.com/t5/AIROC-Wi-Fi-and-Wi-Fi-Bluetooth/ > >>>>>>>>>>>>>>>>> Cypress-Linux-WiFi-Driver-Release-FMAC-2024-11-21/td-p/902888 > >>>>>>>>>>>>>>>>> and did not find anything, but I really do not know what I am > >>>>>>>>>>>>>>>>> looking for. > >>>>>>>>>>>>>>>> I think I had a bit more luck and maybe found the needle. I sent out > >>>>>>>>>>>>>>>> another RFT patch which hopefully gets rid of the BCME_BADLEN error. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Regards, > >>>>>>>>>>>>>>>> Arend > >>>>>>>>>>>>>>> Arend, > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Can you send me a link to that patch? I want to try it. > >>>>>>>>>>>>>> Hmm. I explicitly sent it to you, but here is a link to patchwork: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> https://patchwork.kernel.org/project/linux-wireless/ > >>>>>>>>>>>>>> patch/20241215120401.238320-1-arend.vanspriel@xxxxxxxxxxxx/ > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> You can apply it on top of the other 3 patches. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Regards, > >>>>>>>>>>>>>> Arend > >>>>>>>>>>>>>> > >>>>>>>>>>>>> Thanks! I got it. > >>>>>>>>>>>>> I am building now and have tried to apply what I think are the correct > >>>>>>>>>>>>> patches. They do not apply cleanly and I had to hand edit things. My > >>>>>>>>>>>>> guess is I messed something up. > >>>>>>>>>>>>> I will see what happens when I reboot. It'll take a few hours to build > >>>>>>>>>>>>> on my Pi4 then for me to install it on the 3b+ to test. > >>>>>>>>>>>>> > >>>>>>>>>>>>> I hope I understand which are the '3 other' patches. > >>>>>>>>>>>>> > >>>>>>>>>>>>> This is the one I got from your link: > >>>>>>>>>>>>> RFT-brcmfmac-Fix-structure-size-for-WPA3-external-SAE.diff > >>>>>>>>>>>>> > >>>>>>>>>>>>> These are what I understand are the '3 other patches' > >>>>>>>>>>>>> RFT-v2-1-3-wifi-brcmfmac-support-per-vendor-cfg80211-callbacks-and- > >>>>>>>>>>>>> firmware-events.patch.diff > >>>>>>>>>>>>> RFT-v2-2-3-wifi-brcmfmac-make-per-vendor-event-map-const.patch.diff > >>>>>>>>>>>>> RFT-v2-3-3-wifi-brcmfmac-cyw-support-external-SAE-authentication-in- > >>>>>>>>>>>>> station-mode.patch.diff > >>>>>>>>>>>>> > >>>>>>>>>>>>> If they are not correct could you send me links to them and I'll try > >>>>>>>>>>>>> again. > >>>>>>>>>>>> You got it right. Kuddos. > >>>>>>>>>>> Ignored my spelling checker, but apparently it should be "kudos". > >>>>>>>>>>> Another lesson learned today. > >>>>>>>>>>> > >>>>>>>>>>> Regards, > >>>>>>>>>>> Arend > >>>>>>>>>> Arend, > >>>>>>>>>> > >>>>>>>>>> Thanks for the confirmation. My attempt at a hand edit to apply the > >>>>>>>>>> rejected portions resulted in a failed build with the current RPiOS > >>>>>>>>>> kernel in the git repo: > >>>>>>>>>> # uname -a > >>>>>>>>>> Linux jackrune 6.6.64-v8+ #6 SMP PREEMPT Sun Dec 15 23:55:30 CST 2024 > >>>>>>>>>> aarch64 GNU/Linux > >>>>>>>>>> > >>>>>>>>>> When I try to apply them, I get this: > >>>>>>>>>> $ patch -Np1 -i > >>>>>>>>>> RFT-v2-1-3-wifi-brcmfmac-support-per-vendor-cfg80211-callbacks-and-firmware-events.patch.diff > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > >>>>>>>>>> Hunk #1 FAILED at 6752. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c > >>>>>>>>>> Hunk #1 succeeded at 524 (offset 33 lines). > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c > >>>>>>>>>> Hunk #1 FAILED at 1359. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c > >>>>>>>>>> Hunk #1 succeeded at 74 (offset -1 lines). > >>>>>>>>>> Hunk #2 succeeded at 336 (offset -70 lines). > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.h > >>>>>>>>>> Hunk #1 FAILED at 15. > >>>>>>>>>> Hunk #2 succeeded at 47 with fuzz 1 (offset -9 lines). > >>>>>>>>>> 1 out of 2 hunks FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.h.rej > >>>>>>>>>> $ patch -Np1 -i RFT-v2- > >>>>>>>>>> RFT-v2-1-3-wifi-brcmfmac-support-per-vendor-cfg80211-callbacks-and-firmware-events.patch.diff > >>>>>>>>>> RFT-v2-2-3-wifi-brcmfmac-make-per-vendor-event-map-const.patch.diff > >>>>>>>>>> RFT-v2-3-3-wifi-brcmfmac-cyw-support-external-SAE-authentication-in-station-mode.patch.diff > >>>>>>>>>> $ patch -Np1 -i > >>>>>>>>>> RFT-v2-2-3-wifi-brcmfmac-make-per-vendor-event-map-const.patch.diff > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.h > >>>>>>>>>> Hunk #1 FAILED at 337. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.h.rej > >>>>>>>>>> $ patch -Np1 -i > >>>>>>>>>> RFT-v2-3-3-wifi-brcmfmac-cyw-support-external-SAE-authentication-in-station-mode.patch.diff > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > >>>>>>>>>> Hunk #1 succeeded at 75 (offset 1 line). > >>>>>>>>>> Hunk #2 FAILED at 1940. > >>>>>>>>>> Hunk #3 FAILED at 2158. > >>>>>>>>>> Hunk #4 FAILED at 2216. > >>>>>>>>>> Hunk #5 succeeded at 5522 (offset 22 lines). > >>>>>>>>>> Hunk #6 succeeded at 5697 (offset 90 lines). > >>>>>>>>>> Hunk #7 succeeded at 6126 (offset 125 lines). > >>>>>>>>>> Hunk #8 succeeded at 7596 with fuzz 1 (offset 255 lines). > >>>>>>>>>> Hunk #9 FAILED at 7647. > >>>>>>>>>> 4 out of 9 hunks FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h > >>>>>>>>>> Hunk #3 succeeded at 243 (offset 15 lines). > >>>>>>>>>> Hunk #4 FAILED at 244. > >>>>>>>>>> Hunk #5 succeeded at 507 (offset 18 lines). > >>>>>>>>>> 1 out of 5 hunks FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/core.c > >>>>>>>>>> Hunk #1 FAILED at 8. > >>>>>>>>>> Hunk #2 FAILED at 39. > >>>>>>>>>> Hunk #3 FAILED at 49. > >>>>>>>>>> 3 out of 3 hunks FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/core.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/fwil_types.h > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c > >>>>>>>>>> Hunk #1 FAILED at 42. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.h > >>>>>>>>>> Hunk #1 succeeded at 32 with fuzz 2 (offset 1 line). > >>>>>>>>>> Hunk #2 succeeded at 60 with fuzz 1 (offset 2 lines). > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c > >>>>>>>>>> Hunk #1 FAILED at 450. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.h > >>>>>>>>>> Hunk #1 FAILED at 94. > >>>>>>>>>> 1 out of 1 hunk FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.h.rej > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.h > >>>>>>>>>> Hunk #1 FAILED at 15. > >>>>>>>>>> Hunk #2 succeeded at 47 with fuzz 1 (offset -11 lines). > >>>>>>>>>> 1 out of 2 hunks FAILED -- saving rejects to file > >>>>>>>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.h.r > >>>>>>>>>> $ patch -Np1 -i RFT-brcmfmac-Fix-structure-size-for-WPA3-external-SAE.diff > >>>>>>>>>> patching file drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/fwil_types.h > >>>>>>>>>> > >>>>>>>>>> Is there another missing patch? > >>>>>>>>>> > >>>>>>>>>> The kernel for the RPi is at this commit: > >>>>>>>>>> commit 80533a952218696c0ef1b346bab50dc401e6b74c (HEAD -> rpi-6.6.y, > >>>>>>>>>> origin/rpi-6.6.y, origin/HEAD) > >>>>>>> So what repository does origin refer to. Can you share the URL? > >>>>>>> > >>>>>>> I will check if I posted any patches between 6.6 and 6.10+ Get back to > >>>>>>> this later o > >>>>>>> > >>>>>>> Regards, > >>>>>>> Arend > >>>>>> Arend, > >>>>>> > >>>>>> I am using the RaspberryPi repo: > >>>>>> https://github.com/raspberrypi/linux > >>>>> I was afraid you would say that. So we need to determine what brcmfmac > >>>>> patches are in there compared to upstream kernel. So checking the code I > >>>>> think you should apply only the "Fix-structure-size" patch to > >>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h. Let me > >>>>> know if that works for you. > >>>>> > >>>>> Gr. AvS > >>>> Arend, > >>>> > >>>> That patch applied to the file in the folder you suggested. I am > >>>> building a kernel now and will see any changes this evening. Thanks > >>>> for the help. > >>>> > >>>> Regards, > >>>> > >>>> Keith > >>> Arend, > >>> > >>> Thanks for the guidance and help. > >>> > >>> I tried with the patched kernel and was unable to connect. The 2 > >>> attached files are the log with brcmfmac debugging and iwd debugging > >>> turned o. and the other is an iwmon capture of an attempt to connect. > >>> This time, though, I get no IP address at all. Just an error out when > >>> I try to connect using iwctl. I get: > >>> > >>> [iwd]# station wlan0 connect deskSAE > >>> Type the network passphrase for deskSAE psk. > >>> Passphrase: ********* > >>> Operation failed > >>> NetworkConfigurationEnabled: enabled > >>> StateDirectory: /var/lib/iwd > >>> Version: 3.1 > >>> This is with kernel: > >>> Linux jackrune 6.6.66-v8+ #7 SMP PREEMPT Wed Dec 18 10:18:01 CST 2024 > >>> aarch64 GNU/Linux > >>> and this firmware: > >>> Dec 18 19:37:08 jackrune kernel: brcmfmac: brcmf_fw_alloc_request: > >>> using brcm/brcmfmac43455-sdio for chip BCM4345/6 > >>> Dec 18 19:37:08 jackrune kernel: usbcore: registered new interface > >>> driver brcmfmac > >>> Dec 18 19:37:09 jackrune kernel: brcmfmac: brcmf_c_process_txcap_blob: > >>> no txcap_blob available (err=-2) > >>> Dec 18 19:37:09 jackrune kernel: brcmfmac: brcmf_c_preinit_dcmds: > >>> Firmware: BCM4345/6 wl0: Oct 28 2024 23:27:00 version 7.45.286 > >>> (be70ab3 CY) FWID 01-95efe7fa > >> Even closer this time. I've just sent a patch to the IWD mailing list. > >> Please try that along with Arend's kernel patch. > >> > >> Thanks, > >> > >> James > >> > >>> Keith > > James, > > > > It worked. I built iwd then tried to connect via iwctl and it > > connected to a WPA3 AP. I got an IP and I can ping the AP from the > > RPi.! It is a first! Woot Woot! > > > > [iwd]# station wlan0 connect deskSAE > > Available networks > > -------------------------------------------------------------------------------- > > Network name Security Signal > > -------------------------------------------------------------------------------- > > deskSAE psk **** > > > > Type the network passphrase for deskSAE psk. > > Passphrase: ********* > > > > When I go to connman, it shows connected and I can ping. > > > > (clear out configs and reboot) > > When I tried from connmanctl it also connects! Seems with this patch > > to iwd and Arend's patch to the driver that WPA3 now works with RPis > > > > I had to apply Arend's patch to the 6.6.y source which has the > > brcm80211 structured a bit differently and the file to patch is in a > > different folder. the patch, corrected for 6.6.y, is attached. > > Great! That's good to hear. It took a while but glad its finally > working. We'll get that patch to IWD upstreamed, or at least some > version of it. And thanks Arend for providing the support on the kernel > side of things. > > Thanks, > > James > > > > > Keith