[pulseaudio-discuss] [PATCH v2 00/22] Revisiting Bluetooth modules
Mikel Astiz
mikel.astiz.oss at gmail.com
Fri Aug 31 03:50:52 PDT 2012
From: Mikel Astiz <mikel.astiz at bmw-carit.de>
This patchset revisits the mapping between Bluetooth (BT) and PulseAudio (PA) states, as well as how the PA infrastructure and APIs fit the BT use-cases, including desktop and IVI use-cases. The topic has already been discussed several times in the mailing-list and IRC.
This third proposal (v2) basically includes bugfixes and minor refactorings.
The most relevant changes are:
1. Suspend case: now PA_SUSPEND_USER is used to represent audio stream is down (patches v2 12/22 and 15/22), instead of PA_SUSPEND_IDLE as in v1. The exception is when doing gateway role, where we start with PA_SUSPEND_IDLE (see patch v2 20/22).
2. Bug in patch v1 03/18: the patch was less trivial than it seemed first, and has now been rewriten into v2 11/22.
3. Patch v1 16/18 has been dropped since it's not essential now that PA_SUSPEND_USER is being used.
Therefore, the updated grouping of the patches would be as follows:
- Patches 1..9 propose minor changes, refactoring for later patches and some minor fixes (grouped in the beginning for readability).
- Patches 10..15 implement the new proposal for module-bluetooth-device. This is the main contribution of the patchset.
- Patches 16..21 focus on the integration with other modules.
- Patch 22 is experimental and should not be applied yet.
Looking forward for your comments.
Mikel Astiz (22):
bluetooth: Remove return value of bt_transport_config()
bluetooth: Remove return value of setup_stream()
bluetooth: Refactor code to helper function
bluetooth: Refactor parsing of signal PropertyChanged
bluetooth: Fix wrongly set "phone" role for HFGW
bluetooth: Fix using garbage memory
bluetooth: Fix check if transport exists before acquire
sink,source: Support creating suspended sinks and sources
bluetooth: Provide dummy set_port callbacks
bluetooth: Support port availability flag
bluetooth: Config MTU transport after acquire
bluetooth: Set profile even if transport not acquired
bluetooth: Do not acquire transport during profile change
bluetooth: Acquire transport when becomes available
bluetooth: Release transport when not available
bluetooth: Do not switch to HFGW automatically
bluetooth: Do not set profile in bluetooth-discover
bluetooth: Avoid suspend-on-idle for HFGW
bluetooth: Avoid suspend-on-idle for A2DP source
bluetooth: Let suspend-on-idle request audio in headset
bluetooth: Add port availability transition policies
bluetooth-experimental: Fix race condition using accesstype "?"
src/modules/bluetooth/bluetooth-util.c | 1 -
src/modules/bluetooth/module-bluetooth-device.c | 437 ++++++++++++++++-----
src/modules/bluetooth/module-bluetooth-discover.c | 14 -
src/modules/bluetooth/module-bluetooth-policy.c | 94 +++++-
src/pulsecore/sink.c | 7 +-
src/pulsecore/sink.h | 2 +
src/pulsecore/source.c | 7 +-
src/pulsecore/source.h | 2 +
8 files changed, 444 insertions(+), 120 deletions(-)
--
1.7.7.6
More information about the pulseaudio-discuss
mailing list