[pulseaudio-discuss] [PATCH v2 14/14] bluetooth: Allow policy module to pick 'off' profile
Luiz Augusto von Dentz
luiz.dentz at gmail.com
Wed Sep 10 02:48:37 PDT 2014
From: Luiz Augusto von Dentz <luiz.von.dentz at intel.com>
This allow 'off' profile to be choosen when no other profile is available
which is considered better since it requires less resources than other
profiles.
---
src/modules/bluetooth/module-bluetooth-policy.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/modules/bluetooth/module-bluetooth-policy.c b/src/modules/bluetooth/module-bluetooth-policy.c
index 8bbda3d..9746332 100644
--- a/src/modules/bluetooth/module-bluetooth-policy.c
+++ b/src/modules/bluetooth/module-bluetooth-policy.c
@@ -143,12 +143,9 @@ static pa_card_profile *find_best_profile(pa_card *card) {
void *state;
pa_card_profile *profile;
pa_card_profile *result = card->active_profile;
- pa_card_profile *off;
-
- pa_assert_se(off = pa_hashmap_get(card->profiles, "off"));
PA_HASHMAP_FOREACH(profile, card->profiles, state) {
- if (profile->available == PA_AVAILABLE_NO || profile == off)
+ if (profile->available == PA_AVAILABLE_NO)
continue;
if (result == NULL ||
@@ -157,7 +154,7 @@ static pa_card_profile *find_best_profile(pa_card *card) {
result = profile;
}
- return result ? result : off;
+ return result;
}
static pa_hook_result_t profile_available_hook_callback(pa_core *c, pa_card_profile *profile, void *userdata) {
@@ -170,6 +167,8 @@ static pa_hook_result_t profile_available_hook_callback(pa_core *c, pa_card_prof
pa_assert(profile);
pa_assert_se((card = profile->card));
+ pa_log_debug("Card '%s' profile '%s' available '%u'", card->name, profile->name, profile->available);
+
/* Only consider bluetooth cards */
s = pa_proplist_gets(card->proplist, PA_PROP_DEVICE_BUS);
if (!s || !pa_streq(s, "bluetooth"))
--
1.9.3
More information about the pulseaudio-discuss
mailing list