原文:Linux USB 3.0驅動分析(七)——UAC驅動分析

因為項目里面有USB音頻外設,所以需要分析一下UAC驅動。 USB Audio Class,USB音頻類,一個像USB這樣的通用數據接口,可以有很多種實現數字音頻數據傳輸的方式。不同的開發者可以根據自己的喜好和需求,定義任意的控制方式,傳輸模式,音頻格式等等參數。 一.UAC驅動初始化分析 代碼路徑:sound usb card.c 我們先來看看初始化部分,主要是初始化usb audio dri ...

2021-01-15 14:34 0 1606 推薦指數:

查看詳情

Linux USB 3.0驅動分析(十)——Gadget UAC2驅動分析

本文分析的是linux-5.4.3 一.Gadget Audio設備驅動分析 drivers/usb/gadget/legacy/audio.c 因為項目的問題, 了解usb音頻設備的工作原理,為啥它能讓PC識別成“speak”或者“mic”,以及你能夠 ...

Fri Feb 05 01:00:00 CST 2021 0 770
Linux USB 3.0驅動分析(八)——Gadget UDC驅動分析

一.概述 Gadget USB設備控制器(UDC)驅動指的是作為其他USB主機控制器外設的USB硬件設備上底層硬件控制器的驅動,該硬件和驅動負責將一個USB設備依附於一個USB主機控制器上。例如,當某運行Linux系統的手機作為PC的U盤時,手機中的底層USB控制器行使USB設備 ...

Fri Feb 05 00:59:00 CST 2021 0 1571
Linux USB 3.0驅動分析(五)——USB Hub代碼分析

本文分析的是linux-5.4.3 一、LinuxUSB Hub熱插拔處理 1、 LinuxUSB HUB的驅動的實現和分析: 在系統初始化的時候在usb_init函數中調用usb_hub_init函數,就進入了hub的初始化。 代碼路徑 ...

Fri Jan 15 22:32:00 CST 2021 0 1650
Linux USB 3.0驅動分析(四)—— USB Core分析

一.拓撲結構 ·之所以要規定這個樹形拓撲結構是為了避免環形連接。 ·一條USB總線有且只有一個USBHost,對應一個RootHub ·USB設備分為兩類,Hub和Functions,Hub通過端口Port連接更多USB設備,Functions即USB外接從設備。 ·層次最多7層 ...

Fri Jan 15 22:30:00 CST 2021 0 936
Linux USB 3.0驅動分析(一)—— USB設備基礎概念

一.基礎概念 在終端用戶看來,USB設備為主機提供了多種多樣的附加功能,如文件傳輸,聲音播放等,但對USB主機來說,它與所有USB設備的接口都是一致的。一個USB設備由3個功能模塊組成:USB總線接口、USB邏輯設備和功能單元: a -- 這里的USB總線接口指的是USB設備中的串行接口引擎 ...

Thu Dec 31 01:39:00 CST 2020 0 813
Linux USB 3.0驅動分析(十一)——Gadget設備枚舉分析

一.URT介紹 前面介紹了Linux USB Gadget的軟件結構與各軟件層的整合過程。經過各種注冊函數,Gadget功能驅動層,USB設備層與UDC底層結合在了一起形成了一個完整的USB設備。而這個設備已經准備好了接受主機的枚舉。在介紹USB設備枚舉之前。先熟悉一下各層通信所用 ...

Fri Feb 05 01:02:00 CST 2021 0 758
Linux USB 3.0驅動分析(三)—— 分析USB 儲存驅動程序

前面學習了USB驅動的一些基礎概念與重要的數據結構,那么究竟如何編寫一個USB 驅動程序呢?編寫與一個USB設備驅動程序的方法和其他總線驅動方式類似,驅動程序把驅動程序對象注冊到USB子系統中,稍后再使用制造商和設備標識來判斷是否安裝了硬件。當然,這些制造商和設備標識需要我們編寫進USB ...

Thu Dec 31 01:42:00 CST 2020 0 771
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM