This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] WL1837MOD:Linux/WL1837MOD:通过 fork R8.8构建 WL1837驱动程序会导致错误、什么情况和#39?

Guru**** 1959305 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/957058/wl1837mod-linux-wl1837mod-build-the-wl1837-drivers-by-fork-r8-8-lead-to-errors-what-s-wrong

器件型号:WL1837MOD
Thread 中讨论的其他器件:WL1837

您好、evrybody

我通过 fork R8.8构建 WL1837驱动器的步骤会导致错误。
如果我使用这些命令

Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9/build-utilites$ git 结帐 r8.8
Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9/build-utilites$./sudo_build_wl18xx.sh 更新 R8.8

将出现以下错误:
三、会议的报告
正在验证文件系统框架...
找  不到错误/media/lyudmila/rfs/usr/sbin/wpa_supplicant!
三、会议的报告
找  不到错误/media/lyudmila/rfs/usr/sbin/hostapd!
三、会议的报告
错误 /media/lyudmila/rfs/lib/modules/4.4./kernel/drivers/net/wireless/ti/wl18xx
/wl18xx.ko 未找到!
三、会议的报告
错误:文件不匹配
/media/lyudmila/rfs/lib/modules/4.4./kernel/drivers/net/wireless/ti/wl18xx/wl18xx.ko

如果我不使用命令"git checkout r8.8"并使用该命令
Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9/build-utilites$./sudo_build_wl18xx.sh 更新 R8.7_SP3
然后 成功构建。

否则、我会在构建时执行相同的操作。

