Extend the PipeWire recipe to add platform-specific ALSA configuration.
Add sink and source configuration for 8-channel audio playback and
capture on the AM62D2EVM as the default configuration is 2-channel.
Signed-off-by: Paresh Bhagat <[email protected]>
---
.../pipewire/pipewire-ti.inc | 20 +++++++++++++++++++
.../am62dxx-evm/90-pipewire-sink.conf | 17 ++++++++++++++++
.../am62dxx-evm/91-pipewire-source.conf | 17 ++++++++++++++++
.../pipewire/pipewire_%.bbappend | 4 ++++
4 files changed, 58 insertions(+)
create mode 100644
meta-ti-extras/recipes-multimedia/pipewire/pipewire-ti.inc
create mode 100644
meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf
create mode 100644
meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf
create mode 100644
meta-ti-extras/recipes-multimedia/pipewire/pipewire_%.bbappend
diff --git
a/meta-ti-extras/recipes-multimedia/pipewire/pipewire-ti.inc
b/meta-ti-extras/recipes-multimedia/pipewire/pipewire-ti.inc
new file mode 100644
index 00000000..65a82671
--- /dev/null
+++ b/meta-ti-extras/recipes-multimedia/pipewire/pipewire-ti.inc
@@ -0,0 +1,20 @@
+PR:append = ".ti0"
+
+FILESEXTRAPATHS:prepend := "${THISDIR}/pipewire:"
+
+# AM62D-specific config files
+SRC_URI:append:am62dxx-evm = " \
+ file://90-pipewire-sink.conf \
+ file://91-pipewire-source.conf \
+"
+
+do_install:append:am62dxx-evm() {
+ install -d ${D}${sysconfdir}/pipewire/pipewire.conf.d
+ install -m 0644 ${UNPACKDIR}/90-pipewire-sink.conf
${D}${sysconfdir}/pipewire/pipewire.conf.d/
+ install -m 0644 ${UNPACKDIR}/91-pipewire-source.conf
${D}${sysconfdir}/pipewire/pipewire.conf.d/
+}
+
+FILES:${PN}:append:am62dxx-evm = " \
+ ${sysconfdir}/pipewire/pipewire.conf.d/90-pipewire-sink.conf \
+ ${sysconfdir}/pipewire/pipewire.conf.d/91-pipewire-source.conf \
+"
diff --git
a/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf b/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf
new file mode 100644
index 00000000..857c344e
--- /dev/null
+++
b/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf
@@ -0,0 +1,17 @@
+# PipeWire sink configuration for AM62D.
+
+context.objects = [
+ {
+ factory = adapter
+ args = {
+ factory.name = api.alsa.pcm.sink
+ node.name = "alsa_audio_sink"
+ node.description = "Audio Output"
+ media.class = "Audio/Sink"
+ api.alsa.path = "hw:AM62D2EVM,0"
+ audio.rate = 48000
+ audio.channels = 8
+ audio.position = [ FL FR FC LFE RL RR SL SR ]
+ }
+ }
+]
diff --git
a/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf b/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf
new file mode 100644
index 00000000..ac7635de
--- /dev/null
+++
b/meta-ti-extras/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf
@@ -0,0 +1,17 @@
+# PipeWire source configuration for AM62D.
+
+context.objects = [
+ {
+ factory = adapter
+ args = {
+ factory.name = api.alsa.pcm.source
+ node.name = "alsa_audio_source"
+ node.description = "Audio Input"
+ media.class = "Audio/Source"
+ api.alsa.path = "hw:AM62D2EVM,0"
+ audio.rate = 48000
+ audio.channels = 8
+ audio.position = [ FL FR FC LFE RL RR SL SR ]
+ }
+ }
+]
diff --git
a/meta-ti-extras/recipes-multimedia/pipewire/pipewire_%.bbappend
b/meta-ti-extras/recipes-multimedia/pipewire/pipewire_%.bbappend
new file mode 100644
index 00000000..f806d28f
--- /dev/null
+++ b/meta-ti-extras/recipes-multimedia/pipewire/pipewire_%.bbappend
@@ -0,0 +1,4 @@
+PIPEWIRE_TI = ""
+PIPEWIRE_TI:ti-soc = "pipewire-ti.inc"
+
+require ${PIPEWIRE_TI}