10 Replies Latest reply on Jan 28, 2020 2:09 AM by GauravS_31

    11R (Fast Roaming) support on CYW43455

    maku_2263101

      Hi,

       

      Does CYW43455 module supports 11R (Fast Roaming) feature ?

      If supported please share us the steps to bring up this feature.

       

      vinayak,

      Can you please help us on this matter.

        • 1. Re: 11R (Fast Roaming) support on CYW43455
          maku_2263101

          Hi All,

           

          FT Roaming with CYW43455 is failing with "Invalid PMKID" error.

          Is there any config or setup steps need to follow for 11r Roaming ?

          Please share us the steps.

           

          Let us know if you need any more information.

           

          Below are few observations:

          1. We have compiled supplicant with Enabling "CONFIG_IEEE80211R" Config Option.

          2. CYW43455 is trying to roam with FT Authentication, but AP is rejecting the Authentication with status code 53 (Invalid PMKID).

          CYW43455_FT_Roaming_Failure.png

          3. But able to perform FT roaming successfully with IPhone.

          Iphone_FT_Roaming_Success.png

           

          Below are the Software details:

          Loading Modules Steps:

               insmod compat.ko

               insmod cfg80211.ko

               insmod brcmutil.ko

               insmod brcmfmac.ko

           

          Compiling and Running wpa_supplicant:

               Compiled wpa_supplicant with Enabling "CONFIG_IEEE80211R" Config Option.

               command to run wpa_supplicant:

                    wpa_supplicant -iwlan0 -B -Dnl80211 -c /etc/wpa_supplicant.conf

               wpa_supplicant.conf:

                    ctrl_interface=/var/run/wpa_supplicant

                    ctrl_interface_group=0

                    update_config=1

                    ap_scan=1

                    fast_reauth=1

                    network={

                         ssid="sample_ssid"

                         proactive_key_caching=1

                         scan_ssid=1

                         key_mgmt=FT-PSK

                         psk="sample_psk"

                    }

           

          Drivers Loading log:

               Loading modules backported from Linux version v4.14.52-manda-RTM-0-g897c6ce

               Backport generated by backports.git v4.14-rc2-1-70-g694b78f

               brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43455-sdio.bin for chip 0x004345(17221) rev 0x000006

               usbcore: registered new interface driver brcmfmac

               brcmfmac: brcmf_c_preinit_dcmds: Murata Customized Version: imx-rocko-manda_r1.0;

               brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: May  2 2019 02:46:17 version 7.45.189 (r714228 CY) FWID 01-e1db26e2

           

          wl ver:

               1.21 RC0.0

               wl0: May  2 2019 02:46:17 version 7.45.189 (r714228 CY) FWID 01-e1db26e2

           

          wpa_supplicant version:

               wpa_supplicant v2.6

          • 2. Re: 11R (Fast Roaming) support on CYW43455
            maku_2263101

            Hi All,

             

            Attaching Cisco Controller Logs.

            Cisco Controller Log:

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 Doing preauth for this client over the Air

            *apfMsConnTask_0: Dec 24 06:54:51.463: AP MAC address        Controller

            *apfMsConnTask_0: Dec 24 06:54:51.463: ------------------    ---------------

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 Doing local roaming for destination address 00:08:2f:32:cd:77

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 Got 1 AKMs in RSNIE

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 RSNIE AKM matches with PMK cache entry :0x4

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 ERR: RSN client sent MDIE in FT auth request but no RSN!

            *apfMsConnTask_0: Dec 24 06:54:51.463: b8:d7:af:58:61:34 Bogus FT auth request! StatusCode 53

            • 3. Re: 11R (Fast Roaming) support on CYW43455
              maku_2263101

              Hi All,

               

              On further debugging we have below observations related to the issue.

              wpa_supplicant log shows below error message after initial Connection:

              • nl80211: update_ft_ies failed err=-95 (Operation not supported)

              attaching the log for your reference.

               

              As per wpa_supplicant documentation this function is needed for driver that support IEEE 802.11r.

              But brcmfmac driver not implemented brcmf_cfg80211_ops->update_ft_ies() function.

              So looks like we need to have additional changes in brcmfmac driver to support 11R functionality.

              Please provide us the necessary patches for 11R functionality.

              • 4. Re: 11R (Fast Roaming) support on CYW43455
                GauravS_31

                The relevant patch files to enable fast roaming are listed in the README document in the driver release package. They are as follows:

                 

                Fast roaming support (0014, 0028, 0051-0054, 0098-0099, 0103)

                 

                You can check the cypress-patch-v4.14.77-2019_1031 folder in the FMAC driver for the numbered patch files. I have attached the README document for your reference.

                1 of 1 people found this helpful
                • 5. Re: 11R (Fast Roaming) support on CYW43455
                  maku_2263101

                  Hi Gaurav,

                   

                  Thank you for your response.

                   

                  As suggested by you we have applyied patches from cypress-patch-v4.14.77-2019_1031 but still having the same issue.

                  "AP is rejecting the Authentication with status code 53 (Invalid PMKID)."

                   

                  Also as mentioned earlier we are still seeing following error from supplicant log:

                  "nl80211: update_ft_ies failed err=-95 (Operation not supported)"

                   

                  Do we need to enable/set any configuration for 11R functionality?

                   

                  Currently we have enable "CONFIG_IEEE80211R" config option in wpa_supplicant and using "roamoff=0" during module loading.

                  Is this right ?

                   

                   

                  Below are the SW version details.

                  wl ver:

                       1.21 RC0.0

                       wl0: Oct 23 2019 23:33:06 version 7.45.197 (r723044 CY) FWID 01-dfced692

                  Module loading log:

                       Loading modules backported from Linux version v4.14.52-manda-RTM-0-g897c6ce

                       Backport generated by backports.git v4.14-rc2-1-70-g694b78f

                       brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43455-sdio.bin for chip 0x004345(17221) rev 0x000006

                       usbcore: registered new interface driver brcmfmac

                       brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Oct 23 2019 23:33:06 version 7.45.197 (r723044 CY) FWID 01-dfced692

                  • 6. Re: 11R (Fast Roaming) support on CYW43455
                    GauravS_31

                    It appears that the PMK is not being set. The patches 0008,0017-0021,0023,0035,0036,0037 which include wpa_supplicant patches would also be required. You can find the patch files in cypress-hostap_2_6-2019_0502 folder. The CONFIG_IEEE80211R should be enabled and it will be checked in supplicant patch 0037 used for adding PMK cache and set PMK to the driver for 4-way handshake offload. The roamoff=0 should enable internal roaming.

                    1 of 1 people found this helpful
                    • 7. Re: 11R (Fast Roaming) support on CYW43455
                      maku_2263101

                      Hi Gaurav,

                       

                      Thank you for your response.

                       

                      After applying the supplicant patches able to perform 11r FT roaming successfully.

                       

                      Currently we are using roamoff=0 during module loading so roaming decision is done by firmware (internal roaming).

                      Is it possible to offload FT roaming to Driver/Supplicant using roamoff=1 ?

                       

                      When we use roamoff=1  configuration FT Roaming is not happening as during roaming Station(CYW43455) sending normal Authentication Request instead of FT Authentication Request.

                       

                      Are there any patches or steps available to support FT Roaming using roamoff=1 configuration ?

                      • 8. Re: 11R (Fast Roaming) support on CYW43455
                        GauravS_31

                        Is there a specific reason to use external supplicant for roaming? Memory on the host processor would be saved by letting the WLAN firmware take care of roaming.

                        • 9. Re: 11R (Fast Roaming) support on CYW43455
                          maku_2263101

                          Hi Gaurav,

                           

                          We would like to have a control over the roaming decision.

                          Is there any configuration that can do selection of bssid to connect in Driver and the firmware will try to roam to that specific bssid without disconnect  or fresh connection [should perform FT Roaming].

                           

                          So can we offload FT Roaming to Driver or Supplicant ?

                          Looks like driver need to have following implementations to support FT roaming using external supplicant.

                          • cfg80211_ops->update_ft_ies()
                          • cfg80211_ops->auth()

                          Do we have any patches for this?

                           

                          Is there any other simple way that,

                               Roam Decision is controlled Externally but FT roaming is done by Internal supplicant by sending any event to the firmware?

                          • 10. Re: 11R (Fast Roaming) support on CYW43455
                            GauravS_31

                            We have only tested internal roaming with roamoff=0. We do not support roaming from host. The WLAN firmware will take care of candidate BSSID selection, roam scan and process for reassoc. Externally from the driver, the roam trigger RSSI threshold and the roam candidate qualification delta can be controlled using WL_ROAM_TRIGGER_LEVEL and WL_ROAM_DELTA. With roamoff=1, firmware roaming will be disabled.

                            1 of 1 people found this helpful