Commit Graph

328 Commits

Author SHA1 Message Date
Johan Hedberg
c17ef83d60 build: Add missing heartrate to builtin_modules 2012-09-28 16:56:49 +03:00
Rafal Garbat
bada796a03 heartrate: Add initial HRP client support
This patch adds initial support for the Heart Rate Profile client.
Profile driver is registered to keep track of adapters and devices.
2012-09-28 13:14:09 +03:00
Claudio Takahasi
02dd29d72e scan: Add ATTIO callbacks registration
This patch add the functions to manage ATTIO callbacks. The current
registration mechanism is not suitable for this service since it needs
to be passive. Scan Parameters should not actively request connections,
it needs to be notified if the connections has been established
requested by other services.
2012-09-28 13:03:35 +03:00
Claudio Takahasi
1342e68c29 scan: Register profile
This patch add the probe and remove callbacks for the GATT Scan
Parameters service.
2012-09-28 13:00:41 +03:00
Claudio Takahasi
ef697e827d scan: Add plugin skeleton
This patch adds the Makefile changes and plugin declaration to support
Scan Parameters service. BlueZ will act as Scan Client writting to a Scan
Server the scanning parameters.
2012-09-28 12:59:28 +03:00
Claudio Takahasi
16a8c88963 hog: Add suspend back-end selection
This patch series introduces back-end selection for HoG suspend drivers.
The default back-end is called "dummy", added for testing purpose only.
2012-09-28 12:55:25 +03:00
Claudio Takahasi
df78f047c0 hog: Add initial files for suspend support
This patch adds the initial files to support HoG suspend. The suspend
concept for HoG is implementation specific. The proposal is allowing
back-end selection at build time. Each Linux distribution/platform is
responsible for defining and writting their own policy to manage suspend
on HoG capable devices.

When setting the Control Point, the report device can execute actions to
save power. eg: Reduce the cycle of the key press detection or disable
LEDs.
2012-09-28 12:53:01 +03:00
Johan Hedberg
246f60f6a2 doc: Add profile API documentation 2012-09-25 17:39:02 +03:00
Johan Hedberg
2e16cbf325 input: Remove fakhid functionality
The HSP code conflicts with a real HSP implementation and the PS3
support should be done through the kernel.
2012-09-11 11:29:58 +03:00
Johan Hedberg
b1cde69a66 core: Move profile code into profile.{c,h} 2012-09-11 11:29:57 +03:00
Claudio Takahasi
e6bba78960 gatt: Add GAP/GATT device registration
This patch adds GAP/GATT device driver probe function and the skeleton
of the register GAP/GATT device function.
2012-08-20 12:10:01 +03:00
Claudio Takahasi
c5a6670966 gatt: Add Generic Access/Attribute Profile plugin
Initial patch to create GATT based plugin to handle Generic Access,
and Generic Attribute Profile services. GAP characteristics discovery
will be moved from device.c to this new plugin.
2012-08-20 12:07:05 +03:00
Lucas De Marchi
5bec57420b rfcomm: Remove support for configuration file 2012-08-09 22:52:38 -07:00
Johan Hedberg
37a986eb6c Add supported features document 2012-07-16 16:40:18 +03:00
João Paulo Rechi Vita
1f5ebee9e1 hog: HID I/O driver
uHID is HID I/O driver that makes possible to implement HID I/O drivers
in user-space. It works similar to the uinput but it is initialized with
a HID descriptor and deals with raw HID reports.

