多個codec使用同乙份驅動

2021-09-29 08:47:52 字數 831 閱讀 2509

一般來說,消費電子產品比如智慧型電視和音箱只有立體聲兩個喇叭,硬體上只需要乙個codec晶元即能滿足要求,有時需要做多聲道,這時候可能就用到多個codec晶元了,如果是不同的codec晶元,則分別編寫對應的驅動即可,如果用的都是同一款晶元,那麼就只需要乙份驅動即可,方法也簡單。

tas5805m_2c: tas5805m_2c@2c ;

tas5805m_2d: tas5805m_2d@2d ;

tas5805m_2e: tas5805m_2e@2e ;

在系統啟動時,i2c匯流排會在dts裝置樹種尋找和of_match_table匹配的裝置,如果匹配成功,將會呼叫codec驅動中註冊的i2c的probe介面,做裝置的初始化工作。

所以在dts裡新增的codec 裝置裡compatible 和要與驅動中註冊的i2c_device_id與of_device_id中的compatible欄位一致,否則會導致註冊失敗,接著來看codec驅動中要新增的部分

static const struct i2c_device_id tas5805m_i2c_id = ,

+ ,+ ,

+ , {}

}; @@ -660,7 +662,9 @@ module_device_table(i2c, tas5805m_i2c_id);

#ifdef config_of

static const struct of_device_id tas5805m_of_match = ,

+ ,+ ,

+ , {}

};

這樣也就等於3個裝置將分別呼叫一次驅動中的probe介面進行初始化

乙份Cocoapods支援多個target

我們都知道,xcode新建的乙個project,可以包含對個target,預設包含了乙個與project同名的target,有時候我們可能會在原來的基礎上新增多個target 如下圖 但是我們卻發現在新增加的target的控制器檔案下匯入不了pods下的第三方庫 現在在新建的target下匯入svp...

深度工作 充分使用每乙份腦力

浮躁已經成了普遍的社會現象。判斷乙個人是否浮躁非常容易,看他一天主動拿起手機的次數就可以了。據ted的演講者說,這個值一般是50次,除了8小時的睡覺之外,基本上每20分鐘就要去翻翻手機。我們還發現,幾乎同時畢業的同學,在工作幾年後會產生巨大的差距,有的人已經能夠管理上百人的大團隊,而有的人甚至連自己...

同乙個電腦使用多份金鑰檔案繫結多個帳號

需求描述 本人註冊乙個github賬戶,用來分享本人自己的開源專案或者 同時,公司註冊了乙個github賬戶,用來分享公司的開源專案。如果按照單個ssh公鑰生成的方法則會把之前的公鑰覆蓋掉,這樣將導致其中一方在下一次上傳 本機和github無法對映成功。需求分析 解決這個問題首先要明確如何生成單個s...