summaryrefslogtreecommitdiff
path: root/Makefile.plugins
Commit message (Collapse)AuthorAgeFilesLines
* profiles: Add initial code for BASS pluginIulia Tanasescu2023-05-051-0/+5
| | | | This adds initial code for BASS plugin.
* profiles: Add initial code for csip pluginSathish Narasimman2023-03-101-0/+5
| | | | | | This adds initial code for csip plugin which handles Coordinated set identification Profile and Coordinated Set Identification Service.
* profiles: Add initial code for mcp pluginAbhay Maheta2022-10-181-0/+5
| | | | | | | | This adds initial code for mcp plugin which handles Media Control Profile and Generic Media Control Service for Client Role. The plugin exposes dbus methods for media control operations like play, pause which can be invoked using player menu in bluetoothctl.
* profiles: Add initial code for vcp pluginSathish Narasimman2022-09-191-0/+5
| | | | | This adds initial code for vcp plugin which handles Volume Control Profile and Volume Control Service.
* profiles: Add initial code for bap pluginLuiz Augusto von Dentz2022-08-291-0/+5
| | | | | | This adds initial code for bap plugin which handles Basic Audio Profile, Publish Audio Capabilities Service and Audio Stream Control Service.
* uhid: Remove local copy of uhid headerLuiz Augusto von Dentz2021-11-221-1/+1
| | | | | | uhid.h is part of kernel uapi nowadays so it can be included directly from linux/uhid.h so this removes the local copy to use it instead.
* plugins: new pluginYun-Hao Chung2021-08-041-0/+5
| | | | | | This adds an initial code for a new plugin admin. Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
* build: Fix undefined references when using slibtoolLuiz Augusto von Dentz2021-01-261-2/+1
| | | | gh issue: https://github.com/bluez/bluez/issues/86
* build: Add SPDX License IdentifierTedd Ho-Jeong An2020-09-211-1/+1
| | | | | | | | | | | | | | | | | This patch adds SPDX License Identifier and removes the license text. ------------------------------------- License COUNT ------------------------------------- GPL-2.0-or-later : 6 License: GPL-2.0-or-later Makefile.am Makefile.mesh Makefile.obexd Makefile.plugins Makefile.tools configure.ac
* build: Move $(UDEV_CFLAGS) to global $(AM_CFLAGS)Marcel Holtmann2018-12-031-1/+0
|
* build: add missing ALSA_CFLAGSJan Engelhardt2018-11-261-0/+1
| | | | Some targets use ALSA_LIBS, hence need ALSA_CFLAGS.
* build: -D/-I arguments go into CPPFLAGSJan Engelhardt2018-11-261-1/+2
| | | | | | | | | -D and -I are preprocessor directives, they are therefore to appear in CPPFLAGS, not CFLAGS. (It is unfortunate that pkg-config does not make the distinction / or it was misnamed, because only -D/-I make sense to be emitted by pkg-config in the first place — anything else (-f/-m) has the potential to mess up someone's compilation. So pkg-config's Cflags is actually used to convery Cppflags.)
* build: -l arguments to belong into LDADD/LIBADD not LDFLAGSJan Engelhardt2018-11-261-1/+2
| | | | | | It is an error to put -l arguments into LDFLAGS, because the linker command line is order-sensitive and libs must appear in certain places. For this, automake has the LDADD/LIBADD.
* build: change @foo@ to $(foo) in automake makefilesJan Engelhardt2018-11-261-3/+3
| | | | | | When using automake, all AC_SUBSTed variables are made available as make variables, so that they can also be set at make time. Therefore, they need not use the @harcoded@ style.
* build: Fix make distcheckSzymon Janc2017-11-111-1/+1
| | | | sixaxis.h was missing in release tarball.
* profiles/battery: Add Bluetooth LE Battery serviceBastien Nocera2017-11-031-0/+3
| | | | | | | | | | | | The Battery Level characteristic was tested with a Microsoft Arc Touch Mouse SE. The Battery1 interface is now exported for Bluetooth LE devices which support the Battery Level characteristic, providing a single "Percentage" value to other integration points in the OS, such as UPower for consumption on most free desktops. See https://bugs.freedesktop.org/show_bug.cgi?id=92370
* sap: Remove support for STE U8500 platformSzymon Janc2017-07-131-3/+0
| | | | | | This code didn't received updates for few years. It is not installed (build only) since BlueZ 5 release. And STE U8500 platform is long dead.
* profiles/midi: Added MIDI over BLE profile implementationFelipe F. Tonello2017-01-041-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This plugin implements the Central role of MIDI over Bluetooth Low-Energy (BLE-MIDI) 1.0 specification as published by MMA in November/2015. It was implmemented as a bluetoothd plugin because of latency requirements of MIDI. There are still room for improvements on this regard. Like previsouly mentioned, it only implements the Central role, but since all parsing and state-machine code is in libmidi.[hc] it should be simple to implement the Peripheral role as a GATT service as well. Files added: * profiles/midi/midi.c: Actual GATT plugin * profiles/midi/libmidi.[ch]: MIDI parsers Techinal notes ============== This plugin doesn't require any new threads. It relies on notifications from a device to parse and render proper events that are queued in the kernel, causing no blocks at all. Even if an error occur, it will be handled and returned control to bluetoothd. It also adds a new file descriptor to be read using struct io. That is necessary to read events from applications and render raw BLE packets to be sent to the device with a write without response command. It doesn't block as well. This patch introduces ALSA as dependency. But this feature is disabled by default. To enable it, pass --enable-midi to the configure script. Even though this introduces ALSA dependency, it is not an audio plugin. It is rather a MIDI plugin, which is a byte stream protocol with low throughput but requires low-latency. Observations ============ I have tested on a normal laptop Arch-linux (x86_64) and a Raspberry Pi 2 (ARM Cortex-A8) and it works very well. As I mentioned, the latency can always be improved. I will still maintain a personal branch on my github[1] so others can contribute there and I can test before sending to BlueZ. IMPORTAT: the timestamp support is incomplete since ALSA doesn't support the way MIDI over BLE expects (asign timestamp to an event without scheduling). We are working on ALSA to support this. Credits ======= I would like to send kudos to ROLI Ltd. which allowed my to work on this as part of my full-time job. [1] https://github.com/ftonello/bluez/
* build: Add option to enable health profilesLuiz Augusto von Dentz2016-11-171-1/+1
| | | | | | This adds--enable-health option dedicated to enabled health plugin so it is no longer enabled with --enable-experimental since that enables other plugins that might not be relevant for the system.
* build: Add option to disable HoG profileLuiz Augusto von Dentz2016-11-171-0/+2
| | | | | | This adds --disable-hog option to configure which make HoG plugin to not be build thus reducing the build time and binary size of bluetoothd in systems where HID over GATT profile is not supported.
* build: Add option to disable HID profileLuiz Augusto von Dentz2016-11-171-0/+2
| | | | | | This adds --disable-hid option to configure which make input plugin to not be build thus reducing the build time and binary size of bluetoothd in systems where HID profile is not supported.
* build: Add option to disable network profilesLuiz Augusto von Dentz2016-11-171-0/+2
| | | | | | This adds --disable-network option to configure which make network plugin to not be build thus reducing the build time and binary size of bluetoothd in systems where those profiles are not supported.
* build: Add option to disable AVRCP profileLuiz Augusto von Dentz2016-11-171-0/+3
| | | | | | This adds --disable-avrcp option to configure which make AVRCP plugin to not be build thus reducing the build time and binary size of bluetoothd in systems where AVRCP is not supported.
* build: Add option to disable A2DP profileLuiz Augusto von Dentz2016-11-171-0/+2
| | | | | | This adds --disable-a2dp option to configure which make A2DP plugin to not be build thus reducing the build time and binary size of bluetoothd in systems where A2DP is not supported.
* build: Add option to enable SAP profileLuiz Augusto von Dentz2016-11-171-1/+1
| | | | | | This adds --enable-sap option dedicated to enabled sap plugin so it is no longer enabled with --enable-experimental leaving it to just enable experimental tools.
* build: Add option to enable NFC pairingLuiz Augusto von Dentz2016-11-171-1/+3
| | | | | | This adds --enable-nfc option dedicated to enabled neard plugin so it is no longer enabled with --enable-experimental since that enables other plugins that might not be relevant for the system.
* build: Remove gatt-example pluginLuiz Augusto von Dentz2016-11-081-5/+0
| | | | | | This examples can be done over D-Bus already so it makes no sense to have it as a plugin and in fact it currently it doesn't even work since it was never ported to the new code under src/shared.
* build: Remove deprecated profilesLuiz Augusto von Dentz2016-10-181-29/+0
| | | | | This removes deprecated GATT profiles that are no longer supported and should instead be implemented over D-Bus.
* build: Make old GATT plugins deprecatedLuiz Augusto von Dentz2016-04-011-1/+1
| | | | | | | This disables building plugins that are no longer supported by the core since the transition to gatt-db. In the future these plugins will have to be ported to use gatt-db or be removed if the profile can be implemented using the GATT D-Bus APIs.
* input/hog: Make use of hog-libLuiz Augusto von Dentz2015-11-131-0/+4
| | | | | This changes the input plugin to use hog-lib so the same code is used in both D-Bus daemon, Android and unit tests.
* profiles/hog: Use no suspend support instead of the dummy FIFOMarcel Holtmann2015-05-291-1/+3
|
* profiles/gatt: Rename profile to gapArman Uguray2014-12-191-2/+2
| | | | | Since this built in profile only handles the GAP service, this patch renames it to gap.
* mcap: Rename mcap-lib to mcapRavi kumar Veeramally2014-10-021-1/+1
|
* mcap: Unify libmcap usage for Android and non-Android versionsRavi kumar Veeramally2014-10-021-3/+1
| | | | | Now profiles/health/ , android/health and mcaptest will use profiles/health/mcap-lib.
* build: Use internal libshared-glib and libshared-mainloop librariesMarcel Holtmann2014-09-251-1/+0
|
* input/device: Rework uHID code to use bt_uhidLuiz Augusto von Dentz2014-05-231-1/+2
|
* input: Add userspace HID supportPetri Gynther2014-05-081-1/+2
| | | | | | | | | | | | | | | | | | | Enable HID protocol handling in userspace when UserspaceHID=true in input.conf. Benefits of userspace HID: 1. Persistent HID/input pipeline For a Bluetooth HID device, the corresponding kernel HID/input devices are created only once when the Bluetooth HID device is used the first time. The HID/input pipeline is not destroyed and recreated every time when the Bluetooth HID device disconnects and reconnects. 2. HID vs HoG parity Enables HID and HoG devices to operate the same way in BlueZ stack, using uHID kernel module (/dev/uhid) to pass HID report data between bluetoothd and kernel HID subsystem. 3. Debugging It is easier to debug HID protocol in userspace than in HIDP kernel module.
* profiles/network: Rename common.c|h to bnep.c|hRavi kumar Veeramally2013-11-291-1/+1
| | | | | Files common.c|h contains only bnep related code, it makes more sence with bnep.c|h.
* plugins: Add initial code for sixaxis pluginSzymon Janc2013-11-271-0/+8
| | | | This plugin will be used to associate PS3 controllers.
* audio: Remove audio pluginLuiz Augusto von Dentz2013-07-241-4/+0
| | | | | Audio plugin is now splitted in multiple plugins so it is no longer necessary to have a manager to deal with many different drivers.
* audio: Move A2DP code to its own pluginLuiz Augusto von Dentz2013-07-241-2/+4
| | | | | This moves A2DP related code to a2dp plugin and making it possible to disable by passing -P a2dp and increasing the modularity of the code.
* audio: Move AVRCP related code to its own pluginLuiz Augusto von Dentz2013-07-241-4/+6
| | | | | This moves AVRCP related code to avrcp plugin and making it possible to disable by passing -P avrcp and increasing the modularity of the code.
* plugins/policy: Reword audio policy code in a simple pluginLuiz Augusto von Dentz2013-07-121-1/+3
| | | | | This moves audio device policy to a plugin and removes any dependency of audio plugin to it.
* autopair: Add the autopair pluginAlex Deymo2013-05-101-0/+3
| | | | | | | The autopair plugin tries standard pincodes for different devices with dumb pincodes. It also generates a random 6 digit pincode for keyboards that support any pincode but fallbacks to the agent call in case the random generated pincode didn't work.
* profile: Use btd_service for connect/disconnectMikel Astiz2013-04-261-2/+2
| | | | | | | | | | | | | | Change the btd_profile connect/disconnect callbacks to receive a btd_service pointer. This should make it possible to handle multiple instances of the same profile in a specific device. The patch strongly influences how the profiles should interact with the core. The state transitions, previously reported using the device.h API (device_profile_connected() and device_profile_disconnected()), have now been replaced by the btd_service API. The transitions will then be propagated to device.c by means of the conventional state-changed callback mechanism.
* gas: Move all the code to only one fileVinicius Costa Gomes2013-01-291-3/+1
| | | | | Our Generic Attribute/Access Service plugin is small and simple enough to be kept in only one file.
* plugins: Remove no longer needed formfactor pluginMarcel Holtmann2012-12-291-3/+0
|
* plugins: Remove no longer needed adaptername pluginMarcel Holtmann2012-12-291-3/+0
|
* plugins: Add support for systemd's hostname daemonMarcel Holtmann2012-12-291-0/+3
|
* build: Mark Health plugin as experimental for nowMarcel Holtmann2012-12-211-0/+2
| | | | | The API of the Health plugin and the code itself needs another review phase in the light for BlueZ 5.x. For now mark this plugin as experimental.