This commit uses uHID to create a HID device for the remote HoG device
and to tranfers HID reports to HID subsystem.
2012-07-11 00:47:54 +03:00
João Paulo Rechi Vita
08d02a2812 hog: fix build with --disable-gatt
To be able to build HoG only if gatt and input are enabled it needs
a separate plugin manager.
2012-07-11 00:15:14 +03:00
Vinicius Costa Gomes
b13245e992 build: Fix make distcheck
The gstreamer module needs audio/rtp.h to exist in the distribution.
2012-07-10 15:21:52 -03:00
Vinicius Costa Gomes
dcd5fb96ce build: Fix make distcheck
"proximity/proximity.conf" doesn't exist anymore, it was moved to
"profiles/proximity/proximity.conf".
2012-07-10 15:21:49 -03:00
Vinicius Costa Gomes
2bc8079d58 Build: Fix make distcheck
plugins/hal.c should not be present in the distribution.
2012-07-10 15:21:46 -03:00
Vinicius Costa Gomes
0bdfd14805 build: Fix typo
"ptofiles" should have been "profiles"
2012-07-10 15:21:44 -03:00
Vinicius Costa Gomes
9e87e9d460 build: Fix typo
"profiles_sap" should be "profiles/sap".
2012-07-10 15:21:41 -03:00
Gustavo Padovan
dd3f4ca901 plugins: remove unmaintained plugins 2012-07-10 11:19:10 -03:00
Gustavo Padovan
45b8e6d6f4 sap: move it to profiles folder 2012-07-10 11:18:31 -03:00
Gustavo Padovan
df5c14c621 proximity: move to the profiles folder 2012-07-10 11:17:09 -03:00
Gustavo Padovan
d8d2be1064 time: move to the profiles folder 2012-07-10 11:16:44 -03:00
Gustavo Padovan
1443b34e19 network: move it to profiles folder 2012-07-10 11:15:59 -03:00
Gustavo Padovan
56bb203351 input: move it to profiles folder 2012-07-10 11:15:29 -03:00
Gustavo Padovan
d663550299 health: move it to profiles 2012-07-10 11:14:36 -03:00
Gustavo Padovan
90118a6c71 serial: remove the whole serial code 2012-07-10 11:12:53 -03:00
Johan Hedberg
ea1ed8ec44 Move mgmtops to the core daemon
Since there is only one "adapter_ops" it doesn't make sense to keep
mgmtops as a plugin anymore. This patch moves it to src/mgmt.c.
2012-07-10 10:34:08 -03:00
Gustavo Padovan
5bcc22f5ca thermometer: move to the profiles folder 2012-07-10 08:19:16 -03:00
Gustavo Padovan
6e26cb11e2 deviceinfo: move to profiles folder 2012-07-10 08:19:16 -03:00
Gustavo Padovan
bdde7de847 alert: move alert to profiles dir 2012-07-10 08:19:16 -03:00
Gustavo Padovan
8c72155870 serial: remove SerialProxy interface 2012-07-09 14:30:43 -03:00
João Paulo Rechi Vita
db5cbee758 hog: Register ATTIO callbacks
This way the LE connection is kept up. Also set device to autoconnect.
2012-07-09 10:02:37 -03:00
Claudio Takahasi
fdc5ace164 hog: Register HID over GATT device driver 2012-07-09 09:57:42 -03:00
Anderson Lizardo
451d48de3f build: Fix "make distcheck"
audio/bluetooth.conf was removed and test/sap-client was renamed.
2012-07-05 20:27:49 +03:00
Anderson Lizardo
8877f4c4f4 time: Introduce manager abstraction layer
This abstraction layer makes the GATT Time profile implementation
consistent with other profiles. It is the first step before implementing
the adapter driver for the Time server implementation.
2012-07-05 11:07:33 +03:00
Gustavo Padovan
1bb26c1906 remove the hciops plugin
hciops was replaced by mgmtops, it should not be maintained anymore and is
now removed.
2012-07-04 15:16:52 +03:00
Luiz Augusto von Dentz
f2bdd7243e audio: Remove internal audio IPC
With unix socket and ALSA removed there is no longer any use for the
internal IPC.
2012-07-02 13:13:46 +03:00
Luiz Augusto von Dentz
4ff9b99292 audio: Remove ALSA support
ALSA support depend on unix support that is now removed.
2012-07-02 13:13:43 +03:00
Luiz Augusto von Dentz
1d9d0527cf audio: Remove unix socket support
Unix socket support is deprecated by Media API.
2012-07-02 13:13:39 +03:00
Bastien Nocera
e395d8dd7a Fix ALSA plugin having full soname
This is a plugin, so spell -avoid-version correctly so
it doesn't have a full soname.
2012-06-15 13:15:01 +03:00
Bastien Nocera
a59814adec Add org.bluez.service to the tarball
Seeing as we want to install it.
2012-06-15 09:52:29 +03:00
Marcel Holtmann
933d78a98d Update library version 2012-06-13 11:58:23 -07:00
Marcel Holtmann
99dd125c52 build: Remove dependency on libcap-ng 2012-05-29 08:19:30 +02:00
Alex Elsayed
3481ed31ba Add dbus service file that references the systemd unit
This allows bluez to be bus-activated.
2012-05-17 20:47:02 +03:00
Lucas De Marchi
afb0ab3a45 build: Do not set CFLAGS/LDFLAGS directly
Set a separate variable for adding warning flags, optimization, etc.
Build systems are not supposed to change CFLAGS and LDFLAGS, these are
user variables.

