在MTK平台配置一个支持smartPA的audio驱动

本文详细介绍了如何在MTK平台上配置支持smartPA的audio驱动,涉及kernel配置、Makefile修改、代码包添加及codec驱动的更新,旨在提升音频输出的音量和音质,同时提供保护功能。
摘要由CSDN通过智能技术生成

smartPA概述

smart PA翻译成中文,就是“智能功率放大器”,其本质上也是一个放大器,而它和普通外放模块相比,最大的区别是加了一个反馈的功能。

这个反馈的功能起到什么样的作用呢?
假设一特定中频下smart PA和普通PA模块信噪比、最大输出功率等可以做到完全相同,在其他频率下(特别是在低频)普通放大器为了保证信噪比(直观反映为音质)及最大功率(防止被烧毁),该放大器在设计之初就必须调低放大的倍数。换而言之,就是普通放大器为了保证全频段内的性能,不得不在大部分频段“保留实力”,俗称“上锁”。而smart PA的关键就是加入了输出信号的反馈,从而做到通过反馈做到精准控制。

最明显的就是音量更大,效果更好了。

它能够专门提高智能机音乐输出动态范围,动态跟踪喇叭的状态并感知其所处环境的变化,在适应后给出改变,为手机、便携式音乐播放器和平板计算机带来更高的音量、更浑厚的低音与更出色的音质,而且还可以在不超过扬声器本身承受能力的前提下提高音乐的平均音量。

smard PA目前提供两大外放上最为强悍的功能: 第一,保护功能,保护器件不受超额工作的损害;第二,可以理解为效果类功能,在保护器件的同时,能够一定程度上提升音质。 这里以AW87319智能功放为例。

smartPA AW87319概述

普通功放受到锂电池电压的限制,功放无法达到很大的推力,音量设置过大会导致削波杂音。AW87319 是专门提高智能机音乐输出动态范围,提升整体音质而开发的高效率,低噪声,恒定大音量的第二代Smart K音乐功放。AW87319内部集成boost升压电路,升压高至8.5V,可在短时间内产生4.1W的强劲推力,在增加电压裕量的同时减小削波风险。AW87319集成艾为专有的Triple-Level Triple-Rate AGC音效算法,增强低音,提升音乐动态听感,有效消除音乐播放中杂音,同时提升音量改善音质。AW87319的底噪低至47μV,具有高达102dB的信噪比,0.015%的超低失真度和独特的针对高压功放设计的保护喇叭的技术——Triple-Level Triple-Rate AGC技术,带来高品质的音乐享受。
在这里插入图片描述

smartPA AW87319功能特性

  • AW87319支持SpeakerReceiver的二合一应用。在Receiver应用时,Class D功率级电源由VBAT直通提供。

  • AW87319通过I2C接口控制内部寄存器,寄存器参数包括:Boost输出电压,Boost最大输入峰值电流,Class D放大倍数,Triple-level Triple-Rate AGC参数等。

  • AW87319内置限流保护、过热保护和短路保护功能,有效地保护芯片。AW87319采用纤小的2.76mm*2.36mm CSP-19封装。

在kernel中添加对smartPA的支持

因为audio驱动中本身已经对普通的PA进行了配置,所以只需要将普通的PA的配置进行替换以及添加上smartPa的配置即可。

ps: “+”号代表原来没有这行命令或者代码,是新添加的

1. 在配置文件中添加对smartPA的支持

所在文件:
./kernel-4.4/arch/arm64/configs/k63v2_64_bsp_debug_defconfig

+ CONFIG_EXT_PA_AW87319<
  • 5
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,关于你的第一个问题:i2c总线工作原理和MTK平台配置流程,我可以为你解答。 一、i2c总线工作原理 i2c(Inter-Integrated Circuit)总线是一种串行总线,它由两根线构成:SDA(数据线)和SCL(时钟线)。i2c总线采用主从模式进行通信,主设备负责发起通信请求,从设备则被动地响应请求。 i2c总线的数据传输是通过时钟信号进行同步的。在传输数据时,主设备向从设备发送一个起始信号,再发送从设备的地址和读写位,接着从设备响应确认信号,主设备继续发送数据,从设备再次响应确认信号,直到传输完成,主设备发送停止信号。 二、MTK平台配置流程 1. 打开内核配置菜单 在Linux内核源码树中,使用make menuconfig命令打开内核配置菜单。 2. 配置i2c驱动 在内核配置菜单中,选择Device Drivers -> I2C support -> I2C Hardware Bus support,打开i2c总线驱动配置选项。 3. 配置MTK i2c控制器 在内核配置菜单中,选择Device Drivers -> I2C support -> I2C Hardware Bus support -> Mediatek I2C controller,打开MTK i2c控制器的配置选项。 4. 配置i2c设备驱动 在内核配置菜单中,选择Device Drivers -> I2C support -> I2C device interface,打开i2c设备驱动配置选项。 5. 生成内核镜像和设备树 完成内核配置后,使用make命令生成内核镜像和设备树文件。 6. 加载内核模块 将内核镜像和设备树文件烧录到设备上,并加载i2c驱动模块,即可使用MTK平台的i2c总线进行通信。 以上就是关于i2c总线工作原理和MTK平台配置流程的简要介绍,希望能够对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值