diff mbox series

[master/wrynose,v2,1/2] pipewire: Add platform specific configuration

Message ID 20260923153904.2153823-2-p-bhagat@ti.com
State New
Headers show
Series Add configuration for pipewire | expand

Commit Message

Paresh Bhagat Sept. 23, 2026, 3:39 p.m. UTC
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 <p-bhagat@ti.com>
---
Moved pipewire recipe to dynamic layers.

 .../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-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire-ti.inc
 create mode 100644 meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf
 create mode 100644 meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf
 create mode 100644 meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
diff mbox series

Patch

diff --git a/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire-ti.inc b/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire-ti.inc
new file mode 100644
index 00000000..65a82671
--- /dev/null
+++ b/meta-ti-bsp/dynamic-layers/multimedia-layer/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-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf b/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/90-pipewire-sink.conf
new file mode 100644
index 00000000..857c344e
--- /dev/null
+++ b/meta-ti-bsp/dynamic-layers/multimedia-layer/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-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf b/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/am62dxx-evm/91-pipewire-source.conf
new file mode 100644
index 00000000..ac7635de
--- /dev/null
+++ b/meta-ti-bsp/dynamic-layers/multimedia-layer/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-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend b/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
new file mode 100644
index 00000000..f806d28f
--- /dev/null
+++ b/meta-ti-bsp/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
@@ -0,0 +1,4 @@ 
+PIPEWIRE_TI = ""
+PIPEWIRE_TI:ti-soc = "pipewire-ti.inc"
+
+require ${PIPEWIRE_TI}