0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

I2C3掛載wm8960音頻芯片 | 飛凌干貨筆記

飛凌嵌入式 ? 2022-08-12 14:20 ? 次閱讀

飛凌嵌入式的OKMX8MM-C開發(fā)板預(yù)留了I2C3和SAI引腳接口,分別位于P18和P7插針引腳上,板載音頻芯片掛載到了I2C2和SAI2。今天小編為大家列舉并說明如何在I2C3掛載wm8960音頻芯片并通過SAI1連接傳輸音頻數(shù)據(jù)。

設(shè)備樹和設(shè)備樹頭文件路徑如下:

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、打開設(shè)備樹修改sound節(jié)點(diǎn),驅(qū)動從這里獲取設(shè)備信息。

(1)修改sound節(jié)點(diǎn)cpu-dai =<&sai2>,改為cpu-dai= <&sai1> 。

將wm8960掛載到sai1實(shí)現(xiàn)音頻數(shù)據(jù)流的收發(fā),同理也可掛載到sai3,修改硬件連接即可。

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

默認(rèn)使用耳機(jī)輸出,使插拔檢測失效。

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

2、注釋I2C2下的wm8960節(jié)點(diǎn),因?yàn)樵谠O(shè)備樹中不能存在一模一樣的設(shè)備節(jié)點(diǎn),所以要注釋掉原來的wm8960節(jié)點(diǎn)。

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

在I2C3下添加wm8960節(jié)點(diǎn),掛載到哪個I2C就把設(shè)備節(jié)點(diǎn)放到對應(yīng)I2C下,修改clocks= <&clk IMX8MM_CLK_SAI1_ROOT>,在I2C3下有了設(shè)備節(jié)點(diǎn),但是時(shí)鐘需要改成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的默認(rèn)設(shè)備樹已經(jīng)寫好了sai1的pinctrl。

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

4、修改SAI1節(jié)點(diǎn),如下圖所示,復(fù)制SAI2節(jié)點(diǎn)替換SAI1,修改成SAI1的參數(shù)。

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

2、修改思路

我們在修改音頻芯片掛載路徑時(shí)的思路是這樣的:

1. 屏蔽默認(rèn)的掛載路徑;

2. 將音頻設(shè)備的節(jié)點(diǎn)添加到要掛載的I2C和SAI下;

3. 修改pinctrl引腳復(fù)用;

4. 屏蔽默認(rèn)wm8960的引腳配置。

本文介紹的wm8960掛載方式與板載默認(rèn)音頻芯片屬于同一型號,如果需要掛載其他型號音頻芯片,則需要在sound節(jié)點(diǎn)指定驅(qū)動路徑。

cpu-dai 表示要使用的SAI通道,默認(rèn)為SAI2本文使用SAI1就修改成SAI1即可; audio-codec 屬性就是I2C3下的wm8960節(jié)點(diǎn)。

設(shè)備樹sound節(jié)點(diǎn):

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

imx-wm8960.c驅(qū)動文件的.compatible屬性:

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

3、總結(jié)

設(shè)備樹sound節(jié)點(diǎn)下compatible屬性對應(yīng)音頻驅(qū)動文件imx-wm8960.c里的.compatible,由此設(shè)備與驅(qū)動便有了聯(lián)系,驅(qū)動就可以在設(shè)備節(jié)點(diǎn)獲取關(guān)鍵字model,cpu-dai等信息。

當(dāng)換成其他音頻芯片時(shí),修改設(shè)備樹compatible屬性值即可修改音頻設(shè)備的配置也變得簡單起來,這也是Linux分離出設(shè)備樹的主要原因。