情况如何? 如有必要、我可以更详细地描述驱动程序构建

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    其他信息:

    我使用的是 Timesys Linux 内核版本4.4、导出 kernel_variant=4.4.139-ts-armv7l。
    已附加 setup-env 文件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    编号                           \//
    #                          -(o o)-
    =================================== ooo=(_)=OOo=========================================
    #此文件包含自动化所需的导出
    WLAN 组件的#构建过程。
    #将此文件放在与 wl18xx_build.sh 相同的目录中
    #构建脚本。 无需运行'source setup-env'构建
    #脚本将在内部完善它。
    ===========================================================================================================
    #用户特定环境设置-使用完整路径

    #如果设置了默认工具链路径,则会将工具链下载到./toolchain。
    导出 toolchain_path=/home/lyudmila/timesysPoint9/twr_vf600/toolchain/bin

    #如果设置了根文件系统的默认路径,则将使用./fs 文件夹。
    #export ROOTFS=/home/lyudmila/timesysPoint9/twr_vf600/kernel-source/linux-4.4/rfs
    导出 ROOTFS=/media/lyudmila/rfs

    #if default kernel path is set - kernel will be downloaded (set branch to match kernel version)(如果设置了默认内核路径-将下载内核(设置分支以匹配
    导出 kernel_path=/home/lyudmila/timesysPoint9/twr_vf600/kernel-source/linux-4.4

    #如果设置了下面的 kernel_variant、则生成脚本将查找特定于内核的内容
    增补程序目录下的#个增补程序:
    #- pathcs/driver_patches/$kernel_variant 目录下的修补程序
    #  在"模块"构建期间应用。
    #- patches/kernel_patches/$/$kernel_variant 目录下的修补程序
    #  应用于 kernel_path 指向的内核、以防"patch_kernel"出现
    使用#  命令。
    #  注:应用修补程序后,内核不会自动构建
    导出 kernel_variant=4.4.3.139-ts-armv7l

    导出 cross_compile=armv7l-Timesys-linux-gnueabi-
    导出 arch=arm
    ["$toolchain_path"!="default"]&&导出路径=$toolchain_path:$path

    由于某种原因、无法发送文件。 我发送了文件的内容。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

     Linux 内核版本4.19.38及更高版本支持 R8.8。 由于我们不再支持反向端口、因此可能无法为内核版本4.4构建驱动程序。 如果您尝试使用 Linux 内核版本4.19.38进行构建、请告诉我、并告知我们反馈。  

    此致、  

    Sudharshan K N  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Sudharshan K N 感谢您的回答

    R8.7_SP3 fork 正在为 Timesys Linux Kernel 4.4成功构建 wl1837的驱动程序。  这对我来说很合适、但恐怕你会删除 R8.7_SP3 fork。  可以使用 R8.7_SP3 fork 多长时间?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    R8.7的货叉将继续可用。 但是、R8.8有几个可能对用例有帮助的修复。 请访问 https://software-dl.ti.com/ecs/WiLink8/R8_8/change_log_R8_8.html 查看更改日志 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    此外、请告知我们您的应用中的用例、以便我们可以推荐所需的修复。 此外、如果可能、请至少更新到最新的固件。  

    此致、  

    Sudharshan K N  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我再次仔细阅读 swru561a.pdf 文件、发现我的内核配置中没有"CONFIG_WL18XX=m"。
    我设置"CONFIG_WL18XX=m"并重建内核。

    然后、我启动了以下命令:
    Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9-0/build-utilites $./sudo_build_wl18xx.sh 更新 R8.8

    命令执行以以下消息结束:
    .
    .
    正在验证文件系统框架...
    WiFi 软件包构建成功

    看起来都不错、但我有问题。

    执行"./sudo_build_wl18xx.sh update R8.8"命令后、内核 zImage 消失。
    应该是这样吗?

    2.蓝牙固件是哪个文件?

    执行命令后

    Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9-0/build-utilites$./build_wl18xx.sh patch_kernel
      *****  ***根据 setup-env 文件输入以创建安装环境..... *****  
     将 ROOTFS 路径更改为/media/lyudmila/rfs
     使用用户定义的内核
    找到 Makefile。 内核版本设置为4.4.3.139。
      *****  仅在 不执行实际构建的情况下修补内核! *****  
    使用内核:/home/lyudmila/timesysPoint9-0/twr_vf600/kernel-source/linux-4.4
    找到 Makefile。 内核版本设置为4.4.3.139。
    内核补丁基于 Linux 内核4.19.38。 是否要将这些修补程序应用到 setupenv 文件 [y/n]中提到的内核:

    我回答不是
    我不确定是否需要对内核4.4.1.139应用内核4.19.38补丁。
    我做得对吗?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我已将修补程序应用到我的 Linux 内核4.4。 结果如下:


    Lyudmila@Lyudmila-X555SJ:~/wl8-build_Point9-0/build-utilites$./build_wl18xx.sh patch_kernel
      *****  ***根据 setup-env 文件输入以创建安装环境..... *****  
     将 ROOTFS 路径更改为/media/lyudmila/rfs
     使用用户定义的内核
    找到 Makefile。 内核版本设置为4.4.3.139。
      *****  仅在 不执行实际构建的情况下修补内核! *****  
    使用内核:/home/lyudmila/timesysPoint9-0/twr_vf600/kernel-source/linux-4.4
    找到 Makefile。 内核版本设置为4.4.3.139。
    内核补丁基于 Linux 内核4.19.38。 是否要将这些修补程序应用到 setupenv 文件 [y/n]中提到的内核:y
    应用补丁1.
    /home/lyudmila/timesysPoint9-0/twr_vf600/kernel-source/linux-4.4 \n /home/lyudmila/wl8-build_Point9-0/build-utilites/patches/kernel_patches \n
      ***** 正在应用驱动程序补丁:/home/lyudmila/wl8-build_Point9-0/build-utilites/patches/kernel_patches/4.19.38/0001-mesh-mac80211-opcode-get-rate-for-metric-from-driver.patch *****  
    修补文件 include/net/mac80211.h
    在3429 (偏移-276行)时、hunk #1成功。
    修补文件 net/mac80211/driver-ops.c
    在303 (偏移-15行)处、hunk #1成功。
    修补文件 net/mac80211-driver-ops.h
    hunk #1在1164处成功、带 fuzz 1 (偏移-91行)。
    修补文件 net/mac80211/mesh_hwmp.c
    hunk #2以323成功、并伴有 fuzz 1 (偏移2行)。
    Hunk #3在340时失败。
    3次搜索中的1次失败--将拒绝保存到文件 net/mac80211/mesh_hwmp.c.rej
    ***** 错误0*****

    然后、我再次重建了所有内容、但结果是相同的。  重建结束消息"Wifi 软件包构建成功"。 但从 SD 卡加载时、会显示消息"wlcore_SDIO:MODULE_LO版面 没有符号版本"、并且 WiFi 模块不工作。

     蓝牙也无法启动:

    # hciattach /dev/ttyLP2 Texas flow 3000000                                      
    初始化超时。                                                       
    # hciattach /dev/ttyLP2 Texas flow 3000000                                      
    找到了德州仪器的芯片!                                                
    固件文件:/lib/firmware/ti-connectivity/TIInit_11.8.32.bts                
    无法打开固件文件:无此类文件或目录                             
    警告:找不到 BTS 文件:/lib/firmware/ti-connectivity/TIInit_11.8.32.bts
    [893.848058] HCI_UART:MODULE_LO布局 没有符号版本                    
    [893.854588] HCI_UART:MODULE_LO布局 没有符号版本                    
    无法设置行规程:无效参数                                     
    无法初始化设备:参数无效

    这些问题仍然是一样的。

    此外,还出现了另一个问题。

    4.我不使用"./build_wl18xx.sh 内核 构建内核和模块时发出命令。 我通过以下命令照常执行此操作:

    ~$ make ARCH=arm cross_compile=armv7l-Timesys-linux-gnueabi- zImage -J12
    ~$ make ARCH=arm cross_compile=armv7l-Timesys-linux-gnueabi-模块

    R8.8货叉建造时是否允许这样做?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    如前所述、该版本不能与 Linux 版本4.4一起使用。 建议仅将 WiLink-8 FW 更新为最新版本。  

    此致、  

    Sudharshan K N  

x 出现错误。请重试或与管理员联系。