칩 내에서 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

필요한 것(두 개의 멀티플렉서 작동)을 구현하는 부분은 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'

스피커를 사용할 수 없기 때문에 아직 확인하지 않았습니다.

관련 정보