高通平台wifi模块SMMU配置

SMMU简介

SMMU是MMU的一个子设备,基本原理与MMU一致。所以这里先介绍MMU的作用。

MMU机制

MMU为内存分段管理机制,由于内存在申请释放期间必然造成物理内存的碎片化,进而导致一个进程在申请大段连续内存时会耗费很长时间,并且加重内存碎片化。所以虚拟内存机制应运而生。而MMU就是实现虚拟内存到物理内存映射的机制。

正常应用程序使用的地址为线性地址,转换到物理地址流程如下:

SMMU的差异

两者主要的差异在于,MMU为CPU访问主内存机制,SMMU为外设通过DMA直接访问主内存的机制

 

相较而言,wifi芯片就是一个非cpu的外设,有些操作可以直接通过DMA转送到主内存进而降低cpu的使用和唤醒。

Dtsi文件

将描述板级硬件信息的内容从Linux分离出来,用一个专属的文件来描述,这个专属文件叫做设备树,文件扩展名.dts。而一个SOC可以做出很多不同的板子,这些板子都有共同的信息,将这些共同的信息提取出来作为一个通用的文件,其他.dts文件直接引用这个通用文件即可,这个通用文件就是.dtsi文件。

以18115为例,采用的配置文件就是”sm8150-v2.dtsi”。

文件语法简介

文件引用:

可以像C语言那样包含其他文件,如下:

#include "sm8150.dtsi"

#include "sm8150-v2-camera.dtsi"

文件格式:

cpus {                                    ------->节点名称

#address-cells = <2>;                ------->属性值

#size-cells = <0>;

CPU0: cpu@0 {                     ------->子节点

device_type = "cpu";

compatible = "arm,armv8";

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值