diff options
| author | Tom Hochstein <tom.hochstein@nxp.com> | 2020-09-09 13:30:42 -0700 |
|---|---|---|
| committer | Otavio Salvador <otavio@ossystems.com.br> | 2020-09-23 23:42:37 -0300 |
| commit | 91a3a45f14eda2e2c0a79e7c9c69736cdc94fe5e (patch) | |
| tree | c71bff326f560e16891077a59cfdf056ea848bef | |
| parent | 8786908fcf68873179c831f0a2c928761de221a0 (diff) | |
| download | meta-freescale-91a3a45f14eda2e2c0a79e7c9c69736cdc94fe5e.tar.gz | |
alsa-lib: Add conf for i.MX XCVR sound card
For EARC iec958 plugin running on 8M Plus, we need to deploy
IMX-XCVR.conf in Yocto rootfs.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
| -rwxr-xr-x | recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch | 119 | ||||
| -rw-r--r-- | recipes-multimedia/alsa/alsa-lib_%.bbappend | 1 |
2 files changed, 120 insertions, 0 deletions
diff --git a/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch b/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch new file mode 100755 index 000000000..d72fb02c0 --- /dev/null +++ b/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch | |||
| @@ -0,0 +1,119 @@ | |||
| 1 | From 2fd2737a1a0553e164d1b4f78687edf573f8e621 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Viorel Suman <viorel.suman@nxp.com> | ||
| 3 | Date: Mon, 9 Mar 2020 14:25:46 +0200 | ||
| 4 | Subject: [PATCH] add conf for iMX XCVR sound card | ||
| 5 | |||
| 6 | Upstream Status: Pending | ||
| 7 | |||
| 8 | Signed-off-by: Viorel Suman <viorel.suman@nxp.com> | ||
| 9 | --- | ||
| 10 | src/conf/cards/IMX-XCVR.conf | 69 ++++++++++++++++++++++++++++++++++++++++++++ | ||
| 11 | src/conf/cards/Makefile.am | 3 +- | ||
| 12 | src/conf/cards/aliases.conf | 1 + | ||
| 13 | 3 files changed, 72 insertions(+), 1 deletion(-) | ||
| 14 | create mode 100755 src/conf/cards/IMX-XCVR.conf | ||
| 15 | |||
| 16 | diff --git a/src/conf/cards/IMX-XCVR.conf b/src/conf/cards/IMX-XCVR.conf | ||
| 17 | new file mode 100755 | ||
| 18 | index 0000000..ee323c7 | ||
| 19 | --- /dev/null | ||
| 20 | +++ b/src/conf/cards/IMX-XCVR.conf | ||
| 21 | @@ -0,0 +1,69 @@ | ||
| 22 | +# | ||
| 23 | +# Configuration for the IMX-XCVR sound card using software IEC958 | ||
| 24 | +# subframe conversion | ||
| 25 | +# | ||
| 26 | +IMX-XCVR.pcm.default { | ||
| 27 | + @args [ CARD ] | ||
| 28 | + @args.CARD { type string } | ||
| 29 | + type asym | ||
| 30 | + playback.pcm { | ||
| 31 | + type linear | ||
| 32 | + slave.pcm { | ||
| 33 | + @func concat | ||
| 34 | + strings [ "iec958:" $CARD ] | ||
| 35 | + } | ||
| 36 | + slave.format S24_LE | ||
| 37 | + } | ||
| 38 | + capture.pcm { | ||
| 39 | + type plug | ||
| 40 | + slave.pcm { | ||
| 41 | + @func concat | ||
| 42 | + strings [ "iec958:" $CARD ] | ||
| 43 | + } | ||
| 44 | + } | ||
| 45 | +} | ||
| 46 | + | ||
| 47 | +<confdir:pcm/iec958.conf> | ||
| 48 | + | ||
| 49 | +IMX-XCVR.pcm.iec958.0 { | ||
| 50 | + @args [ CARD AES0 AES1 AES2 AES3 ] | ||
| 51 | + @args.CARD { type string } | ||
| 52 | + @args.AES0 { type integer } | ||
| 53 | + @args.AES1 { type integer } | ||
| 54 | + @args.AES2 { type integer } | ||
| 55 | + @args.AES3 { type integer } | ||
| 56 | + type asym | ||
| 57 | + playback.pcm { | ||
| 58 | + type hooks | ||
| 59 | + slave.pcm { | ||
| 60 | + type hw | ||
| 61 | + card $CARD | ||
| 62 | + } | ||
| 63 | + hooks.0 { | ||
| 64 | + type ctl_elems | ||
| 65 | + hook_args [ | ||
| 66 | + { | ||
| 67 | + interface PCM | ||
| 68 | + name "IEC958 Playback Default" | ||
| 69 | + preserve true | ||
| 70 | + optional true | ||
| 71 | + value [ $AES0 $AES1 $AES2 $AES3 ] | ||
| 72 | + } | ||
| 73 | + ] | ||
| 74 | + } | ||
| 75 | + } | ||
| 76 | + capture.pcm { | ||
| 77 | + type iec958 | ||
| 78 | + slave { | ||
| 79 | + format IEC958_SUBFRAME_LE | ||
| 80 | + pcm { | ||
| 81 | + type plug | ||
| 82 | + slave.pcm { | ||
| 83 | + type hw | ||
| 84 | + card $CARD | ||
| 85 | + } | ||
| 86 | + } | ||
| 87 | + } | ||
| 88 | + status [ $AES0 $AES1 $AES2 $AES3 ] | ||
| 89 | + } | ||
| 90 | +} | ||
| 91 | diff --git a/src/conf/cards/Makefile.am b/src/conf/cards/Makefile.am | ||
| 92 | index 34fa5a3..70b9bab 100644 | ||
| 93 | --- a/src/conf/cards/Makefile.am | ||
| 94 | +++ b/src/conf/cards/Makefile.am | ||
| 95 | @@ -61,7 +61,8 @@ cfg_files = aliases.conf \ | ||
| 96 | VXPocket440.conf \ | ||
| 97 | CS42888.conf \ | ||
| 98 | IMX-HDMI.conf \ | ||
| 99 | - AK4458.conf | ||
| 100 | + AK4458.conf \ | ||
| 101 | + IMX-XCVR.conf | ||
| 102 | |||
| 103 | if BUILD_ALISP | ||
| 104 | cfg_files += aliases.alisp | ||
| 105 | diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf | ||
| 106 | index 5d92ac7..c195848 100644 | ||
| 107 | --- a/src/conf/cards/aliases.conf | ||
| 108 | +++ b/src/conf/cards/aliases.conf | ||
| 109 | @@ -60,6 +60,7 @@ VC4-HDMI cards.vc4-hdmi | ||
| 110 | cs42888-audio cards.CS42888 | ||
| 111 | imx-hdmi-soc cards.IMX-HDMI | ||
| 112 | ak4458-audio cards.AK4458 | ||
| 113 | +imx-audio-xcvr cards.IMX-XCVR | ||
| 114 | |||
| 115 | <confdir:pcm/default.conf> | ||
| 116 | <confdir:pcm/dmix.conf> | ||
| 117 | -- | ||
| 118 | 2.7.4 | ||
| 119 | |||
diff --git a/recipes-multimedia/alsa/alsa-lib_%.bbappend b/recipes-multimedia/alsa/alsa-lib_%.bbappend index 3bf3abffd..80c11f332 100644 --- a/recipes-multimedia/alsa/alsa-lib_%.bbappend +++ b/recipes-multimedia/alsa/alsa-lib_%.bbappend | |||
| @@ -4,6 +4,7 @@ IMX_PATCH = " \ | |||
| 4 | file://0001-add-conf-for-multichannel-support-in-imx.patch \ | 4 | file://0001-add-conf-for-multichannel-support-in-imx.patch \ |
| 5 | file://0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch \ | 5 | file://0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch \ |
| 6 | file://0005-add-ak4458-conf-for-multichannel-support.patch \ | 6 | file://0005-add-ak4458-conf-for-multichannel-support.patch \ |
| 7 | file://0006-add-conf-for-iMX-XCVR-sound-card.patch \ | ||
| 7 | " | 8 | " |
| 8 | SRC_URI_append_imx = "${IMX_PATCH}" | 9 | SRC_URI_append_imx = "${IMX_PATCH}" |
| 9 | 10 | ||
