Renat Zaripov [Tue, 12 Mar 2013 14:37:58 +0000 (18:37 +0400)]
sim900: Add multiplexer support
Also add gprs and call-volume support.
Denis Kenzior [Tue, 26 Mar 2013 15:18:57 +0000 (10:18 -0500)]
sim900: Fix leak of options hash table
Daniel Wagner [Sun, 24 Mar 2013 12:33:47 +0000 (13:33 +0100)]
TODO: Mark BlueZ 5 support in dundee as done
Paulo Borges [Wed, 20 Mar 2013 22:26:42 +0000 (19:26 -0300)]
dundee: Handle Profile connect and disconnect
Paulo Borges [Wed, 20 Mar 2013 22:26:41 +0000 (19:26 -0300)]
dundee: Add dundee disconnect function
Paulo Borges [Wed, 20 Mar 2013 22:26:40 +0000 (19:26 -0300)]
dundee: Add support for driver connect
This patch glues together the dundee driver interface with the
D-Bus Profile1 interface.
When the dundee driver requests a connection, it will call the
Device1's ConnectProfile.
Paulo Borges [Wed, 20 Mar 2013 22:26:39 +0000 (19:26 -0300)]
dundee: Add BlueZ Profile handler
This patch declares the external dundee Profile handler. It
contains the initial implementation of the D-Bus Profile1
interface and methods responsible for handling Bluetooth
connections.
Paulo Borges [Wed, 20 Mar 2013 22:26:38 +0000 (19:26 -0300)]
dundee: Register/unregister dundee device
This patch adds the dundee device struct to the our Bluetooth
device representation.
Paulo Borges [Wed, 20 Mar 2013 22:26:37 +0000 (19:26 -0300)]
dundee: Add dundee device driver skeleton
This patch adds the functions to be called when the dundee will
connect or disconnect with a Bluetooth device.
Paulo Borges [Wed, 20 Mar 2013 22:26:36 +0000 (19:26 -0300)]
dundee: Listen to devices property changes
When a bluetooth device property change and this property is Alias,
we need to refresh our representation of this device.
Paulo Borges [Wed, 20 Mar 2013 22:26:35 +0000 (19:26 -0300)]
dundee: Add tracking of bluetooth devices
This patch tracks the GDBusProxy for Bluetooth devices in order to
be able to get their properties.
Paulo Borges [Wed, 20 Mar 2013 22:26:34 +0000 (19:26 -0300)]
dundee: Add mechanism to store bluetooth devices
This patch adds a hash that will store every known bluetooth
device that implements DUN service.
Paulo Borges [Wed, 20 Mar 2013 22:26:33 +0000 (19:26 -0300)]
dundee: Initial GDBusClient for BlueZ 5
This patch adds callbacks to track additions of BlueZ related
interfaces.
Paulo Borges [Wed, 20 Mar 2013 22:26:31 +0000 (19:26 -0300)]
dundee: Start BlueZ 5 support
This patch adds the BlueZ 5 support file for dundee.
Paulo Borges [Wed, 20 Mar 2013 22:26:30 +0000 (19:26 -0300)]
dundee: Rename dundee BlueZ 4 support
The BlueZ 4 support file for dundee has now been renamed to
bluez4.c to make it easier to add a BlueZ 5 support file.
Denis Kenzior [Thu, 21 Mar 2013 15:19:00 +0000 (10:19 -0500)]
hfp_ag_bluez5: Fix sanity check
We should be checking that modems != NULL, not modems->data. This is
because the list can be empty and we would crash.
Denis Kenzior [Thu, 21 Mar 2013 15:18:11 +0000 (10:18 -0500)]
dun_gw_bluez5: Fix sanity check
We should be checking that modems != NULL, not modems->data. This is
because the list can be empty and we would crash.
Denis Kenzior [Thu, 21 Mar 2013 15:15:16 +0000 (10:15 -0500)]
dun_gw_bluez5: Fix copy-paste error
Frédéric Danis [Tue, 12 Mar 2013 13:01:30 +0000 (14:01 +0100)]
dun_gw: Add BlueZ 5 version
This patch adds initial implementation of the D-Bus Profile1
interface and methods responsible for handling Bluetooth connections.
The DUN GW profile interface is registered as soon as a GPRS capable
modem is registered in oFono.
Frédéric Danis [Tue, 12 Mar 2013 13:01:29 +0000 (14:01 +0100)]
bluetooth: Rename DUN GW plugin
As BlueZ 5 introduced backwards incompatible API changes, and we want to
keep support for BlueZ 4 based DUN GW plugin for some time, we need to
separate DUN GW plugin which is based on BlueZ 4 from the one based on
BlueZ 5.
The dun_gw.c plugin is renamed to dun_gw_bluez4. This will make it easy
to add a DUN GW plugin for BlueZ 5.
Claudio Takahasi [Wed, 20 Mar 2013 23:03:04 +0000 (20:03 -0300)]
doc: Add Handsfree Audio Card "Connect" errors
Vinicius Costa Gomes [Wed, 20 Mar 2013 00:10:33 +0000 (21:10 -0300)]
ofono.conf: Punch hole for HandsfreeAudioAgent
Denis Kenzior [Mon, 18 Mar 2013 19:06:56 +0000 (14:06 -0500)]
handsfree_audio: Call driver remove() on removal
Claudio Takahasi [Tue, 12 Mar 2013 12:42:05 +0000 (09:42 -0300)]
core: Add bt_str2ba() to bluetooth.h
This patch adds a utility Bluetooth function to convert Bluetooth
address from string to bdaddr_t.
Denis Kenzior [Mon, 18 Mar 2013 18:57:30 +0000 (13:57 -0500)]
hfp_hf_bluez5: Set remote and local information
Denis Kenzior [Mon, 18 Mar 2013 18:42:12 +0000 (13:42 -0500)]
hfp_hf_bluez5: Update to the new API
Denis Kenzior [Mon, 18 Mar 2013 18:42:00 +0000 (13:42 -0500)]
handsfree-audio: Match new card API
Denis Kenzior [Mon, 18 Mar 2013 18:41:17 +0000 (13:41 -0500)]
include: Refactor ofono_handsfree_card_create
Denis Kenzior [Wed, 13 Mar 2013 18:14:39 +0000 (13:14 -0500)]
handsfree-audio: Implement get/set data
Denis Kenzior [Wed, 13 Mar 2013 18:13:59 +0000 (13:13 -0500)]
include: Add get/set data handsfree audio card
Denis Kenzior [Wed, 13 Mar 2013 18:01:55 +0000 (13:01 -0500)]
handsfree-audio: Add card driver registration
Denis Kenzior [Wed, 13 Mar 2013 18:01:40 +0000 (13:01 -0500)]
include: Add handsfree card driver registration
Claudio Takahasi [Fri, 8 Mar 2013 23:08:48 +0000 (20:08 -0300)]
hfp_hf_bluez5: Remove duplicated include
Claudio Takahasi [Mon, 4 Mar 2013 20:48:53 +0000 (17:48 -0300)]
handsfree-audio: Reject SCO if agent is unavailable
This patch rejects the incoming SCO connection if there isn't a
Handsfree Audio Agent registered.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:52 +0000 (17:48 -0300)]
handsfree-audio: Reject SCO if Card is not ready
The Audio Card is being created when the NewConnection from BlueZ
Profile is received, and registered when the service level connection
negotiation finishes. This patch rejects SCO connection if the SCO
incoming connection arrives when the service level negotiation is
ongoing.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:51 +0000 (17:48 -0300)]
handsfree-audio: Check local SCO address
This patch verifies if the local Bluetooth address of the incoming
connection also matches with one of available audio cards.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:50 +0000 (17:48 -0300)]
handsfree-audio: Add NewConnection
This patch adds Agent NewConnection call. The card object path, the SCO
file descriptor, and the codec are being passed to the agent. This
initial version supports CVSD codec only.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:49 +0000 (17:48 -0300)]
handsfree-audio: Add SCO handling
Unlike the previous implementation in the plugin, the SCO/SLC matching
is done based on the Audio Card objects.
Audio Cards are created when the RFCOMM fd descriptor is received, and
registered when the service level connetion is established.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:49 +0000 (17:48 -0300)]
hfp_hf_bluez5: Remove SCO handling
This patch moves the SCO socket handling from hfp_hf_bluez5 plugin. It
will be instead handled by the handsfree-audio functionality. This is
the initial step to be able to support sending the file descriptor
through the Agent NewConnection method.
Claudio Takahasi [Mon, 4 Mar 2013 20:48:48 +0000 (17:48 -0300)]
hfp_hf_bluez5: Use new bluetooth.h header
Claudio Takahasi [Mon, 4 Mar 2013 20:48:48 +0000 (17:48 -0300)]
bluez5: Remove Bluetooth related utilities
Claudio Takahasi [Mon, 4 Mar 2013 20:48:48 +0000 (17:48 -0300)]
core: Add new Bluetooth header
This patch adds the Bluetooth utility funtions and socket type
declarations to a new header src/bluetooth.h, allowing to share it
between core, and plugins.
Paulo Borges [Fri, 1 Mar 2013 21:58:59 +0000 (18:58 -0300)]
bluez5: Add bt_register_profile_with_role
This function allows to specify which role is registering when the
profile does not have specific UUIDs for each role.
Claudio Takahasi [Thu, 28 Feb 2013 18:52:50 +0000 (15:52 -0300)]
handsfree-audio: Check CVSD when registering agent
This patch makes CVSD codec mandatory when registering a Handsfree
Audio Agent.
Paulo Borges [Wed, 27 Feb 2013 21:49:13 +0000 (18:49 -0300)]
bluez5: Move ref / unref handsfree audio
This commit moves the ref / unref to hfp_hf_bluez5 to make
bluez5 more generic and reusable.
Claudio Takahasi [Thu, 28 Feb 2013 16:01:10 +0000 (13:01 -0300)]
hfp_hf_bluez5: Remove Card on RequestDisconnection
For local initiated disconnection the GAtChat disconnect callback is not
called. For this case, Audio Card remove function needs to be called.
Claudio Takahasi [Thu, 28 Feb 2013 16:01:09 +0000 (13:01 -0300)]
hfp_hf_bluez5: Remove Card when modem is disabled
Claudio Takahasi [Thu, 28 Feb 2013 16:01:08 +0000 (13:01 -0300)]
hfp_hf_bluez5: Remove Card if SLC is disconnected
This patch removes previous registered Audio Card when the remote
Bluetooth device triggers the service level disconnection.
Claudio Takahasi [Thu, 28 Feb 2013 16:01:07 +0000 (13:01 -0300)]
hfp_hf_bluez5: Remove Card when SLC fails
This patch removes the previously created Audio Card if the service
level negotiation fails.
Claudio Takahasi [Thu, 28 Feb 2013 16:01:06 +0000 (13:01 -0300)]
hfp_hf_bluez5: Add local address to Audio Card
Claudio Takahasi [Thu, 28 Feb 2013 16:01:05 +0000 (13:01 -0300)]
hfp_hf_bluez5: Add registering Audio Card
This patch registers the Handsfree Audio Card when the service level
connection is established.
Denis Kenzior [Tue, 26 Feb 2013 21:46:43 +0000 (15:46 -0600)]
handsfree-audio: properly increment next_card_id
Claudio Takahasi [Tue, 26 Feb 2013 15:59:03 +0000 (12:59 -0300)]
doc: Add possible handsfree-audio API errors
This patch adds possible errors that can be returned by Register and
Unregister methods of the Manager interface.
Patrik Flykt [Tue, 26 Feb 2013 11:15:52 +0000 (13:15 +0200)]
bluez4: Increase Bluez 4 D-Bus timeouts to 60 seconds
RequestAuthorization method call may trigger pairing and/or pop up a
dialog in the remote device to which the user needs to react. Thus
increase D-Bus timeouts to 60 seconds for the Bluez 4 plugin.
Denis Kenzior [Tue, 26 Feb 2013 20:12:09 +0000 (14:12 -0600)]
handsfree-audio: Impelement CardRemoved signal
Denis Kenzior [Tue, 26 Feb 2013 20:03:04 +0000 (14:03 -0600)]
handsfree-audio: Implement CardAdded signal
Denis Kenzior [Tue, 26 Feb 2013 19:48:46 +0000 (13:48 -0600)]
handsfree-audio: Implement the GetCards method
Denis Kenzior [Tue, 26 Feb 2013 19:35:38 +0000 (13:35 -0600)]
handsfree-audio: Implement card GetProperties
Denis Kenzior [Tue, 26 Feb 2013 20:09:15 +0000 (14:09 -0600)]
handsfree-audio: Unregister from DBus on removal
Denis Kenzior [Tue, 26 Feb 2013 19:22:02 +0000 (13:22 -0600)]
handsfree-audio: Add skeleton D-Bus registration
For HandsfreeAudioCard objects
Denis Kenzior [Tue, 26 Feb 2013 20:01:47 +0000 (14:01 -0600)]
handsfree-audio: Don't hardcode '/' path
Use OFONO_MANAGER_PATH instead
Denis Kenzior [Tue, 26 Feb 2013 19:21:32 +0000 (13:21 -0600)]
include: Add handsfree card register method
Denis Kenzior [Tue, 26 Feb 2013 17:03:00 +0000 (11:03 -0600)]
handsfree-audio: Implement card create / remove
Denis Kenzior [Tue, 26 Feb 2013 17:02:43 +0000 (11:02 -0600)]
include: Add handsfree card create / remove API
Claudio Takahasi [Mon, 25 Feb 2013 13:48:39 +0000 (10:48 -0300)]
audio-settings: Fix unneeded async for GetProperties
GetProperties method call for Audio settings returns the reply in the
same iteraction, it doesn't need to be asynchronous.
Tomasz Bursztyka [Fri, 8 Feb 2013 13:58:10 +0000 (15:58 +0200)]
gdbus: Always unreference the message in g_dbus_send_message()
A quick fix on g_dbus_send_message(), if check_signal() fails it returns
FALSE without unreferencing the message as it should. This patch fixes
it.
Denis Kenzior [Fri, 22 Feb 2013 17:29:26 +0000 (11:29 -0600)]
AUTHORS: Mention Paulo's contributions
Paulo Borges [Fri, 22 Feb 2013 17:01:12 +0000 (14:01 -0300)]
dundee: Fix typo in dundee-disconnect test
Paulo Borges [Fri, 22 Feb 2013 17:01:11 +0000 (14:01 -0300)]
dundee: Fix typo in Manager's signal DeviceAdded
This typo was preventing dundee from sending the signal.
Claudio Takahasi [Thu, 21 Feb 2013 22:24:42 +0000 (19:24 -0300)]
hfpmodem: Fix segfault in CIEV GAtChat callback
This patch fixes segmentation fault when the network registration
watch is called without being initialized. CIEV GAtChat callback can
be called before ofono_netreg_register().
==15101== Invalid read of size 8
==15101== at 0x492B56: ofono_netreg_register (network.c:2073)
==15101== by 0x47245E: hfp_netreg_probe (network-registration.c:311)
==15101== by 0x492A8D: ofono_netreg_create (network.c:1881)
==15101== by 0x4849D5: hfp_pre_sim (hfp_hf_bluez5.c:288)
==15101== by 0x48C486: ofono_modem_set_powered (modem.c:1194)
==15101== by 0x484E9D: slc_established (hfp_hf_bluez5.c:85)
==15101== by 0x4702AD: chld_cb (slc.c:147)
==15101== by 0x440457: at_chat_finish_command (gatchat.c:461)
==15101== by 0x44109F: new_bytes (gatchat.c:532)
==15101== by 0x4433B7: received_data (gatio.c:122)
==15101== by 0x3CBAA47824: g_main_context_dispatch (gmain.c:2539)
==15101== by 0x3CBAA47B57: g_main_context_iterate.isra.23
(gmain.c:3146)
==15101== Address 0x18 is not stack'd, malloc'd or (recently) free'd
Denis Kenzior [Thu, 21 Feb 2013 14:30:03 +0000 (08:30 -0600)]
bluez5: ref / unref handsfree audio
Denis Kenzior [Thu, 21 Feb 2013 14:27:55 +0000 (08:27 -0600)]
handsfree-audio: Add ref / unref support
Denis Kenzior [Thu, 21 Feb 2013 14:27:32 +0000 (08:27 -0600)]
include: Add skeleton for handsfree-audio
Claudio Takahasi [Wed, 20 Feb 2013 22:26:19 +0000 (19:26 -0300)]
hfp_ag_bluez5: Send HFP version when registering
Claudio Takahasi [Wed, 20 Feb 2013 22:26:19 +0000 (19:26 -0300)]
hfp_hf_bluez5: Send HFP version when registering
Claudio Takahasi [Wed, 20 Feb 2013 22:26:19 +0000 (19:26 -0300)]
bluez5: Add profile version argument
This patch adds sending of the Version argument to RegisterProfile
method. The version is required to create the service record
containing the correct profile version.
Claudio Takahasi [Wed, 20 Feb 2013 22:26:18 +0000 (19:26 -0300)]
hfp_hf_bluez5: Add local HFP version tracking
Fallback to HFP 1.5 if defer setup is not supported since it is not
possible to proceed with codec negotiation.
Denis Kenzior [Thu, 21 Feb 2013 03:28:01 +0000 (21:28 -0600)]
handsfree-audio: Don't go over 80 characters
Claudio Takahasi [Wed, 20 Feb 2013 21:55:51 +0000 (18:55 -0300)]
handsfree-audio: Add Agent tracking
This patch tracks when the Handsfree Audio Agent leaves the system BUS,
and free agent allocated resources.
Claudio Takahasi [Wed, 20 Feb 2013 21:55:49 +0000 (18:55 -0300)]
handsfree-audio: Call Agent "Release" when exiting
This patch notifies the Agent implementation that it is no longer
registered to the service daemon.
Claudio Takahasi [Wed, 20 Feb 2013 21:55:50 +0000 (18:55 -0300)]
handsfree-audio: Add Agent "Unregister"
This patch implements the "Unregister" method of the Handsfree Audio
Manager. The agent is unregistered if sender and path match.
Claudio Takahasi [Wed, 20 Feb 2013 21:55:48 +0000 (18:55 -0300)]
handsfree-audio: Free agent when exiting
Free agent allocated resources when oFono exits.
Vinicius Costa Gomes [Wed, 20 Feb 2013 21:55:47 +0000 (18:55 -0300)]
handsfree-audio: Add codec array validation
This patch checks if the codec array included in the "Register" method
contains valid codec ID's.
Claudio Takahasi [Wed, 20 Feb 2013 21:55:46 +0000 (18:55 -0300)]
handsfree-audio: Add Agent "Register" method
This patch adds the initial Handsfree Audio Manager "Register"
method implementation. It adds the parsing of the arguments included
in the message and checks if there is an agent registered already.
Claudio Takahasi [Wed, 20 Feb 2013 21:55:45 +0000 (18:55 -0300)]
main: Call handsfree audio manager init and cleanup
Claudio Takahasi [Wed, 20 Feb 2013 21:55:45 +0000 (18:55 -0300)]
handsfree-audio: Add Manager registration
Adds the initial implementation of new experimental Handsfree Audio
Manager interface. This patch adds the interface registration and
the declaration of it's methods.
Denis Kenzior [Tue, 19 Feb 2013 15:47:08 +0000 (09:47 -0600)]
doc: Add experimental handsfree-audio API
Denis Kenzior [Thu, 14 Feb 2013 02:40:30 +0000 (20:40 -0600)]
hfp_hf_bluez5: Ensure active SLC for SCO links
Whenever a SCO connection is attempted, ensure that the SLC link is
already active between us and the same remote peer.
Denis Kenzior [Thu, 14 Feb 2013 02:30:21 +0000 (20:30 -0600)]
hfp_hf_bluez5: Remove use of hash table
The number of paired devices is quite small, so the use of the hash
table for lookup seems unnecessary. The typical user will have no more
than 1-2 devices paired, maybe half a dozen in a less common case.
Denis Kenzior [Thu, 14 Feb 2013 02:14:32 +0000 (20:14 -0600)]
hfp_hf_bluez5: Use faster method of disable()
Denis Kenzior [Thu, 7 Feb 2013 20:53:44 +0000 (14:53 -0600)]
modem: Implement ofono_modem_find
Denis Kenzior [Thu, 7 Feb 2013 20:53:34 +0000 (14:53 -0600)]
include: Add ofono_modem_find
Claudio Takahasi [Fri, 1 Feb 2013 13:24:30 +0000 (10:24 -0300)]
hfp_hf_bluez5: Remove unneeded modem hash lookup
Modem object is created when the Device Proxy is added, and it is
paired. Another path is when the Device "Paired" property changes
to True.
Denis Kenzior [Thu, 7 Feb 2013 16:36:19 +0000 (10:36 -0600)]
hfp_hf_bluez5: Use some tricks to optimize code
Denis Kenzior [Thu, 7 Feb 2013 16:22:57 +0000 (10:22 -0600)]
gdbus: Add g_dbus_proxy_set_removed_watch
Vinicius Costa Gomes [Fri, 1 Feb 2013 23:33:09 +0000 (20:33 -0300)]
hfp_hf_bluez5: Add support for Enabling/Disabling the modem
Now that we have the support for sending the correct messages
to BlueZ, we are able to dynamically power up/down the HFP modem.
We add another property to the modem to be able to get the D-Bus
object path that represents the remote device.
Claudio Takahasi [Fri, 1 Feb 2013 23:33:08 +0000 (20:33 -0300)]
hfp_hf_bluez5: Add Profile RequestDisconnection
This patch implements RequestDisconnection method of the Profile1
interface. This method gets called when the profile gets disconnected.
The profile implementation needs to cleanup the resources related to
the informed device.
Vinicius Costa Gomes [Fri, 1 Feb 2013 23:33:07 +0000 (20:33 -0300)]
bluez5: Add support for Connecting/Disconnecting per UUID
This adds supports for sending the ConnectProfile() and
DisconnectProfile() messages for the org.bluez.Device1 interface.
Claudio Takahasi [Fri, 1 Feb 2013 23:33:06 +0000 (20:33 -0300)]
bluez5: Rename BlueZ Profile registration functions
This patch renames external profile registration functions replacing the
prefix from 'bluetooth_' to 'bt_' in order to follow the name convention
adopted for bluez5 functions.
Vinicius Costa Gomes [Thu, 7 Feb 2013 17:40:31 +0000 (14:40 -0300)]
gdbus: Fix missing PropertiesChanged signal
If D-Bus ObjectManager is not supported, InterfacesAdded signal
checking needs to be ignored otherwise PropertiesChanged signal
will never be sent.