0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

I2C3挂载wm8960音频芯片 | 飞凌干货笔记

飞凌嵌入式 2022-08-12 14:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

飞凌嵌入式的OKMX8MM-C开发板预留了I2C3和SAI引脚接口,分别位于P18和P7插针引脚上,板载音频芯片挂载到了I2C2和SAI2。今天小编为大家列举并说明如何在I2C3挂载wm8960音频芯片并通过SAI1连接传输音频数据。

设备树和设备树头文件路径如下:

OK8MM-linux-sdk/OK8MM-linux-kernel/arch/arm64/boot/dts/freescale/ok8mm-evk.dts

OK8MM-linux-sdk/OK8MM-linux-kernel/arch/arm64/boot/dts/freescale/fsl-imx8mm.dtsi

1、修改结果

1、打开设备树修改sound节点,驱动从这里获取设备信息。

(1)修改sound节点cpu-dai =<&sai2>,改为cpu-dai= <&sai1>

将wm8960挂载到sai1实现音频数据流的收发,同理也可挂载到sai3,修改硬件连接即可。

(2)修改 hp-det-gpios= <&gpio4 22 0 >, 改为 hp-det-gpios= <&gpio4 22 1 >。

默认使用耳机输出,使插拔检测失效。

31a9a42af0bb4727a8770a21b6a79281~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=WIWa5bnfOWT6gyqXhOlrFCY5%2Bmo%3D

2、注释I2C2下的wm8960节点,因为在设备树中不能存在一模一样的设备节点,所以要注释掉原来的wm8960节点。

40bcbb2fffe4464098d9b8c14b566aef~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=LsP63K51eZquOTBFJJay0DtAelw%3D

在I2C3下添加wm8960节点,挂载到哪个I2C就把设备节点放到对应I2C下,修改clocks= <&clk IMX8MM_CLK_SAI1_ROOT>,在I2C3下有了设备节点,但是时钟需要改成sai1的。

11753cbdf1fb47de89a96c1c367fb913~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=f2GcBMz2eCCWPnBYUGwh%2FaYVc3g%3D

3、修改pinctrl_sai1并注释pinctrl_sai1_dsd,i.MX8MM的默认设备树已经写好了sai1的pinctrl。

b6e47da85e004b5193a9f1498716f20d~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=Wh%2BY4QYY7spxE2r1xED44vjtwm8%3D

4、修改SAI1节点,如下图所示,复制SAI2节点替换SAI1,修改成SAI1的参数。

c7aa910806684afcba14e05bcf6d6c4e~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=RD6dJV5JfkA%2B1%2BDCky0Tniej3vI%3D

2、修改思路

我们在修改音频芯片挂载路径时的思路是这样的:

1. 屏蔽默认的挂载路径;

2. 将音频设备的节点添加到要挂载的I2C和SAI下;

3. 修改pinctrl引脚复用;

4. 屏蔽默认wm8960的引脚配置。

本文介绍的wm8960挂载方式与板载默认音频芯片属于同一型号,如果需要挂载其他型号音频芯片,则需要在sound节点指定驱动路径。

cpu-dai 表示要使用的SAI通道,默认为SAI2本文使用SAI1就修改成SAI1即可; audio-codec 属性就是I2C3下的wm8960节点。

设备树sound节点:

1496434bf84f420d89b0345bf30cd2ab~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=0xBBzerLjrAiXoEPSZ8hYSAJ3J4%3D

imx-wm8960.c驱动文件的.compatible属性:

404b58604a9341c69c33ae72041b8e29~noop.image?_iz=58558&from=article.pc_detail&x-expires=1660887844&x-signature=5p40Jtj2FKpZxNqq5A4%2Bqe0cWQs%3D

3、总结

设备树sound节点下compatible属性对应音频驱动文件imx-wm8960.c里的.compatible,由此设备与驱动便有了联系,驱动就可以在设备节点获取关键字model,cpu-dai等信息。

当换成其他音频芯片时,修改设备树compatible属性值即可修改音频设备的配置也变得简单起来,这也是Linux分离出设备树的主要原因。

