首页 > 其他分享 >如何在i.MX8MP平台上为Qualcomm平台的Wi-Fi芯片开辟特定的CMA空间?

如何在i.MX8MP平台上为Qualcomm平台的Wi-Fi芯片开辟特定的CMA空间?

时间:2024-08-14 15:22:58浏览次数:9  
标签:0.000000 平台 CMA Qualcomm Wi memory Fi pool

1. 为什么要开辟指定的空间

为了防止Wi-Fi长时间运行,导致的内存碎片化,Qualcomm Wi-Fi平台可以从内存空间中,划分出特定的CMA空间段,用以进行内存的申请和释放,下面我们重点介绍下,如何在i.MX8MP Linux 5.15.x平台上为QCA206x Wi-Fi 6/6E预留特定CMA空间的操作步骤。

2. Linux开辟特定的CMA空间

Linux 5.15.x中首先合入如下patch,为cnss driver提前预留CMA空间:

合入上如patch后,dmesg log如下所示:

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]

[ 0.000000] Linux version 5.15.71+gc7650dccb51c (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 11.3.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Wed Apr 12 06:36:33 UTC 2023

[ 0.000000] Machine model: NXP i.MX8MPlus EVK board

[ 0.000000] OF: reserved mem: OVERLAP DETECTED!

[ 0.000000] Reserved memory: created CMA memory pool at 0x00000000c4000000, size 960 MiB

[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool

[ 0.000000] Reserved memory: created DMA memory pool at 0x0000000094300000, size 1 MiB

[ 0.000000] OF: reserved mem: initialized node vdev0buffer@94300000, compatible id shared-dma-pool

[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 64 MiB // 物理地址的空间范围:0x00000000a0000000--0x00000000a4000000

[ 0.000000] OF: reserved mem: initialized node linux,cnss2, compatible id shared-dma-pool

3. Wi-Fi Driver使能特定CMA区域

下载Wi-Fi驱动:Sign in · GitLab

编译Wi-Fi驱动:

  • 编译Wi-Fi驱动的时候,使能"CONFIG_USE_CUSTOMIZED_DMA_MEM=y"宏即可。

标签:0.000000,平台,CMA,Qualcomm,Wi,memory,Fi,pool
From: https://blog.csdn.net/weixin_47877869/article/details/141192272

相关文章

  • 免费word简历 简历制作平台
    分享一个简历制作平台。 免费的word模版 链接地址 https://www.xyjianli.com/https://www.xyjianli.com/listhttps://www.xyjianli.com/wordResume 简历的重要性:开启职业生涯的钥匙在当今竞争激烈的就业市场中,简历作为求职者与雇主之间的第一次正式接触,其重要性不言而喻......
  • iOS 仿照TopWidgets 小组件动画
    iOS小组件本身不支持动画,但是像TopWidgets,ColorfulWidget等APP却能实现各种帧动画,播视频.播放Gif,View的平移旋转等.发现其实它们是用了一个私有旋转方法,我将其打包成一个动态库后,可以结合多个View旋转,杠杆原理来实现控件的移动.播放gif动画等.而且亲测上线无问题.D......
  • windeployqt.exe的使用与避坑(windows平台)
    1.介绍windeployqt.exe是Qt自带的工具,用于创建应用程序发布包。简单来说,这个工具可以自动地将某程序依赖的库、资源拷贝到其所在目录,防止程序在其他电脑上运行报找不到库的错误。这里贴上官方文档:https://doc.qt.io/qt-5/windows-deployment.html本文适用于Windows+Visual......
  • windows下安装部署
    1.安装1.1官网下载Foundationstar下载解压缩1.2官网下载Agentstar下载解压缩2.修改配置2.1agents把解压的agents放到Foundations,改下文件夹名2.2端口修改webapp->application.yml2.3数据保存修改config->application.ymlmysql存储mysql账号密码修......
  • c语言替换字符串 Replace the first ‘oldstr‘ with ‘newstr‘ in ‘srcstr‘
    #include<string.h>#include<stdlib.h>#include<stdio.h>#include<time.h>#include<ctype.h>#include<sys/stat.h>voidgetdate(char*datestr,char*format){ time_tnnowtime=time(NULL); structtm*ptmTemp=loc......
  • yum失效后Centos7 安装编译 fresswitch 1.10.8
    一、yum替换Centos7在2024.7月已停止yum服务,需替换为国内yum1、先备份mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.bak2、替换成yum阿里源curl-o/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo3、......
  • 开关资源新方法:Try- with-resources
    JDK7新特性:Try-with-resourcestry-with-resources是JDK7中引入的一种新的异常处理机制,它主要用于自动管理资源,能够很容易地关闭在try-catch语句块中使用的资源。确保资源在不再需要时能够被正确关闭。这种机制简化了资源管理,使得资源的释放更加安全和可预测。resource:是......
  • 宝塔Windows面板环境要求
    操作系统:仅支持WindowsServer2008R2/2012/2016/2019/2022,64位系统(暂不支持Windows家庭环境使用)确保是干净的操作系统,没有安装过其它环境带的Apache/Nginx/php/MySQL/pgsql/gitlab/java(已有环境、网站在运行的不可安装) :-: 重要的事情提前说,重要的事情说三遍,已有环境不......
  • 基于flask+vue框架的某高校学生学习笔记共享平台的设计与实现[开题+论文+程序]-计算机
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在信息化高速发展的今天,高等教育领域正经历着前所未有的变革。随着知识量的急剧增长和学习方式的多样化,学生们面临着如何高效管理和利用学......
  • iOS 仿照TopWidgets 小组件动画
    iOS仿照TopWidgets小组件动画iOS小组件本身不支持动画,但是像TopWidgets,ColorfulWidget等APP却能实现各种帧动画,播视频.播放Gif,View的平移旋转等.发现其实它们是用了一个私有旋转方法,我将其打包成一个动态库后,可以结合多个View旋转,杠杆原理来实现控件的移动.......