本文提供的方法是在屏蔽默認(rèn)音頻設(shè)備的前提下進(jìn)行的,想要實(shí)現(xiàn)雙路音頻輸出還需要在其他環(huán)節(jié)進(jìn)行配置。以上就是在OKMX8MM-C開發(fā)板的I2C3掛載wm8960音頻芯片并通過SAI1連接傳輸音頻數(shù)據(jù)的操作過程,希望能夠?qū)ζ聊磺暗母魑?a target="_blank">工程師小伙伴有所幫助。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    8967

    瀏覽量

    365036
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18817

    瀏覽量

    298553
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207912
收藏 人收藏

    評論

    相關(guān)推薦

    優(yōu)秀實(shí)踐:I3C共享總線上的I2C器件

    電子發(fā)燒友網(wǎng)站提供《優(yōu)秀實(shí)踐:I3C共享總線上的I2C器件.pdf》資料免費(fèi)下載
    發(fā)表于 09-06 09:49 ?0次下載
    優(yōu)秀實(shí)踐:<b class='flag-5'>I3C</b>共享總線上的<b class='flag-5'>I2C</b>器件

    stm32mp135 i2c3無法正常probe怎么解決?

    /board/stmicroelectronics/stm32mp1/linux-dts/stm32mp135f-dk-mx.dts)。 我一共使用了3i2c,i21,i2c3
    發(fā)表于 07-05 07:30

    Linux平臺移植音頻芯片實(shí)戰(zhàn)記錄

    本文詳細(xì)記錄在NXP I.MX6ULL+Linux平臺下進(jìn)行WM8960音頻芯片移植的過程,其他平臺操作方法類似,希望為大家提供幫助。
    的頭像 發(fā)表于 05-17 14:28 ?892次閱讀
    Linux平臺移植<b class='flag-5'>音頻芯片</b>實(shí)戰(zhàn)記錄

    淺析在NXP I.MX6ULL+Linux平臺下進(jìn)行WM8960音頻芯片移植的過程

    本文詳細(xì)記錄在NXP I.MX6ULL+Linux平臺下進(jìn)行WM8960音頻芯片移植的過程,其他平臺操作方法類似,希望為大家提供幫助。
    的頭像 發(fā)表于 05-17 11:33 ?883次閱讀
    淺析在NXP <b class='flag-5'>I</b>.MX6ULL+Linux平臺下進(jìn)行<b class='flag-5'>WM8960</b><b class='flag-5'>音頻芯片</b>移植的過程

    stm32f2系列芯片I2C1和I2C3,為什么I2C3總是顯示總線繁忙?

    使用I2C1和I2C3分別讀兩個傳感器,其中I2C1可以正常讀傳感器,但是I2C3總是顯示總線繁忙,請問這是什么原因?該怎么解決?
    發(fā)表于 04-11 06:32

    技術(shù)帖 | 嵌入式T113-i開發(fā)板的休眠及喚醒操作

    嵌入式OK113i-S開發(fā)板支持兩種休眠方式:freeze和mem。本篇內(nèi)容小編會為大家介紹如何讓嵌入式OK113
    的頭像 發(fā)表于 12-29 08:02 ?1031次閱讀
    技術(shù)帖 | <b class='flag-5'>飛</b><b class='flag-5'>凌</b>嵌入式T113-<b class='flag-5'>i</b>開發(fā)板的休眠及喚醒操作

    OK113i-S開發(fā)板試用】開機(jī)測評--軟件測試篇

    OK113i-S開發(fā)板試用】開機(jī)測評--軟件測試篇 OK113i-S開發(fā)板開機(jī)就可以進(jìn)
    發(fā)表于 12-25 11:03

    OK113i-S開發(fā)板試用】開機(jī)測評--硬件篇

    OK113i-S開發(fā)板試用】開機(jī)測評--硬件篇 一,開箱見圖 包裝精致 注意:上面紅黃的先是本人接上的 配了電源線和一根usb線一根天線 OK113i-S開發(fā)板采用核心板+底板的
    發(fā)表于 12-24 20:51

    OK113i-C全志T113-i開發(fā)板rtl8723du WIFI功能測試及藍(lán)牙驅(qū)動移植

    OK113i-C 全志T113-i開發(fā)板板載一個RTL8723du wifi/藍(lán)牙二合一模塊,板子出廠已經(jīng)移植好了WIFI驅(qū)動但是藍(lán)牙驅(qū)動沒有,所以這篇文章我們主要做藍(lán)牙驅(qū)動的移
    的頭像 發(fā)表于 12-11 13:52 ?1937次閱讀

    求助,有沒有WM8978相同功能的音頻芯片推薦?

    大家好。有沒有WM8978相同功能的音頻芯片推薦?
    發(fā)表于 11-29 06:21

    低功耗音頻編解碼器ES8336規(guī)格書

    順芯ES8336音頻芯片,采用I2S接口,廣泛應(yīng)用于筆記本電腦、迷你PC等產(chǎn)品上 系統(tǒng) ?高性能、低功耗的多位Δ-∑音頻ADC和DAC ?
    發(fā)表于 11-27 11:36 ?5次下載

    i.MX6ULL--ElfBoard 音頻接口介紹及音頻接口問題排查思路

    供電是否正常,是否欠壓過壓,上電是否有跌坑; (2音頻芯片通過I2C 通信,檢查核心板是否能讀到音頻芯片(如果有驅(qū)動看驅(qū)動能否正常加載,沒驅(qū)動用
    發(fā)表于 10-25 13:38

    麒麟a2是手環(huán)芯片嗎 麒麟a2芯片是不是最新的芯片

    A2音頻芯片集成了雙DSP處理單元,算力性能相比麒麟A1芯片提升2倍,強(qiáng)大算力的高性能音頻處理單元,使得高保真
    的頭像 發(fā)表于 10-17 16:36 ?975次閱讀

    麒麟a2芯片是哪年生產(chǎn)的 麒麟a2芯片是什么級別

    麒麟a2芯片是哪年生產(chǎn)的 麒麟A2是華為旗下的音頻芯片,2023年9月25日,華為FreeBuds Pro 3正式發(fā)布,該產(chǎn)品內(nèi)置支持Pol
    的頭像 發(fā)表于 10-17 16:31 ?1023次閱讀

    華為、炬芯、杰理新品不斷,藍(lán)牙音頻芯片迎來爆發(fā)點(diǎn)?

    TWS耳機(jī),直播麥克風(fēng)芯片隨著視頻直播的興起也迎來發(fā)展機(jī)遇。近期,華為、炬芯、杰理都帶來了各自的音頻芯片新品。 ? 華為麒麟A2 9月25日,華為在秋季全場景新品發(fā)布會上發(fā)布新一代旗艦TWS耳機(jī)FreeBuds Pro
    的頭像 發(fā)表于 10-11 00:21 ?3407次閱讀