Doing so we guarantee CFLAGS and LDFLAGS from environment is appended
to the flags used during build. One useful use-case is to temporarily
disable -Werror when using --enable-maintainer-mode, without completely
loosing the warning flags and other parameters in CFLAGS (like -fPIC).

Without this patch, fiddling with CFLAGS/LDFLAGS after configure may
result in errors like below:

/usr/bin/ld: tools/rfcomm.o: relocation R_X86_64_32 against `.bss' can
not be used when making a shared object; recompile with -fPIC
tools/rfcomm.o: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[1]: *** [tools/rfcomm] Error 1
make: *** [all] Error 2

Reference: http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html
2012-05-16 11:18:31 +03:00
Lucas De Marchi
99fe325ad2 build: Fix typo in AM_CFLAGS 2012-05-16 11:18:28 +03:00
Tom Gundersen
2ea98a6a04 udev: remove udev activation of the blutooth daemon
Udev is not meant to spawn long-running processes, and as of the next
udev version such processes will be killed.

If using systemd, device activation can be used to get the same effect.

On Arch we have been disabling this rule for a long time, even though we
don't use systemd, as it was causing more problems than it was worth.
2012-05-08 13:17:15 -07:00
Marcel Holtmann
84156dadb2 build: Remove glib-compat.h support 2012-04-16 18:23:02 +02:00
Anderson Lizardo
b063ca7c0d Makefile.am: Fix indentation
Only these two lines were using spaces instead of tabs.
2012-04-13 13:04:43 +03:00
Chen Ganir
620ac8c7c2 Add DeviceInformation GATT Client
Add the DeviceInformation GATT Client plugin skeleton.
2012-04-04 14:59:58 +03:00
Anderson Lizardo
0779dd9b3b attrib: Fix "make distcheck" build
Any new header files (att-database.h in this case) need to be added to
Makefile.am.

Fixes this "make distcheck" error:

  CC     attrib/bluetoothd-gatt-service.o
../attrib/gatt-service.c:35:26: fatal error: att-database.h: No such
file or directory
compilation terminated.
make[2]: *** [attrib/bluetoothd-gatt-service.o] Error 1
make[1]: *** [all] Error 2
make: *** [distcheck] Error 1
2012-04-04 12:54:08 +03:00
Arik Nemtsov
692ef73ecc proximity: immediate alert: implement immediate alert server
The profile is implemented in immalert.[ch]. A GATT service is
registered with a write callback on the immediate alert level attribute.
This attribute is write-only and is maintained per remote device.

When a remote device write a raises or lowers the alert level,
an appropriate PropertyChanged signal is emitted. When the alert level
of a device is non-zero, a callback is registered on its disconnection.
When the callback is called, the alert level of the device is reset to
zero and an appropriate signal is emitted.
2012-04-03 13:02:02 +03:00
Arik Nemtsov
a20e040fd5 proximity: link loss: implement link loss server
The profile is implemented in linkloss.[ch]. A GATT service is
registered with read/write callbacks on the link-loss alert level
attribute. The alert level is maintained per device. It is returned
on read and updated on write.

When the alert level is non-zero, a callback is registered on the
disconnection of the remote device. If a device with non-zero alert
state is disconnected, an appropriate PropertyChanged signal is emitted
with the alert level previously set by the device. We avoid emitting
a signal when the disconnection was requested by us.
2012-04-03 13:01:07 +03:00
Chen Ganir
e407e9ac6d GATT: Remove individual config switches
Remove individual GATT plugin configuration switches and add a
new master gatt switch called --enable-gatt to enable/disable all
GATT related plugins at once.
2012-03-26 12:09:51 +03:00
Marcel Holtmann
64ab33fc4f Update library version 2012-03-06 09:02:51 -08:00
Johan Hedberg
e08162a611 lib: Add a2mp.h to lib_headers 2012-03-05 16:36:22 -08:00
Marcel Holtmann
9d3b93ede7 monitor: Add Bluetooth HCI declarations 2012-02-27 10:52:14 -08:00
Anderson Lizardo
4f1294a5e7 Remove unused/broken "echo" RFCOMM plugin
It was disabled for quite some time (since 2009), and does not even
compile anymore if enabled:

plugins/echo.c: In function 'session_event':
plugins/echo.c:53: error: implicit declaration of function
'g_io_channel_read'
plugins/echo.c:57: error: implicit declaration of function
'g_io_channel_write'
2012-01-09 14:50:39 +02:00
Yegor Yefremov
3819e1a6bb add tools to include folder list
adding tools to include folder list avoids out-of-source build
breakage
2011-12-28 09:37:09 -08:00
Yegor Yefremov
a6aa83466a fix link creation for out-of-source builds 2011-12-28 09:36:53 -08:00
Marcel Holtmann
bf5d45f2fb build: Move libcheck under TEST conditional 2011-12-27 20:09:56 -08:00
Marcel Holtmann
d223feb814 Update library version 2011-12-22 17:16:25 -08:00
Anderson Lizardo
67cd2b0922 Implement high level GATT API for service registration
This new internal API can be used for implementing GATT services (server
role). It is built around the current attribute API (attrib_db_add() and
others).
2011-11-14 21:08:23 +02:00
Marcel Holtmann
03361ee983 build: Use target specific CFLAGS and inherit AM_CFLAGS 2011-11-13 13:48:44 +09:00
Marcel Holtmann
8f47678344 build: Create src/builtin.h via BUILT_SOURCES 2011-11-13 08:25:35 +09:00
Johan Hedberg
9d387f4372 Convert unit tests from GLib to GNU Check 2011-10-25 10:08:07 +02:00
Johan Hedberg
029077107e Add basic unit tests framework for EIR parsing 2011-10-18 23:58:12 +03:00
Johan Hedberg
68838679e1 Move SDP client functions from glib-helper.c to sdp-client.c 2011-10-18 11:15:23 +03:00
Johan Hedberg
9b98a6c764 Add glib-compat.h to deal with issues in old GLib versions 2011-10-18 10:57:06 +03:00
Bruna Moreira
d7925ed6c4 Add Phone Alert Server skeleton plugin 2011-09-22 20:05:06 +09:00
Anderson Lizardo
8f769e9565 Add GATT Time Server skeleton plugin 2011-09-22 20:05:04 +09:00
Marcel Holtmann
2b4d684ec9 build: Use private copy of Bluetooth library for audio support 2011-09-18 22:28:11 +02:00
Luiz Augusto von Dentz
99f32ae9ac AVRCP: move handling of vendor dependent PDU from control.c to avrcp.c
This helps to isolate AVRCP PDU handling and MediaPlayer interface.
2011-09-13 10:44:56 +03:00
Luiz Augusto von Dentz
8d18c289c7 AVRCP: split AVCTP specific code from control.c
The code is moved to avctp.c to simplify control.c
2011-09-13 10:44:54 +03:00
Marcel Holtmann
a1e585d99a build: Link bluetoothd with private copy of libbluetooth 2011-08-28 16:07:43 -07:00
Marcel Holtmann
f2c61eb4ff build: Fix external plugin installation 2011-08-22 06:00:21 -07:00
Marcel Holtmann
6b5b53f5d8 build: Allow loading of plugins from development tree 2011-08-14 14:39:14 -07:00
Szymon Janc
5a0c179b9a Add external dummy plugin for testing 2011-08-14 14:08:29 -07:00
Claudio Takahasi
2637d94576 Add config file for proximity monitor
Initial config file to disable Proximity and Find ME support in the
proximity monitor side. By default all services will be supported.
Config file is necessary at least to disable Find ME profile since the
Immediate Alert service is shared between Pass Loss and Find ME.
2011-08-03 12:29:14 +03:00
Claudio Takahasi
d5466d15d3 Add Proximity Reporter skeleton 2011-08-03 12:20:36 +03:00
Marcel Holtmann
b5ff279155 Update library version 2011-07-31 22:36:18 +02:00
Anderson Lizardo
facc0d862b Fix setting noinst_LIBRARIES in Makefile.am
When both audio and sap plugins are enabled, noinst_LIBRARIES is
incorrectly overwritten.
2011-07-29 13:07:36 +03:00
Santiago Carot-Nemesio
e8825b76fc Add thermometer driver skeleton 2011-07-29 12:50:35 +03:00
Santiago Carot-Nemesio
3e24f80260 Add manager files for HTP 2011-07-29 12:50:32 +03:00
Santiago Carot-Nemesio
67c15df485 Initial support for Health Thermometer Profile (HTP) 2011-07-29 12:50:30 +03:00
Tom Rini
c5d2a5e570 Makefile.am: Mark local_headers as BUILT_SOURCES
As these files are auto-generated they need to be marked as BUILT_SOURCES
so that we don't run into a build race later on.  lib/bluetooth is removed
by clean-local so this doesn't need to be in CLEAN_FILES
2011-07-28 00:42:17 +03:00
Claudio Takahasi
b81ddf51e9 Add Proximity Monitor skeleton
Registers hard-coded D-Bus object path for Proximity Monitor and
exports GetProperties and SetProperty.
2011-07-26 11:13:03 +03:00
Claudio Takahasi
37c3958aba Add Proximity Profile plugin skeleton 2011-07-26 11:13:01 +03:00
Claudio Takahasi
55f9fbf822 Add ATT connection callback registration
Function intends to be used by profiles to inform that a connection
is required and the callback that needs to be called when the it is
established. New header is required to avoid non GATT based profiles
including GAttrib header.
2011-07-14 17:37:15 +03:00
David Herrmann
1106efd440 Add support for wiimote pairing
The Nintendo Wii Remote requires binary bluetooth addresses as PINs.
This is not possible via dbus agent API. So this adds a plugin that
registers a pin-callback and forces the right pin for every
authentication request of wiimotes.
2011-07-14 17:25:05 +03:00
Szymon Janc
c3dd10b572 Add SAP driver for ST-Ericsson U8500 platform 2011-07-13 11:44:28 +03:00
Marcel Holtmann
4179958d06 Update library version 2011-07-04 21:49:40 +02:00
Lucas De Marchi
7849eeee2a build: Add support for systemd service configuration 2011-07-01 20:48:33 -07:00
Lucas De Marchi
c053eac034 build: Remove udevrules option
Use the new datafiles options instead.
2011-07-01 20:48:04 -07:00
Lucas De Marchi
9cec49b283 build: Rename configfiles option to datafiles
Instead of passing --[disable|enable]-configfiles, now we use
--[disable|enable]-datafiles as not all of the files are installed for
configuration but are rather data files.
2011-07-01 20:47:23 -07:00
Bastien Nocera
c98f635b44 Add adaptername plugin
Replacing the name setting code in src/adapter.c.

Moving the adapter naming allows us to use the /etc/machine-info [1]
pretty hostname, as implemented by hostnamed [2] in systemd.

If /etc/machine-info is not present, the adapter name stored
on disk in /var/lib/bluetooth will be used. If no adapter name
has been set yet, the default from the main.conf will be used.

We don't currently number the name of hci0 if a pretty name is
available, but we should instead number it if it happens not
to be the default adapter. As we cannot be told when the default
adapter changes, we'll behave this way for now.

Note that when an adapter name is set automatically from
the pretty hostname, changing it through the D-Bus interface
will fail.

[1]: http://0pointer.de/public/systemd-man/machine-info.html
[2]: http://www.freedesktop.org/wiki/Software/systemd/hostnamed
2011-06-28 13:19:20 +03:00
Marcel Holtmann
c78787f6ff Update library version 2011-05-31 01:30:37 -07:00