飛凌嵌入式的OKMX8MM-C開發(fā)板預留了I2C3和SAI引腳接口,分別位于P18和P7插針引腳上,板載音頻芯片掛載到了I2C2和SAI2。今天小編為大家列舉并說明如何在I2C3掛載wm8960音頻芯片并通過SAI1連接傳輸音頻數(shù)據(jù)。
設備樹和設備樹頭文件路徑如下:
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、修改結(jié)果
1、打開設備樹修改sound節(jié)點,驅(qū)動從這里獲取設備信息。
(1)修改sound節(jié)點cpu-dai =<&sai2>,改為cpu-dai= <&sai1> 。
將wm8960掛載到sai1實現(xiàn)音頻數(shù)據(jù)流的收發(fā),同理也可掛載到sai3,修改硬件連接即可。
(2)修改 hp-det-gpios= <&gpio4 22 0 >, 改為 hp-det-gpios= <&gpio4 22 1 >。
默認使用耳機輸出,使插拔檢測失效。
2、注釋I2C2下的wm8960節(jié)點,因為在設備樹中不能存在一模一樣的設備節(jié)點,所以要注釋掉原來的wm8960節(jié)點。
在I2C3下添加wm8960節(jié)點,掛載到哪個I2C就把設備節(jié)點放到對應I2C下,修改clocks= <&clk IMX8MM_CLK_SAI1_ROOT>,在I2C3下有了設備節(jié)點,但是時鐘需要改成sai1的。
3、修改pinctrl_sai1并注釋pinctrl_sai1_dsd,i.MX8MM的默認設備樹已經(jīng)寫好了sai1的pinctrl。
4、修改SAI1節(jié)點,如下圖所示,復制SAI2節(jié)點替換SAI1,修改成SAI1的參數(shù)。
2、修改思路
我們在修改音頻芯片掛載路徑時的思路是這樣的:
1. 屏蔽默認的掛載路徑;
2. 將音頻設備的節(jié)點添加到要掛載的I2C和SAI下;
3. 修改pinctrl引腳復用;
4. 屏蔽默認wm8960的引腳配置。
本文介紹的wm8960掛載方式與板載默認音頻芯片屬于同一型號,如果需要掛載其他型號音頻芯片,則需要在sound節(jié)點指定驅(qū)動路徑。
cpu-dai 表示要使用的SAI通道,默認為SAI2本文使用SAI1就修改成SAI1即可; audio-codec 屬性就是I2C3下的wm8960節(jié)點。
設備樹sound節(jié)點:
imx-wm8960.c驅(qū)動文件的.compatible屬性:
3、總結(jié)
設備樹sound節(jié)點下compatible屬性對應音頻驅(qū)動文件imx-wm8960.c里的.compatible,由此設備與驅(qū)動便有了聯(lián)系,驅(qū)動就可以在設備節(jié)點獲取關(guān)鍵字model,cpu-dai等信息。
當換成其他音頻芯片時,修改設備樹compatible屬性值即可修改音頻設備的配置也變得簡單起來,這也是Linux分離出設備樹的主要原因。
本文提供的方法是在屏蔽默認音頻設備的前提下進行的,想要實現(xiàn)雙路音頻輸出還需要在其他環(huán)節(jié)進行配置。以上就是在OKMX8MM-C開發(fā)板的I2C3掛載wm8960音頻芯片并通過SAI1連接傳輸音頻數(shù)據(jù)的操作過程,希望能夠?qū)ζ聊磺暗母魑?a target="_blank">工程師小伙伴有所幫助。
-
ARM
+關(guān)注
關(guān)注
135文章
9548瀏覽量
391525 -
嵌入式
+關(guān)注
關(guān)注
5198文章
20415瀏覽量
333469 -
Linux
+關(guān)注
關(guān)注
88文章
11749瀏覽量
218934
發(fā)布評論請先 登錄
RK平臺I2C開發(fā):從硬件原理到實戰(zhàn)排查
應用在微型組件音頻解決方案中的集成度高、體積小巧的全數(shù)字音頻芯片-NTP8212G
廣州唯創(chuàng)電子WT2605C語音芯片MP3音頻IC:實現(xiàn)指令隨機播放與無縫循環(huán)播放 | 語音IC廠家
【飛凌OK-MX9596-C開發(fā)板試用】②體驗WIFI、藍牙、音頻、視頻,為AI應用打下基礎
廣州唯創(chuàng)WT2003H錄音芯片-高精度ADC/DAC+64mA驅(qū)動MP3音頻芯片
【干貨】一文帶你徹底搞懂I2S協(xié)議:從基礎信號到主從模式的深度解析
【作品合集】飛凌嵌入式OK527N-C開發(fā)板測評
5分鐘學會網(wǎng)絡服務搭建,飛凌i.MX9352 + Linux 6.1實戰(zhàn)示例
ESP32P4示例工程中有用的i2c-tools調(diào)試工程
杰理科技推出AC706N多功能音頻芯片
使用MIMXRT685-EVK將WM8904連接到RT685的I3C總線,并通過I2C進行控制遇到的幾個問題求解
i.MX8作為從模式,無聲音是怎么回事?
國產(chǎn)車載高階DSP音頻芯片量產(chǎn):支持多達256個音頻通道
炬芯科技再發(fā)端側(cè) AI音頻芯片 ATS362X 低功耗大算力引爆音頻新浪潮
炬芯科技ATS362X 低功耗大算力AI音頻芯片
I2C3掛載wm8960音頻芯片 | 飛凌干貨筆記
評論