mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
conf: topology: Add topology file for broadwell audio DSP
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
22603237b0
commit
00a51b5bac
5 changed files with 383 additions and 1 deletions
|
|
@ -663,6 +663,8 @@ AC_OUTPUT(Makefile doc/Makefile doc/pictures/Makefile doc/doxygen.cfg \
|
|||
src/conf/ucm/PAZ00/Makefile \
|
||||
src/conf/ucm/GoogleNyan/Makefile \
|
||||
src/conf/ucm/broadwell-rt286/Makefile \
|
||||
src/conf/topology/Makefile \
|
||||
src/conf/topology/broadwell/Makefile \
|
||||
modules/Makefile modules/mixer/Makefile modules/mixer/simple/Makefile \
|
||||
alsalisp/Makefile aserver/Makefile \
|
||||
test/Makefile test/lsb/Makefile \
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
SUBDIRS=cards pcm alsa.conf.d ucm
|
||||
SUBDIRS=cards pcm alsa.conf.d ucm topology
|
||||
|
||||
cfg_files = alsa.conf
|
||||
if BUILD_ALISP
|
||||
|
|
|
|||
1
src/conf/topology/Makefile.am
Normal file
1
src/conf/topology/Makefile.am
Normal file
|
|
@ -0,0 +1 @@
|
|||
SUBDIRS=broadwell
|
||||
4
src/conf/topology/broadwell/Makefile.am
Normal file
4
src/conf/topology/broadwell/Makefile.am
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
alsaconfigdir = @ALSA_CONFIG_DIR@
|
||||
topologydir = $(alsaconfigdir)/topology/broadwell
|
||||
topology_DATA = broadwell.conf
|
||||
EXTRA_DIST = $(topology_DATA)
|
||||
375
src/conf/topology/broadwell/broadwell.conf
Normal file
375
src/conf/topology/broadwell/broadwell.conf
Normal file
|
|
@ -0,0 +1,375 @@
|
|||
# Dynamic Firmware Configuration for Broadwell
|
||||
|
||||
# TLV
|
||||
SectionTLV."hsw_vol_tlv" {
|
||||
Comment "TLV used by both global and stream volumes"
|
||||
|
||||
scale {
|
||||
min "-9000"
|
||||
step "300"
|
||||
mute "1"
|
||||
}
|
||||
}
|
||||
|
||||
# Controls
|
||||
SectionControlMixer."Master Playback Volume" {
|
||||
Comment "Global DSP volume"
|
||||
|
||||
# control belongs to this index group
|
||||
index "1"
|
||||
|
||||
# Channel register and shift for Front Left/Right
|
||||
channel."FL" {
|
||||
reg "0"
|
||||
shift "0"
|
||||
}
|
||||
channel."FR" {
|
||||
reg "0"
|
||||
shift "8"
|
||||
}
|
||||
|
||||
# max control value and whether value is inverted
|
||||
max "31"
|
||||
invert "false"
|
||||
|
||||
# control uses bespoke driver get/put/info ID 0
|
||||
ops."ctl" {
|
||||
info "volsw"
|
||||
get "256"
|
||||
put "256"
|
||||
}
|
||||
|
||||
# uses TLV data above
|
||||
tlv "hsw_vol_tlv"
|
||||
}
|
||||
|
||||
SectionControlMixer."Media0 Playback Volume" {
|
||||
Comment "Offload 0 volume"
|
||||
|
||||
# control belongs to this index group
|
||||
index "1"
|
||||
|
||||
# Channel register and shift for Front Left/Right
|
||||
channel."FL" {
|
||||
reg "1"
|
||||
shift "0"
|
||||
}
|
||||
channel."FR" {
|
||||
reg "1"
|
||||
shift "8"
|
||||
}
|
||||
|
||||
# max control value and whether value is inverted
|
||||
max "31"
|
||||
invert "false"
|
||||
|
||||
# control uses bespoke driver get/put/info ID 0
|
||||
ops."ctl" {
|
||||
info "volsw"
|
||||
get "257"
|
||||
put "257"
|
||||
}
|
||||
|
||||
# uses TLV data above
|
||||
tlv "hsw_vol_tlv"
|
||||
}
|
||||
|
||||
SectionControlMixer."Media1 Playback Volume" {
|
||||
Comment "Offload 1 volume"
|
||||
|
||||
# control belongs to this index group
|
||||
index "1"
|
||||
|
||||
# Channel register and shift for Front Left/Right
|
||||
channel."FL" {
|
||||
reg "2"
|
||||
shift "0"
|
||||
}
|
||||
channel."FR" {
|
||||
reg "2"
|
||||
shift "8"
|
||||
}
|
||||
|
||||
# max control value and whether value is inverted
|
||||
max "31"
|
||||
invert "false"
|
||||
|
||||
# control uses bespoke driver get/put/info ID 0
|
||||
ops."ctl" {
|
||||
info "volsw"
|
||||
get "257"
|
||||
put "257"
|
||||
}
|
||||
|
||||
# uses TLV data above
|
||||
tlv "hsw_vol_tlv"
|
||||
}
|
||||
|
||||
SectionControlMixer."Mic Capture Volume" {
|
||||
Comment "Mic Capture volume"
|
||||
|
||||
# control belongs to this index group
|
||||
index "1"
|
||||
|
||||
# Channel register and shift for Front Left/Right
|
||||
channel."FL" {
|
||||
reg "0"
|
||||
shift "0"
|
||||
}
|
||||
channel."FR" {
|
||||
reg "0"
|
||||
shift "8"
|
||||
}
|
||||
|
||||
# max control value and whether value is inverted
|
||||
max "31"
|
||||
invert "false"
|
||||
|
||||
# control uses bespoke driver get/put/info ID 0
|
||||
ops."ctl" {
|
||||
info "volsw"
|
||||
get "257"
|
||||
put "257"
|
||||
}
|
||||
|
||||
# uses TLV data above
|
||||
tlv "hsw_vol_tlv"
|
||||
}
|
||||
|
||||
SectionWidget."SSP0 CODEC IN" {
|
||||
|
||||
index "1"
|
||||
type "aif_in"
|
||||
no_pm "true"
|
||||
shift "0"
|
||||
invert "0"
|
||||
}
|
||||
|
||||
SectionWidget."SSP0 CODEC OUT" {
|
||||
|
||||
index "1"
|
||||
type "aif_out"
|
||||
no_pm "true"
|
||||
shift "0"
|
||||
invert "0"
|
||||
}
|
||||
|
||||
SectionWidget."SSP1 BT IN" {
|
||||
|
||||
index "1"
|
||||
type "aif_in"
|
||||
no_pm "true"
|
||||
shift "0"
|
||||
invert "0"
|
||||
}
|
||||
|
||||
SectionWidget."SSP1 BT OUT" {
|
||||
|
||||
index "1"
|
||||
type "aif_out"
|
||||
no_pm "true"
|
||||
shift "0"
|
||||
invert "0"
|
||||
}
|
||||
|
||||
SectionWidget."Playback VMixer" {
|
||||
|
||||
index "1"
|
||||
type "mixer"
|
||||
no_pm "true"
|
||||
shift "0"
|
||||
invert "0"
|
||||
}
|
||||
|
||||
# PCM Configurations supported by FW
|
||||
SectionPCMConfig."PCM 48k Stereo 24bit" {
|
||||
|
||||
config."playback" {
|
||||
format "S24_LE"
|
||||
rate "48000"
|
||||
channels "2"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
|
||||
config."capture" {
|
||||
format "S24_LE"
|
||||
rate "48000"
|
||||
channels "2"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
}
|
||||
|
||||
SectionPCMConfig."PCM 48k Stereo 16bit" {
|
||||
|
||||
config."playback" {
|
||||
format "S16_LE"
|
||||
rate "48000"
|
||||
channels "2"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
|
||||
config."capture" {
|
||||
format "S16_LE"
|
||||
rate "48000"
|
||||
channels "2"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
}
|
||||
|
||||
SectionPCMConfig."PCM 48k 2P/4C 16bit" {
|
||||
|
||||
config."playback" {
|
||||
format "S16_LE"
|
||||
rate "48000"
|
||||
channels "2"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
|
||||
config."capture" {
|
||||
format "S16_LE"
|
||||
rate "48000"
|
||||
channels "4"
|
||||
tdm_slot "0xf"
|
||||
}
|
||||
}
|
||||
|
||||
# PCM capabilities supported by FW
|
||||
SectionPCMCapabilities."System Playback" {
|
||||
|
||||
formats "S24_LE,S16_LE"
|
||||
rate_min "48000"
|
||||
rate_max "48000"
|
||||
channels_min "2"
|
||||
channels_max "2"
|
||||
}
|
||||
|
||||
SectionPCMCapabilities."Analog Capture" {
|
||||
|
||||
formats "S24_LE,S16_LE"
|
||||
rate_min "48000"
|
||||
rate_max "48000"
|
||||
channels_min "2"
|
||||
channels_max "4"
|
||||
}
|
||||
|
||||
SectionPCMCapabilities."Loopback Capture" {
|
||||
|
||||
formats "S24_LE,S16_LE"
|
||||
rate_min "48000"
|
||||
rate_max "48000"
|
||||
channels_min "2"
|
||||
channels_max "2"
|
||||
}
|
||||
|
||||
SectionPCMCapabilities."Offload0 Playback" {
|
||||
formats "S24_LE,S16_LE"
|
||||
rate_min "8000"
|
||||
rate_max "192000"
|
||||
channels_min "2"
|
||||
channels_max "2"
|
||||
}
|
||||
|
||||
SectionPCMCapabilities."Offload1 Playback" {
|
||||
formats "S24_LE,S16_LE"
|
||||
rate_min "8000"
|
||||
rate_max "48000"
|
||||
channels_min "2"
|
||||
channels_max "2"
|
||||
}
|
||||
|
||||
# PCM devices exported by Firmware
|
||||
SectionPCM."System Pin" {
|
||||
|
||||
index "1"
|
||||
|
||||
# used for binding to the PCM
|
||||
ID "0"
|
||||
|
||||
pcm."playback" {
|
||||
|
||||
capabilities "System Playback"
|
||||
|
||||
configs [
|
||||
"PCM 48k Stereo 24bit"
|
||||
"PCM 48k Stereo 16bit"
|
||||
]
|
||||
}
|
||||
|
||||
pcm."capture" {
|
||||
|
||||
capabilities "Analog Capture"
|
||||
|
||||
configs [
|
||||
"PCM 48k Stereo 24bit"
|
||||
"PCM 48k Stereo 16bit"
|
||||
"PCM 48k 2P/4C 16bit"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
SectionPCM."Offload0 Pin" {
|
||||
|
||||
index "1"
|
||||
|
||||
# used for binding to the PCM
|
||||
ID "1"
|
||||
|
||||
pcm."playback" {
|
||||
|
||||
capabilities "Offload0 Playback"
|
||||
|
||||
configs [
|
||||
"PCM 48k Stereo 24bit"
|
||||
"PCM 48k Stereo 16bit"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
SectionPCM."Offload1 Pin" {
|
||||
|
||||
index "1"
|
||||
|
||||
# used for binding to the PCM
|
||||
ID "2"
|
||||
|
||||
pcm."playback" {
|
||||
|
||||
capabilities "Offload1 Playback"
|
||||
|
||||
configs [
|
||||
"PCM 48k Stereo 24bit"
|
||||
"PCM 48k Stereo 16bit"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
SectionPCM."Loopback Pin" {
|
||||
|
||||
index "1"
|
||||
|
||||
# used for binding to the PCM
|
||||
ID "3"
|
||||
|
||||
pcm."capture" {
|
||||
|
||||
capabilities "Loopback Capture"
|
||||
|
||||
configs [
|
||||
"PCM 48k Stereo 24bit"
|
||||
"PCM 48k Stereo 16bit"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
SectionGraph."dsp" {
|
||||
index "1"
|
||||
|
||||
lines [
|
||||
"Playback VMixer, , System Playback"
|
||||
"Playback VMixer, , Offload0 Playback"
|
||||
"Playback VMixer, , Offload1 Playback"
|
||||
"SSP0 CODEC OUT, , Playback VMixer"
|
||||
"Loopback Capture, , Playback VMixer"
|
||||
"Analog Capture, , SSP0 CODEC IN"
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue