[meta-freescale] [meta-fsl-arm][PATCH 2/2] PulseAudio: Add patch and configuration for PulseAudio

Yuqing Zhu b54851 at freescale.com
Thu Jul 23 06:31:37 PDT 2015


-Undef HAVE_PTHREAD_PRIO_INHERIT to fix PulseAudio mutex issue when do pause in gstreamer

-Ignore volume when switch on to fix no sound after plugin/plugout headphone and
 remain the volume same as the asound state

-Revert "launch: Avoid specifically starting PA adn rely on
 autospawn/socket activation"

-Remove the control for speaker/headphone widget

Signed-off-by: Yuqing Zhu <b54851 at freescale.com>
---
 ...dio-mutex-issue-when-do-pause-in-gstreame.patch |  34 +++++
 ...here-is-no-sound-after-plugin-plugout-hea.patch | 127 +++++++++++++++
 ...ch-Avoid-specifically-starting-PA-and-rel.patch |  31 ++++
 .../pulseaudio/pulseaudio/daemon.conf              |  87 +++++++++++
 .../pulseaudio/pulseaudio/default.pa               | 170 +++++++++++++++++++++
 ...e-the-control-for-speaker-headphone-widge.patch |  73 +++++++++
 .../pulseaudio/pulseaudio_%.bbappend               |  24 ++-
 7 files changed, 545 insertions(+), 1 deletion(-)
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/0002-Fix-issue-there-is-no-sound-after-plugin-plugout-hea.patch
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/0002-Revert-launch-Avoid-specifically-starting-PA-and-rel.patch
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/daemon.conf
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/default.pa
 create mode 100644 recipes-multimedia/pulseaudio/pulseaudio/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch

