static struct btd_profile a2dp_source_profile = {
.name = "a2dp-source",
.priority = BTD_PROFILE_PRIORITY_MEDIUM,
+ .version = 0x0103,
.remote_uuid = A2DP_SOURCE_UUID,
.device_probe = a2dp_source_probe,
static struct btd_profile a2dp_sink_profile = {
.name = "a2dp-sink",
.priority = BTD_PROFILE_PRIORITY_MEDIUM,
+ .version = 0x0103,
.remote_uuid = A2DP_SINK_UUID,
.device_probe = a2dp_sink_probe,
static struct btd_profile avrcp_target_profile = {
.name = "audio-avrcp-target",
+ .version = 0x0105,
.remote_uuid = AVRCP_TARGET_UUID,
.device_probe = avrcp_target_probe,
static struct btd_profile avrcp_controller_profile = {
.name = "avrcp-controller",
+ .version = 0x0104,
.remote_uuid = AVRCP_REMOTE_UUID,
.device_probe = avrcp_controller_probe,
static struct btd_profile hdp_source_profile = {
.name = "hdp-source",
+ .version = 0x0100,
+
.remote_uuid = HDP_SOURCE_UUID,
.device_probe = hdp_driver_probe,
static struct btd_profile hdp_sink_profile = {
.name = "hdp-sink",
+ .version = 0x0100,
+
.remote_uuid = HDP_SINK_UUID,
.device_probe = hdp_driver_probe,
static struct btd_profile input_profile = {
.name = "input-hid",
+ .version = 0x0101,
+
.local_uuid = HID_UUID,
.remote_uuid = HID_UUID,
static struct btd_profile panu_profile = {
.name = "network-panu",
+ .version = 0x0100,
.local_uuid = NAP_UUID,
.remote_uuid = PANU_UUID,
.device_probe = connection_register,
static struct btd_profile gn_profile = {
.name = "network-gn",
+ .version = 0x0100,
.local_uuid = PANU_UUID,
.remote_uuid = GN_UUID,
.device_probe = connection_register,
static struct btd_profile nap_profile = {
.name = "network-nap",
+ .version = 0x0100,
.local_uuid = PANU_UUID,
.remote_uuid = NAP_UUID,
.device_probe = connection_register,
struct btd_profile {
const char *name;
int priority;
+ uint16_t version;
const char *local_uuid;
const char *remote_uuid;