驱动
文章平均质量分 93
无意的青月
这个作者很懒,什么都没留下…
展开
-
高通音频架构(三)
音频由于其特殊的工作,使得它的结构特别的复杂,而且在自己的结构基础上还引入了ALSA架构,不过在android系统上所引入的并非完整的ALSA架构而是精简版的tinyalsa,但是就算精简版也是内容相当丰厚。除此,音频还拥有自己的单独的处理器ADSP以及独立的电源管理系统DAPM(便携式动态音频电源管理),使得音频在任何时候都是以最低功耗运行,降低了便携设备的功耗。在某些播放场景甚至不需要CPU的介入,比如接打电话的通过音频,如果手机处于休眠可以不需要唤醒CPU直接传递语音数据。...原创 2022-08-09 15:01:44 · 22438 阅读 · 10 评论 -
高通平台fingerprint指纹框架
指纹是android系统中目前应用比较广发的一种安全验证手段,它使得我们的手机安全得到了极大的提高,同时指纹它也拥有了极高权限,这就意味着,对于指纹这个软件需要一个绝对安全的运行环境,让外界很难突破去破解它。在高通平台中,手机内是分为安全环境和非安全环境的,安全环境是trustzone,简称TZ,这这里面运行的应用程序被称为qsapp,是需要经过签名验证通过才能运行,除TZ意外的地方被称为非安全环境,如下图:trustzone由两部分软件组成:TZBSP(TrustZone board support pa原创 2022-06-21 15:06:11 · 9004 阅读 · 1 评论 -
高通音频架构(二)
1.2 HAL(硬件抽象层)在上一篇文章中,我们探讨了audio在framework层的一些代码流程,记下来看看HAL层。在大部分驱动中,HAL层扮演的是一个过度的角色,基本上都是用于传递数据,不会做太多的逻辑处理,主要核心部分都交给了kernel,但似乎对于音频来说,刚好反过来了,音频的kernel放的是平台对于音频的一些共同的和硬件交互的代码,大部分音频厂家都不会把自己的核心部分添加到kernel中,而是选择了放在HAL层。所以,对于音频来说HAL层反而成了整个框架中的核心部分,那么接下来我们就简单原创 2022-04-11 15:58:28 · 7047 阅读 · 0 评论 -
高通音频架构(一)
一、概述音频是几乎是任何一个机器都是必备的一项功能,从早起的单纯发声的录音机,到后来的MP3,以及到现在的手机,它一直陪伴在我们的生活中,功能不变,形式却一直在变,包括它的架构也在变化。从早期的OSS到现在的ALSA,这个介绍在上篇文档是有介绍的,这里我们就着重说一下ALSA。首先高通的音频结构分为以下几个部分:应用层,主要使用音频的用户主体架构层(framework),这一层主要是为应用层提供了相关处理接口,并且链接了HAL层硬件抽象(HAL)层,在音频开发中可能大部分主要逻辑都是放在这个层次来原创 2022-04-08 10:13:59 · 14174 阅读 · 0 评论 -
Android 音频(Audio)架构
一、概述Android 的音频硬件抽象层 (HAL) 可将 android.media 中特定于音频的较高级别的框架 API 连接到底层音频驱动程序和硬件。本部分介绍了有关提升性能的实现说明和提示。Android 音频架构定义了音频功能的实现方式,并指出实现中所涉及的相关源代码。应用框架应用框架包含应用代码,该代码使用 android.media API 与音频硬件进行交互。在内部,此代码会调用相应的 JNI 粘合类来访问与音频硬件互动的原生代码。源代码目录:frameworks/base/m原创 2022-04-08 09:47:34 · 17963 阅读 · 0 评论 -
MTK Sensor框架 及信息传递详解
一、概述sensor(传感器)作为手机中一个非常重要且目前来说不可或缺的一种组件,功能强大,但是使用却很简单。Android 传感器属于虚拟设备,可提供来自以下各种物理传感器的数据:加速度计、陀螺仪、磁力计、气压计、湿度传感器、压力传感器、光传感器、近程传感器和心率传感器。因为对于日常生活来说有一部分sensor是使用频率是很高的,所以必然也伴随着手机功耗的增加如果每次都是CPU进行处理的化,而且CPU一旦休眠还伴随着sensor会停止工作,为了优化手机使用Google和MTK分别开发了CHRE 和SCP原创 2021-10-15 16:47:36 · 12201 阅读 · 2 评论