本文提供的方法是在屏蔽默认音频设备的前提下进行的,想要实现双路音频输出还需要在其他环节进行配置。以上就是在OKMX8MM-C开发板的I2C3挂载wm8960音频芯片并通过SAI1连接传输音频数据的操作过程,希望能够对屏幕前的各位工程师小伙伴有所帮助。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    135

    文章

    9586

    浏览量

    393508
  • 嵌入式
    +关注

    关注

    5209

    文章

    20629

    浏览量

    336789
  • Linux
    +关注

    关注

    88

    文章

    11810

    浏览量

    219513
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式RV1126B开发板试用体验】初识嵌入式RV1126B开发板试

    /FET1126BJ-S 核心板,OK1126BJ-S开发板。 嵌入式RV1126B集成 4 个 ARM Cortex-A53 高性能核心,具备 3TOPS@INT8 的 AI 计算能力,并配备多路
    发表于 04-13 17:27

    炬芯科技端侧AI音频芯片ATS362X荣获2026中国IC设计成就奖

    2026年3月31日-4月1日,2026中国IC设计成就奖颁奖典礼在上海召开。凭借创新的端侧AI芯片架构、深厚的音频技术积淀以及丰富的技术商业化落地生态,炬芯科技端侧AI音频芯片ATS
    的头像 发表于 04-03 17:42 1130次阅读

    炬芯科技端侧AI音频芯片ATS362X荣获GAS 2026产品创新优秀案例

    2026年3月25-26日,在中国国际音频产业大会(GAS 2026)上,炬芯科技凭借端侧AI音频芯片ATS362X,从众多参选产品中脱颖而出,荣获 “GAS 2026 产品创新优秀案例”。这一奖项由中国电子音响行业协会颁发,标
    的头像 发表于 04-02 14:47 1698次阅读

    深入剖析WM8918:超低功耗DAC在便携式音频的卓越应用

    8918CGEFL/RV.pdf 一、WM8918概述 WM8918是一款高集成度的音频芯片,拥有立体声接地参考耳机放大器,采用了创新的
    的头像 发表于 03-27 17:55 571次阅读

    WM8741:高性能音频DAC的卓越之选

    WM8741:高性能音频DAC的卓越之选 在音频设备的设计领域,高性能的数模转换器(DAC)是确保音质出色的关键组件。今天,我们就来深入探讨一款备受关注的音频DAC——
    的头像 发表于 03-27 09:50 247次阅读

    高性能音频利器:WM8740立体声DAC全解析

    高性能音频利器:WM8740立体声DAC全解析 在音频设备设计领域,DAC(数字模拟转换器)芯片的性能直接决定了音频的还原质量与聆听体验。今
    的头像 发表于 03-27 09:30 180次阅读

    WT2605C 蓝牙音频芯片介绍

    WT2605C蓝牙音频芯片介绍功能详解与应用指南—双模蓝牙+本地音频播放SoC,适用于耳机、车载、智能家居等场景WT2605C是深圳唯创知音电子有限公司推出的一款高品质双模蓝牙
    的头像 发表于 03-25 16:49 512次阅读
    WT2605<b class='flag-5'>C</b> 蓝牙<b class='flag-5'>音频芯片</b>介绍

    RK平台I2C开发:从硬件原理到实战排查

    在嵌入式开发中,I2C 总线是连接外设的 “桥梁”—— 小到传感器、EEPROM,大到 LCD 驱动器、音频芯片,都离不开它的控制。而瑞芯微(Rockchip)系列芯片作为主流嵌入式方案,其
    的头像 发表于 02-05 13:42 2317次阅读
    RK平台<b class='flag-5'>I2C</b>开发:从硬件原理到实战排查

    应用在微型组件音频解决方案中的集成度高、体积小巧的全数字音频芯片-NTP8212G

    微型组件音频解决方案通常指集成度高、体积小巧的音频芯片或模块,它们被广泛应用于各种便携式和空间受限的电子设备中,以实现音频信号的输入、输出、处理和传输。
    的头像 发表于 01-28 09:59 303次阅读
    应用在微型组件<b class='flag-5'>音频</b>解决方案中的集成度高、体积小巧的全数字<b class='flag-5'>音频芯片</b>-NTP8212G

    广州唯创电子WT2605C语音芯片MP3音频IC:实现指令随机播放与无缝循环播放 | 语音IC厂家

    在智能化浪潮持续推进的今天,音频功能已成为提升电子产品用户体验的关键要素。广州唯创电子作为专业的语音IC厂家,推出的WT2605CMP3音频芯片以其创新的音频处理技术和卓越的性能表现,
    的头像 发表于 11-03 08:32 581次阅读
    广州唯创电子WT2605<b class='flag-5'>C</b>语音<b class='flag-5'>芯片</b>MP<b class='flag-5'>3</b><b class='flag-5'>音频</b>IC:实现指令随机播放与无缝循环播放 | 语音IC厂家

    OK-MX9596-C开发板试用】②体验WIFI、蓝牙、音频、视频,为AI应用打下基础

    OK-MX9596-C开发板试用】①开箱图赏、跑分测试、yolo大模型三箭齐发 - 嵌入式 - 电子技术论坛 - 广受欢迎的专业电
    发表于 10-21 18:17

    广州唯创WT2003H录音芯片-高精度ADC/DAC+64mA驱动MP3音频芯片

    一、产品概述:WT2003H系列MP3录音芯片的技术优势1.1芯片定位与市场价值广州唯创电子作为国内领先的语音IC厂家,推出的WT2003H系列MP3
    的头像 发表于 10-16 09:03 679次阅读
    广州唯创WT2003H录音<b class='flag-5'>芯片</b>-高精度ADC/DAC+64mA驱动MP<b class='flag-5'>3</b><b class='flag-5'>音频芯片</b>

    干货】一文带你彻底搞懂I2S协议:从基础信号到主从模式的深度解析

    了可靠方案。一、I2S的诞生与应用场景I2S协议由飞利浦公司率先推出,其核心目标是解决不同厂商音频芯片(IC)间数据传输的"兼容性难题"——避免因时序、格式不统一
    的头像 发表于 10-09 19:35 2600次阅读
    【<b class='flag-5'>干货</b>】一文带你彻底搞懂<b class='flag-5'>I2</b>S协议:从基础信号到主从模式的深度解析

    【作品合集】嵌入式OK527N-C开发板测评

    嵌入式OK527N-C开发板测评作品合集 产品介绍: OK527-C开发板采用核心板+底板分体式设计,共320个引脚,采用4个80Pin板对板连接器的方式将处理器的功能引脚以最便利
    发表于 09-22 15:54

    ESP32P4示例工程中有用的i2c-tools调试工程

    i2c设备引脚,并编译工程,烧录到开发板上。 查看ESP32-P4-Function-EV-Board开发板的原理图,可知音频芯片、显示驱动和摄像头驱动的I2C控制口挂载在同一个
    发表于 05-03 18:25