diff --git a/recipes-multimedia/pulseaudio/pulseaudio/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch b/recipes-multimedia/pulseaudio/pulseaudio/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch
new file mode 100644
index 0000000..67bc46f
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch
@@ -0,0 +1,34 @@
+From c21e24f5c53e81fc715905c54a6c82b69e397e63 Mon Sep 17 00:00:00 2001
+From: "shengjiu.wang" <b02247 at freescale.com>
+Date: Thu, 3 Apr 2014 14:22:02 +0800
+Subject: [PATCH] Fix pulseaudio mutex issue when do pause in gstreamer
+
+The error log is "Assertion 'pthread_mutex_unlock(&m->mutex) == 0'
+failed at pulsecore/mutex-posix.c:106, function pa_mutex_unlock(). Aborting"
+
+This fix is a workaround base on the solution from this link "
+https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/932096"
+
+Upstream status: N/A
+  - It is i.MX specific
+
+Signed-off-by: shengjiu.wang <b02247 at freescale.com>
+---
+ src/pulsecore/mutex-posix.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/pulsecore/mutex-posix.c b/src/pulsecore/mutex-posix.c
+index 36c2787..d592501 100644
+--- a/src/pulsecore/mutex-posix.c
++++ b/src/pulsecore/mutex-posix.c
+@@ -30,6 +30,7 @@
+ #include <pulsecore/macro.h>
+ 
+ #include "mutex.h"
++#undef HAVE_PTHREAD_PRIO_INHERIT
+ 
+ struct pa_mutex {
+     pthread_mutex_t mutex;
+-- 
+1.7.9.5
+
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/0002-Fix-issue-there-is-no-sound-after-plugin-plugout-hea.patch b/recipes-multimedia/pulseaudio/pulseaudio/0002-Fix-issue-there-is-no-sound-after-plugin-plugout-hea.patch
new file mode 100644
index 0000000..7efe283
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/0002-Fix-issue-there-is-no-sound-after-plugin-plugout-hea.patch
@@ -0,0 +1,127 @@
+From 7dfff7e62296779dca9831598af082ee72bfed41 Mon Sep 17 00:00:00 2001
+From: Shengjiu Wang <b02247 at freescale.com>
+Date: Mon, 5 May 2014 14:21:16 +0800
+Subject: [PATCH] Fix issue: there is no sound after plugin/plugout headphone
+
+In default config, when switching headphone with speaker, the unused one will
+be switch off. And pulseaudio will store the setting in the database for
+restore, when switch back to the output path.
+But the core-subscribe.c has a defer queue for these event, like sink|new,
+sink|change, which will read the current switch status and store it in
+the database. because it is a defer queue, So sometimes, the stored status is
+changed don't as user's requirement. below is the call flow.
+
+init:
+        store on for speaker to database.
+        store on for headphone to database.
+---Activating analog-output-speaker
+	switch on speaker
+	switch off headphone
+----headphone plugin
+   ---analog-output-speaker status no
+   ---Activating analog-output
+      Queued event (SINK|CHANGE|0)
+      switch off speaker
+      switch off headphone
+   ---analog-output-headphone status yes
+   ---Activating analog-output-headphone
+      switch off speaker
+      switch off headphone
+      Dispatched event (SINK|CHANGE|0)
+       store off for headphone to database.
+
+I think it is pulseaudio's issue, So here I just workaround it by change the
+config file.
+
+Another change is remain the volume same as the asound.state.
+
+Upstream Status: N/A
+  - It is i.Mx specific 
+
+Signed-off-by: Shengjiu Wang <b02247 at freescale.com>
+---
+ .../alsa/mixer/paths/analog-output-headphones.conf |    8 ++++----
+ .../alsa/mixer/paths/analog-output-speaker.conf    |    8 ++++----
+ src/modules/alsa/mixer/paths/analog-output.conf    |    8 ++++----
+ 3 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/src/modules/alsa/mixer/paths/analog-output-headphones.conf b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+index b1a349a..7bfa79e 100644
+--- a/src/modules/alsa/mixer/paths/analog-output-headphones.conf
++++ b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+@@ -63,8 +63,8 @@ volume = off
+ 
+ [Element Headphone]
+ required-any = any
+-switch = mute
+-volume = merge
++switch = on
++volume = ignore
+ override-map.1 = all
+ override-map.2 = all-left,all-right
+ 
+@@ -86,8 +86,8 @@ switch = mute
+ volume = zero
+ 
+ [Element Speaker]
+-switch = off
+-volume = off
++switch = on
++volume = ignore
+ 
+ [Element Desktop Speaker]
+ switch = off
+diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker.conf b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+index d79fad1..eae40a0 100644
+--- a/src/modules/alsa/mixer/paths/analog-output-speaker.conf
++++ b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+@@ -62,8 +62,8 @@ volume = off
+ ; This profile path is intended to control the speaker, let's mute headphones
+ ; else there will be a spike when plugging in headphones
+ [Element Headphone]
+-switch = off
+-volume = off
++switch = on
++volume = ignore
+ 
+ [Element Headphone2]
+ switch = off
+@@ -71,8 +71,8 @@ volume = off
+ 
+ [Element Speaker]
+ required-any = any
+-switch = mute
+-volume = merge
++switch = on
++volume = ignore
+ override-map.1 = all
+ override-map.2 = all-left,all-right
+ 
+diff --git a/src/modules/alsa/mixer/paths/analog-output.conf b/src/modules/alsa/mixer/paths/analog-output.conf
+index 3a552c9..bd5c12b 100644
+--- a/src/modules/alsa/mixer/paths/analog-output.conf
++++ b/src/modules/alsa/mixer/paths/analog-output.conf
+@@ -53,16 +53,16 @@ switch = off
+ ; headphones. But it should not hurt if we leave the headphone jack
+ ; enabled nonetheless.
+ [Element Headphone]
+-switch = mute
+-volume = zero
++switch = on
++volume = ignore
+ 
+ [Element Headphone2]
+ switch = mute
+ volume = zero
+ 
+ [Element Speaker]
+-switch = mute
+-volume = off
++switch = on
++volume = ignore
+ 
+ [Element Desktop Speaker]
+ switch = mute
+-- 
+1.7.9.5
+
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/0002-Revert-launch-Avoid-specifically-starting-PA-and-rel.patch b/recipes-multimedia/pulseaudio/pulseaudio/0002-Revert-launch-Avoid-specifically-starting-PA-and-rel.patch
new file mode 100644
index 0000000..37ae387
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/0002-Revert-launch-Avoid-specifically-starting-PA-and-rel.patch
@@ -0,0 +1,31 @@
+From 5760c6b1a3c9b6dd8e70c9d1ea78fcf192250b4a Mon Sep 17 00:00:00 2001
+From: Shengjiu Wang <shengjiu.wang at freescale.com>
+Date: Mon, 16 Mar 2015 15:30:11 +0800
+Subject: [PATCH] Revert "launch: Avoid specifically starting PA and rely on
+ autospawn/socket activation"
+
+This reverts commit 42156d2b5ac797e5f28f8d0d38b691053f3f6fc7.
+
+Upstream status: Inappropriate [i.MX specifiec] 
+
+Signed-off-by: shengjiu.wang <b02247 at freescale.com>
+---
+ src/daemon/start-pulseaudio-x11.in |    2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/daemon/start-pulseaudio-x11.in b/src/daemon/start-pulseaudio-x11.in
+index 16e46b1..e108645 100755
+--- a/src/daemon/start-pulseaudio-x11.in
++++ b/src/daemon/start-pulseaudio-x11.in
+@@ -17,6 +17,8 @@
+ 
+ set -e
+ 
++ at PA_BINARY@ --start "$@"
++
+ if [ x"$DISPLAY" != x ] ; then
+ 
+     @PACTL_BINARY@ load-module module-x11-publish "display=$DISPLAY" > /dev/null
+-- 
+1.7.9.5
+
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/daemon.conf b/recipes-multimedia/pulseaudio/pulseaudio/daemon.conf
new file mode 100644
index 0000000..54854eb
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/daemon.conf
@@ -0,0 +1,87 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; daemonize = no
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+; system-instance = no
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+; realtime-scheduling = yes
+; realtime-priority = 5
+
+exit-idle-time = -1
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+; log-target = auto
+; log-level = notice
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = ffmpeg
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+; alternate-sample-rate = 48000
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
+
+; enable-deferred-volume = yes
+; deferred-volume-safety-margin-usec = 8000
+; deferred-volume-extra-delay-usec = 0
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/default.pa b/recipes-multimedia/pulseaudio/pulseaudio/default.pa
new file mode 100644
index 0000000..83a6ba8
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/default.pa
@@ -0,0 +1,170 @@
+#!/usr/bin/pulseaudio -nF
+#
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Should be after module-*-restore but before module-*-detect
+load-module module-switch-on-port-available
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
+#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect tsched=0
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+#load-module module-zeroconf-publish
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+# X11 modules should not be started from default.pa so that one daemon
+# can be shared by multiple sessions.
+
+### Load X11 bell module
+#load-module module-x11-bell sample=bell-windowing-system
+
+### Register ourselves in the X11 session manager
+#load-module module-x11-xsmp
+
+### Publish connection data in the X11 root window
+#.ifexists module-x11-publish.so
+#.nofail
+#load-module module-x11-publish
+#.fail
+#.endif
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch b/recipes-multimedia/pulseaudio/pulseaudio/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
new file mode 100644
index 0000000..2ac3bac
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
@@ -0,0 +1,73 @@
+From 015e048d3662b9f82e9aa5cd04d7c9de4eadb68d Mon Sep 17 00:00:00 2001
+From: Shengjiu Wang <shengjiu.wang at freescale.com>
+Date: Mon, 30 Mar 2015 10:26:14 +0800
+Subject: [PATCH] pulseaudio: remove the control for speaker/headphone widget
+
+In imx7d-sdb, there is no headphone jack, the jack detection is done
+by the codec itself. When headphone plugin, pulseaudio can't detect
+the headphone jack status, so it will set the heaphone volume to zero.
+Here fix this issue by remove the control in configuration.
+
+Upstream Status: Inappropriate [i.MX specific]
+
+Signed-off-by: Shengjiu Wang <shengjiu.wang at freescale.com>
+---
+ .../alsa/mixer/paths/analog-output-headphones.conf |    8 ++++----
+ .../alsa/mixer/paths/analog-output-speaker.conf    |    8 ++++----
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/src/modules/alsa/mixer/paths/analog-output-headphones.conf b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+index b6ee70b..a617976 100644
+--- a/src/modules/alsa/mixer/paths/analog-output-headphones.conf
++++ b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+@@ -81,8 +81,8 @@ override-map.2 = all-left,all-right
+ 
+ [Element Headphone]
+ required-any = any
+-switch = mute
+-volume = merge
++switch = on
++volume = ignore
+ override-map.1 = all
+ override-map.2 = all-left,all-right
+ 
+@@ -105,8 +105,8 @@ switch = mute
+ volume = zero
+ 
+ [Element Speaker]
+-switch = off
+-volume = off
++switch = on
++volume = ignore
+ 
+ [Element Desktop Speaker]
+ switch = off
+diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker.conf b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+index 39193dd..34bbb85 100644
+--- a/src/modules/alsa/mixer/paths/analog-output-speaker.conf
++++ b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+@@ -73,8 +73,8 @@ volume = off
+ ; This profile path is intended to control the speaker, let's mute headphones
+ ; else there will be a spike when plugging in headphones
+ [Element Headphone]
+-switch = off
+-volume = off
++switch = on
++volume = ignore
+ 
+ [Element Headphone2]
+ switch = off
+@@ -93,8 +93,8 @@ override-map.2 = all-left,all-right
+ 
+ [Element Speaker]
+ required-any = any
+-switch = mute
+-volume = merge
++switch = on
++volume = ignore
+ override-map.1 = all
+ override-map.2 = all-left,all-right
+ 
+-- 
+1.7.9.5
+
diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index b9acb36..4a04445 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,4 +1,26 @@
-
 CACHED_CONFIGUREVARS_append_mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"
 
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI_append = " file://daemon.conf \
+        file://default.pa \
+        file://0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch \
+        file://0002-Revert-launch-Avoid-specifically-starting-PA-and-rel.patch \
+"
+
+SRC_URI_append_mx7 = " file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch "
+
+do_install_append() {
+    install -m 0644 ${WORKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf
+    install -m 0644 ${WORKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa
+
+    #Fix me: Remove the kde desktop, because there are two destop in default
+    #        (pulseaudio-kde.destop, pulseaudio.destop), then the pulseaudio server
+    #        will be started twice, pulseaudio will have issue to switch to default input/output.
+    if [ -e ${D}${sysconfdir}/xdg/autostart/pulseaudio-kde.desktop ]
+    then
+        rm ${D}${sysconfdir}/xdg/autostart/pulseaudio-kde.desktop
+    fi
+}
+
 PACKAGE_ARCH_mx6 = "${MACHINE_SOCARCH}"
-- 
1.9.1



More information about the meta-freescale mailing list