# 软件

Source: [https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html)

下表列出了具有 ath11k 驱动程序的软件组件的源代码位置：

| 组件 | 源代码位置 |
| --- | --- |
| mac80211 | net/mac80211 |
| ath11k 驱动程序 | <ul class="ul" id="bvc1569159747557__ul_jt5_z41_mcc_navyanka_08-22-24-1616-29-903"><br>                                <li class="li"><span class="ph filepath">drivers/net/wireless/ath/ath11k</span></li><br><br>                                <li class="li"><a href="https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/tree/drivers/net/wireless/ath/ath11k" target="_blank" class="xref cursorpointer" onclick="Window.BookmapComponent.navigateExternalFile('https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/tree/drivers/net/wireless/ath/ath11k')">https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/tree/drivers/net/wireless/ath/ath11k</a></li><br><br>                            </ul> |
| wpa\_supplicant | source: SRC\_URI = "git://w1.fi/hostap.git;protocol=https;branch=main" |
| Supplicant 配置文件 | sources/mdm-init/upstream |

有关 ath11k 的详细信息，参见：
- ath11k： [https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/](https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/)
- mac80211： [https://wireless.wiki.kernel.org/en/developers/documentation/mac80211](https://wireless.wiki.kernel.org/en/developers/documentation/mac80211)
- cfg80211： [https://wireless.wiki.kernel.org/en/developers/documentation/cfg80211](https://wireless.wiki.kernel.org/en/developers/documentation/cfg80211)

## CLD 驱动程序

Source: [https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html)

默认情况下，Qualcomm Linux 针对所有芯片组通过 **ath11k WLAN 驱动程序** 启用 WLAN 功能。但是，在 **RB3 Gen 2** 中，您可以选择使用 **Convergence Linux 驱动程序 (CLD)**，其可提供增值功能，例如 **Wi-Fi Direct 模式** 和 **4K QAM**。

下表列出了具有 CLD 驱动程序的软件组件的源代码位置：

| 组件 | 源代码位置 |
| --- | --- |
| Wi-Fi 子系统平台驱动程序 (icnss) | sources/wlan/platform/ |
| Qualcomm Wi-Fi host 驱动程序 | <ul class="ul" id="software-cld-driver__ul_ypp_kkc_mcc_navyanka_08-22-24-2217-37-642"><br>                                        <li class="li"><span class="ph filepath">sources/wlan/qcacld-3.0</span></li><br><br>                                        <li class="li"><span class="ph filepath">sources/wlan/qca-wifi-host-cmn</span></li><br><br>                                    </ul> |
| wpa\_supplicant | sources/wlan/wpa\_supplicant\_8 |
| Supplicant 配置文件 | sources/mdm-init/wlan\_qcm6490/ |

要调试与 CLD 驱动程序相关的任何问题，请参见 [CLD 驱动程序的日志](https://docs.qualcomm.com/doc/80-70015-14SC/topic/report_a_w_fi_issue_to_qualcomm.html#debug-cld-driver)。

### 使用 CLD 驱动程序在软件中设置 WLAN MAC 地址

Source: [https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html)

### About this task

请考虑有关 WLAN MAC 地址的以下几点：

- 默认情况下，出厂时将 WLAN MAC 地址写入到网卡的 OTP 内存中。
- 如果需要，您可以按照以下步骤修改 MAC 地址。您设置的 MAC 地址将一直保留到重新启动或下一次重启。它优先于存储在 OTP 内存中的出厂设置的 MAC 地址。
- 如果没有出厂设置的 MAC 地址可用，则软件会在每个启动周期内生成一个随机 MAC 地址。

在开始之前，请确保设备已通过 UART 连接到主机，如 [连接到 UART shell](https://docs.qualcomm.com/bundle/publicresource/topics/80-70015-254/how_to.html#connect-to-a-uart-shell) 中所述。

要使用 CLD 驱动程序在软件中设置唯一的 WLAN MAC 地址，请在调试 UART 串行控制台中执行以下步骤：

### Procedure

1. 通过运行以下命令允许读/写访问：
                
mount -o rw,remount /Copy to clipboard
2. 通过运行以下命令，在 /lib/firmware/wlan/qca\_cld/ 目录中创建 wlan\_mac.bin 文件：
                
cd /lib/firmware/wlan/qca_cld/Copy to clipboard

Note: 没有默认 wlan\_mac.bin 文件。
3. 在文本编辑器中打开 wlan\_mac.bin 文件。
                
例如，要在 VI 编辑器中打开 wlan\_mac.bin 文件，可运行以下命令：

        vi /lib/firmware/wlan/qca_cld/wlan_mac.binCopy to clipboard
4. 采用以下格式在 wlan\_mac.bin 文件中输入 MAC 地址：
                
Intf0MacAddress=<IP_0>
                            Intf1MacAddress=<IP_1>
                            Intf2MacAddress=<IP_2>
                            Intf3MacAddress=<IP_3>
                            ENDCopy to clipboard

例如，

        Intf0MacAddress=000AF58989FF
                                Intf1MacAddress=000AF58989FE
                                Intf2MacAddress=000AF58989FD
                                Intf3MacAddress=000AF58989FC
                                ENDCopy to clipboard
5. 保存 wlan\_mac.bin 文件。
6. 通过运行以下命令获取 wlan\_mac.bin 文件的读/写/可执行权限：
                
chmod 777 wlan_mac.binCopy to clipboard

![](data:image/png;base64,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)
7. 在 /lib/firmware/wlan/qca\_cld/WCNSS\_qcom\_cfg.ini 文件中添加 `read_mac_addr_from_mac_file=1` INI 参数。
            
有关更新 INI 参数的详细信息，参见 [使用 CLD 驱动程序在软件中定制 Wi-Fi 参数](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html#son1569159700009)。
8. 重新启动设备。

### 使用 CLD 驱动程序在软件中定制 Wi-Fi 参数

Source: [https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html)

### 关于此任务

可以使用 `WCNSS_qcom_cfg.ini` 文件定制具有各种配置的 CLD Wi-Fi host 驱动程序。

Wi-Fi host 驱动程序在初始化期间读取此 INI 文件。

对 INI 文件进行的任何更改只有在设备重新启动后才会生效。Wi-Fi host 驱动程序使用的 INI 文件位于 /lib/firmware/wlan/qca\_cld/WCNSS\_qcom\_cfg.ini 路径中。

要根据要求定制 Wi-Fi 参数，执行以下步骤：
注释： 确保按照 [使用 SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70015-254/how_to.html#use-ssh) 中提到的步骤启用 SSH。

### 过程

1. 使用以下命令运行 SSH：
        
ssh root@<device_IP_address>Copy to clipboard

例如，如果设备的 IP 地址为 `192.168.1.22`，可运行以下命令：

        ssh root@192.168.1.22Copy to clipboard

        mount -o remount rw /Copy to clipboard

注释： 确保 RB3 Gen 2 设备和对端客户端设备位于 Wi-Fi 通信范围内。
2. 要从设备中拉取默认 `WCNSS_qcom_cfg.ini` 文件，可运行以下命令：
        
scp -r root@192.168.1.22:/lib/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini .Copy to clipboard
3. 修改 `WCNSS_qcom_cfg.ini` 文件。
4. 要将 `WCNSS_qcom_cfg.ini` 文件推送到设备，可运行以下命令：
        
scp -r WCNSS_qcom_cfg.ini  root@192.168.1.22:/lib/firmware/wlan/qca_cld
        reboot
        Copy to clipboard
5. 重启设备。
        
所有 INI 配置的信息均位于 sources/wlan/qcacld-3.0/core/hdd/inc/hdd\_config.h。使用以下配置进行测试：
    - `gDot11Mode=8` 表示仅支持 11ac 模式。
    - `gEnableBmps=0` 禁用信标模式省电 (bmps)。
    - `gEnableDFSChnlScan=0` 以避免扫描 DFS 信道。

### 切换到 CLD 驱动程序

Source: [https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html](https://docs.qualcomm.com/doc/80-70015-14SC/topic/Check_WLAN_host_and_SS_platform_driver_source_codes.html)

Note: 仅当 Qualcomm RB3 Gen 2 开发套件具有 WCN6750 Wi-Fi 芯片组时，以下步骤才适用。

要从 at11k 切换到 CLD 驱动程序，请使用以下两个补丁。

- 应用以下补丁，其源文件位于 sources/wlan/wlan-devicetree：

        diff --git a/qcm6490-wlan-idp.dtsi b/qcm6490-wlan-idp.dtsi
        index 5a50eda..bb15319 100644
        --- a/qcm6490-wlan-idp.dtsi
        +++ b/qcm6490-wlan-idp.dtsi
        @@ -60,7 +60,6 @@
         		qcom,vdd-1.3-rfa-config = <1256000 1500000 0 0 0>;
         		qcom,smem-states = <&wlan_smp2p_out 0>;
         		qcom,smem-state-names = "wlan-smp2p-out";
        -		status = "disabled";
         
         		icnss_cdev_apss: qcom,icnss_cdev1 {
         				#cooling-cells = <2>;
        diff --git a/qcm6490-wlan-rb3.dtsi b/qcm6490-wlan-rb3.dtsi
        index a716fa2..57f5637 100644
        --- a/qcm6490-wlan-rb3.dtsi
        +++ b/qcm6490-wlan-rb3.dtsi
        @@ -60,7 +60,6 @@
         		qcom,vdd-1.3-rfa-config = <1256000 1500000 0 0 0>;
         		qcom,smem-states = <&wlan_smp2p_out 0>;
         		qcom,smem-state-names = "wlan-smp2p-out";
        -		status = "disabled";
         
         		icnss_cdev_apss: qcom,icnss_cdev1 {
         				#cooling-cells = <2>;
        diff --git a/qcm6490-wlan-upstream.dtsi b/qcm6490-wlan-upstream.dtsi
        index b7f219a..7f81991 100644
        --- a/qcm6490-wlan-upstream.dtsi
        +++ b/qcm6490-wlan-upstream.dtsi
        @@ -4,10 +4,5 @@
          */
         &wifi {
                memory-region = <&wlan_fw_mem>, <&wlan_ce_mem>;
        -       status = "okay";
        -};
        -
        -&remoteproc_wpss {
        -       firmware-name = "ath11k/WCN6750/hw1.0/wpss.mdt";
        -       status = "okay";
        +       status = "disabled";
         };
        diff --git a/qcs5430-wlan-rb3.dtsi b/qcs5430-wlan-rb3.dtsi
        index 0dab35c..f50a644 100644
        --- a/qcs5430-wlan-rb3.dtsi
        +++ b/qcs5430-wlan-rb3.dtsi
        @@ -60,7 +60,6 @@
         		qcom,vdd-1.3-rfa-config = <1256000 1500000 0 0 0>;
         		qcom,smem-states = <&wlan_smp2p_out 0>;
         		qcom,smem-state-names = "wlan-smp2p-out";
        -		status = "disabled";
         
         		icnss_cdev_apss: qcom,icnss_cdev1 {
         				#cooling-cells = <2>;
        diff --git a/qcs5430-wlan-upstream.dtsi b/qcs5430-wlan-upstream.dtsi
        index b7f219a..7f81991 100644
        --- a/qcs5430-wlan-upstream.dtsi
        +++ b/qcs5430-wlan-upstream.dtsi
        @@ -4,10 +4,5 @@
          */
         &wifi {
                memory-region = <&wlan_fw_mem>, <&wlan_ce_mem>;
        -       status = "okay";
        -};
        -
        -&remoteproc_wpss {
        -       firmware-name = "ath11k/WCN6750/hw1.0/wpss.mdt";
        -       status = "okay";
        +       status = "disabled";
         };
        Copy to clipboard
- 还原以下补丁，其源文件位于 sources/mdm-init/wlan\_qcm6490

        diff --git a/wlan_qcm6490/wlan b/wlan_qcm6490/wlan
        index 54059ee..d23fdfd 100644
        --- a/wlan_qcm6490/wlan
        +++ b/wlan_qcm6490/wlan
        @@ -32,7 +32,11 @@
        # SPDX-License-Identifier: BSD-3-Clause-Clear
        export MODULE_BASE=/lib/modules/`uname -r`
        -export MODNAME=wlan
        +#To load qcacld driver make MODNAME=wlan
        +#export MODNAME=wlan
        +
        +#MODNAME=ath11k_ahb indicates upstream ath11k driver is being loaded
        +export MODNAME=ath11k_ahb
        export RETRY_LIMIT=20
        HELP="Usage $0 {start | stop | restart} <ap | sta,ap>"
        DUMP_TO_KMSG=/dev/kmsg
        @@ -65,7 +69,6 @@wpa_supplicant -Dnl80211 -iwlan0 -ddd -c /etc/wpa_supplicant.conf -t -f /tmp/wpa_supplicant-log.txt &
        -	dhcpcd wlan0
                 cnt=0
                 while ! [ -d /var/run/wpa_supplicant ]
        @@ -100,8 +103,9 @@
             stop)
                 echo "Stopping WLAN..." > $DUMP_TO_KMSGkillall wpa_supplicant
        -	killall dhcpcd
        -	rmmod $MODNAME
        +        if [ "$MODNAME" = "wlan" ]; then
        +            rmmod $MODNAME
        +        fi
                 ;;
             restart)Copy to clipboard

应用补丁后，请确保按照 [Qualcomm Linux 编译指南](https://docs.qualcomm.com/bundle/publicresource/topics/80-70015-254/introduction.html)中的说明重新编译并刷写整个镜像。

Last Published: Nov 21, 2024

[Previous Topic
架构](https://docs.qualcomm.com/bundle/publicresource/80-70015-14SC/topics/wlan_sw_overview.md) [Next Topic
配置](https://docs.qualcomm.com/bundle/publicresource/80-70015-14SC/topics/Set_up_and_configure_WLAN_connection.md)