チップ内でSGTL5000オーディオをルーティングする方法は?

チップ内でSGTL5000オーディオをルーティングする方法は?

SPIを介してiMX8 CPUに接続されたsgtl5000オーディオコーデックを含む内蔵デバイスがあります。

データシートによれば、LINE_INからHP_OUTへの直接パスがあり、SPI接続を介してサウンドがCPUに転送されるのを防ぎます。 データシートのブロック図

ALSA / alsamixerを使用してこのルーティングを実行できますか?それともカーネルを通過するオーディオストリームに制限されていますか?


を使用すると、amixer次のことがわかります。

root@test217:~# amixer 
Simple mixer control 'Headphone',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 127
  Mono:
  Front Left: Playback 89 [70%] [-7.00dB] [on]
  Front Right: Playback 89 [70%] [-7.00dB] [on]
Simple mixer control 'Headphone Mux',0
  Capabilities: enum
  Items: 'DAC' 'LINE_IN'
  Item0: 'DAC'
...

Headphone Mux>>からに切り替えることができるコマンドは何ですか?Item0DACLINE_IN

答え1

必要なもの(2つのマルチプレクサ動作)を実装する部分は、amixerコマンド自体を使用して実行できるようです。

root@test217:~# amixer sset 'Headphone Mux' 'LINE_IN'
Simple mixer control 'Headphone Mux',0
  Capabilities: enum
  Items: 'DAC' 'LINE_IN'
  Item0: 'LINE_IN'
root@test217:~# amixer sset 'Capture Mux' 'MIC_IN'
Simple mixer control 'Capture Mux',0
  Capabilities: enum
  Items: 'MIC_IN' 'LINE_IN'
  Item0: 'MIC_IN'

スピーカーが使えないのでまだ確認していません。

関連情報