Skip to content

Commit

Permalink
webos: bluez5 (refresh patches to apply on 5.79 version)
Browse files Browse the repository at this point in the history
:Release Notes:
Upgraded in:
https://git.openembedded.org/openembedded-core/commit/?id=52d4168f66dd3c4d68e63c8ee17d186b4bdd0e55

:Detailed Notes:
Fixes:
http://gecko.lge.com:8000/Errors/Details/1008860

:Testing Performed:
Only build tested.

:QA Notes:
No change to image.

:Issues Addressed:
[WRR-5443] Create GPVB with Yocto 5.2 Walnascar

Change-Id: I083f719eb9d1f8ad68061c1b4adef65e8dcba55c
  • Loading branch information
shr-project committed Dec 7, 2024
1 parent c9c858f commit 339d8a9
Show file tree
Hide file tree
Showing 22 changed files with 178 additions and 175 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,18 @@ Upstream-Status: Pending
1 file changed, 17 insertions(+)

diff --git a/src/device.c b/src/device.c
index 0f18c8c7f..51c3798d6 100644
index 2b3d19f55..a40ce0578 100644
--- a/src/device.c
+++ b/src/device.c
@@ -223,6 +223,7 @@ struct btd_device {
@@ -224,6 +224,7 @@ struct btd_device {
char name[MAX_NAME_LENGTH + 1];
char *alias;
uint32_t class;
+ uint32_t devicetype;
uint16_t vendor_src;
uint16_t vendor;
uint16_t product;
@@ -1016,6 +1017,21 @@ static gboolean dev_property_get_class(const GDBusPropertyTable *property,
@@ -1017,6 +1018,21 @@ static gboolean dev_property_get_class(const GDBusPropertyTable *property,
return TRUE;
}

Expand All @@ -57,7 +57,7 @@ index 0f18c8c7f..51c3798d6 100644
static gboolean get_appearance(const GDBusPropertyTable *property, void *data,
uint16_t *appearance)
{
@@ -3230,6 +3246,7 @@ static const GDBusMethodTable device_methods[] = {
@@ -3327,6 +3343,7 @@ static const GDBusMethodTable device_methods[] = {
static const GDBusPropertyTable device_properties[] = {
{ "Address", "s", dev_property_get_address },
{ "AddressType", "s", property_get_address_type },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ Upstream-Status: Pending
1 file changed, 28 insertions(+)

diff --git a/src/device.c b/src/device.c
index 51c3798d6..6bc13f4bd 100644
index a40ce0578..68848b1b3 100644
--- a/src/device.c
+++ b/src/device.c
@@ -2630,6 +2630,33 @@ static DBusMessage *dev_connect(DBusConnection *conn, DBusMessage *msg,
@@ -2631,6 +2631,33 @@ static DBusMessage *dev_connect(DBusConnection *conn, DBusMessage *msg,
return connect_profiles(dev, bdaddr_type, msg, NULL);
}

Expand Down Expand Up @@ -67,7 +67,7 @@ index 51c3798d6..6bc13f4bd 100644
static DBusMessage *connect_profile(DBusConnection *conn, DBusMessage *msg,
void *user_data)
{
@@ -3234,6 +3261,7 @@ static DBusMessage *cancel_pairing(DBusConnection *conn, DBusMessage *msg,
@@ -3328,6 +3355,7 @@ static DBusMessage *get_service_records(DBusConnection *conn, DBusMessage *msg,
static const GDBusMethodTable device_methods[] = {
{ GDBUS_ASYNC_METHOD("Disconnect", NULL, NULL, dev_disconnect) },
{ GDBUS_ASYNC_METHOD("Connect", NULL, NULL, dev_connect) },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,10 +88,10 @@ index 2d2aa9508..d3821b80a 100644
return -EIO;

diff --git a/obexd/client/session.c b/obexd/client/session.c
index 7d8ebb04e..884013b75 100644
index 13a834e14..2b147dcb8 100644
--- a/obexd/client/session.c
+++ b/obexd/client/session.c
@@ -583,7 +583,7 @@ struct obc_session *obc_session_create(const char *source,
@@ -591,7 +591,7 @@ struct obc_session *obc_session_create(const char *source,
if (driver == NULL)
return NULL;

Expand Down Expand Up @@ -167,12 +167,12 @@ index b6c614908..f8879c8bb 100644

</busconfig>
diff --git a/tools/obexctl.c b/tools/obexctl.c
index 56a76915c..8678b86c9 100644
index a398b095b..31b3e263d 100644
--- a/tools/obexctl.c
+++ b/tools/obexctl.c
@@ -2154,7 +2154,7 @@ int main(int argc, char *argv[])
@@ -2158,7 +2158,7 @@ int main(int argc, char *argv[])
bt_shell_set_menu(&main_menu);
bt_shell_set_prompt(PROMPT_OFF);
bt_shell_set_prompt(PROMPT, NULL);

- dbus_conn = g_dbus_setup_bus(DBUS_BUS_SESSION, NULL, NULL);
+ dbus_conn = g_dbus_setup_bus(DBUS_BUS_SYSTEM, NULL, NULL);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,18 +25,18 @@ Upstream-Status: Inappropriate [webos specific]
1 file changed, 49 insertions(+), 1 deletion(-)

diff --git a/src/device.c b/src/device.c
index 6bc13f4bd..87714afe0 100644
index 68848b1b3..c3664b061 100644
--- a/src/device.c
+++ b/src/device.c
@@ -232,6 +232,7 @@ struct btd_device {
@@ -233,6 +233,7 @@ struct btd_device {
char *modalias;
struct btd_adapter *adapter;
GSList *uuids;
+ GSList *connected_uuids;
GSList *primaries; /* List of primary services */
GSList *services; /* List of btd_service */
GSList *pending; /* Pending services */
@@ -1048,6 +1049,28 @@ static gboolean get_appearance(const GDBusPropertyTable *property, void *data,
@@ -1049,6 +1050,28 @@ static gboolean get_appearance(const GDBusPropertyTable *property, void *data,
return FALSE;
}

Expand Down Expand Up @@ -65,7 +65,7 @@ index 6bc13f4bd..87714afe0 100644
static gboolean dev_property_exists_appearance(
const GDBusPropertyTable *property, void *data)
{
@@ -2154,8 +2177,14 @@ static void device_profile_connected(struct btd_device *dev,
@@ -2155,8 +2178,14 @@ static void device_profile_connected(struct btd_device *dev,

DBG("%s %s (%d)", profile->name, strerror(-err), -err);

Expand All @@ -81,7 +81,7 @@ index 6bc13f4bd..87714afe0 100644

if (dev->pending == NULL)
goto done;
@@ -2681,6 +2710,14 @@ static DBusMessage *connect_profile(DBusConnection *conn, DBusMessage *msg,
@@ -2682,6 +2711,14 @@ static DBusMessage *connect_profile(DBusConnection *conn, DBusMessage *msg,
static void device_profile_disconnected(struct btd_device *dev,
struct btd_profile *profile, int err)
{
Expand All @@ -96,15 +96,15 @@ index 6bc13f4bd..87714afe0 100644
if (!dev->disconnect)
return;

@@ -3291,6 +3328,7 @@ static const GDBusPropertyTable device_properties[] = {
@@ -3388,6 +3425,7 @@ static const GDBusPropertyTable device_properties[] = {
{ "RSSI", "n", dev_property_get_rssi, NULL, dev_property_exists_rssi },
{ "Connected", "b", dev_property_get_connected },
{ "UUIDs", "as", dev_property_get_uuids },
+ { "ConnectedUUIDS", "as", dev_property_get_connected_uuids },
{ "Modalias", "s", dev_property_get_modalias, NULL,
dev_property_exists_modalias },
{ "Adapter", "o", dev_property_get_adapter },
@@ -3425,8 +3463,18 @@ void device_remove_connection(struct btd_device *device, uint8_t bdaddr_type,
@@ -3522,8 +3560,18 @@ void device_remove_connection(struct btd_device *device, uint8_t bdaddr_type,
if (!state->connected)
return;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,10 @@ index 8ad146df1..82634f857 100644
break;
}
diff --git a/src/device.c b/src/device.c
index 87714afe0..b06db4f82 100644
index c3664b061..83d5b8aaf 100644
--- a/src/device.c
+++ b/src/device.c
@@ -186,6 +186,11 @@ enum {
@@ -187,6 +187,11 @@ enum {
WAKE_FLAG_DISABLED,
};

Expand All @@ -71,7 +71,7 @@ index 87714afe0..b06db4f82 100644
struct btd_device {
int ref_count;

@@ -293,6 +298,8 @@ struct btd_device {
@@ -294,6 +299,8 @@ struct btd_device {
time_t name_resolve_failed_time;

int8_t volume;
Expand All @@ -80,7 +80,7 @@ index 87714afe0..b06db4f82 100644
};

static const uint16_t uuid_list[] = {
@@ -1457,6 +1464,18 @@ dev_property_manufacturer_data_exist(const GDBusPropertyTable *property,
@@ -1458,6 +1465,18 @@ dev_property_manufacturer_data_exist(const GDBusPropertyTable *property,
return bt_ad_has_manufacturer_data(device->ad, NULL);
}

Expand All @@ -99,7 +99,7 @@ index 87714afe0..b06db4f82 100644
static void append_service_data(void *data, void *user_data)
{
struct bt_ad_service_data *sd = data;
@@ -1475,13 +1494,13 @@ dev_property_get_service_data(const GDBusPropertyTable *property,
@@ -1476,13 +1495,13 @@ dev_property_get_service_data(const GDBusPropertyTable *property,
struct btd_device *device = data;
DBusMessageIter dict;

Expand All @@ -114,7 +114,7 @@ index 87714afe0..b06db4f82 100644
bt_ad_foreach_service_data(device->ad, append_service_data, &dict);

dbus_message_iter_close_container(iter, &dict);
@@ -1489,6 +1508,28 @@ dev_property_get_service_data(const GDBusPropertyTable *property,
@@ -1490,6 +1509,28 @@ dev_property_get_service_data(const GDBusPropertyTable *property,
return TRUE;
}

Expand Down Expand Up @@ -143,7 +143,7 @@ index 87714afe0..b06db4f82 100644
static gboolean
dev_property_service_data_exist(const GDBusPropertyTable *property,
void *data)
@@ -2296,6 +2337,15 @@ void device_set_manufacturer_data(struct btd_device *dev, GSList *list,
@@ -2297,6 +2338,15 @@ void device_set_manufacturer_data(struct btd_device *dev, GSList *list,
g_slist_foreach(list, add_manufacturer_data, dev);
}

Expand All @@ -159,7 +159,7 @@ index 87714afe0..b06db4f82 100644
static void add_service_data(void *data, void *user_data)
{
struct eir_sd *sd = data;
@@ -3334,6 +3384,8 @@ static const GDBusPropertyTable device_properties[] = {
@@ -3431,6 +3481,8 @@ static const GDBusPropertyTable device_properties[] = {
{ "Adapter", "o", dev_property_get_adapter },
{ "ManufacturerData", "a{qv}", dev_property_get_manufacturer_data,
NULL, dev_property_manufacturer_data_exist },
Expand All @@ -168,7 +168,7 @@ index 87714afe0..b06db4f82 100644
{ "ServiceData", "a{sv}", dev_property_get_service_data,
NULL, dev_property_service_data_exist },
{ "TxPower", "n", dev_property_get_tx_power, NULL,
@@ -4398,6 +4450,9 @@ static struct btd_device *device_new(struct btd_adapter *adapter,
@@ -4496,6 +4548,9 @@ static struct btd_device *device_new(struct btd_adapter *adapter,
device->sirks = queue_new();
device->temporary = true;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,18 +29,18 @@ Upstream-Status: Inappropriate [webos specific]
4 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index 752e55be3..0a105b4a8 100644
index b5e6548e6..b6a7e4cdc 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
@@ -1244,6 +1244,7 @@ static uint8_t avrcp_handle_get_element_attributes(struct avrcp *session,
@@ -1259,6 +1259,7 @@ static uint8_t avrcp_handle_get_element_attributes(struct avrcp *session,
*/
attr_ids = player_list_metadata(player);
len = g_list_length(attr_ids);
+ media_metadata_request(session->dev);
} else {
unsigned int i;
for (i = 0, len = 0, attr_ids = NULL; i < nattr; i++) {
@@ -1507,6 +1508,7 @@ static uint8_t avrcp_handle_get_play_status(struct avrcp *session,
@@ -1522,6 +1523,7 @@ static uint8_t avrcp_handle_get_play_status(struct avrcp *session,

pdu->params_len = cpu_to_be16(9);

Expand All @@ -62,10 +62,10 @@ index 746e538fc..c434043e1 100644

static uint32_t media_player_get_duration(void *user_data)
diff --git a/src/device.c b/src/device.c
index b06db4f82..ce00f5dd6 100644
index 83d5b8aaf..6147105e6 100644
--- a/src/device.c
+++ b/src/device.c
@@ -2346,6 +2346,22 @@ void recieve_passThrough_commands(struct btd_device *dev, const char* code, cons
@@ -2347,6 +2347,22 @@ void recieve_passThrough_commands(struct btd_device *dev, const char* code, cons
DEVICE_INTERFACE, "KeyCode");
}

Expand All @@ -88,8 +88,8 @@ index b06db4f82..ce00f5dd6 100644
static void add_service_data(void *data, void *user_data)
{
struct eir_sd *sd = data;
@@ -3345,6 +3361,12 @@ static DBusMessage *cancel_pairing(DBusConnection *conn, DBusMessage *msg,
return dbus_message_new_method_return(msg);
@@ -3439,6 +3455,12 @@ static DBusMessage *get_service_records(DBusConnection *conn, DBusMessage *msg,
return reply;
}

+static const GDBusSignalTable device_avrcp_media_request_signal[] = {
Expand All @@ -101,7 +101,7 @@ index b06db4f82..ce00f5dd6 100644
static const GDBusMethodTable device_methods[] = {
{ GDBUS_ASYNC_METHOD("Disconnect", NULL, NULL, dev_disconnect) },
{ GDBUS_ASYNC_METHOD("Connect", NULL, NULL, dev_connect) },
@@ -4438,7 +4460,7 @@ static struct btd_device *device_new(struct btd_adapter *adapter,
@@ -4536,7 +4558,7 @@ static struct btd_device *device_new(struct btd_adapter *adapter,

if (g_dbus_register_interface(dbus_conn,
device->path, DEVICE_INTERFACE,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ Upstream-Status: Inappropriate [webos specific]
3 files changed, 88 insertions(+)

diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index 0a105b4a8..21eb54d16 100644
index b6a7e4cdc..8f2f97d3b 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
@@ -4160,9 +4160,16 @@ static void target_init(struct avrcp *session)
@@ -4267,6 +4267,11 @@ static void target_init(struct avrcp *session)
(1 << AVRCP_EVENT_TRACK_REACHED_END) |
(1 << AVRCP_EVENT_SETTINGS_CHANGED);

Expand All @@ -44,12 +44,16 @@ index 0a105b4a8..21eb54d16 100644
if (target->version < 0x0104)
return;

@@ -4274,6 +4279,8 @@ static void target_init(struct avrcp *session)
session->supported_events |=
(1 << AVRCP_EVENT_VOLUME_CHANGED);

+ set_avrcp_feature(session->dev, REMOTE_DEVICE_AVRCP_FEATURE_ABSOLUTE_VOLUME, false);
+
session->supported_events |=
(1 << AVRCP_EVENT_ADDRESSED_PLAYER_CHANGED) |
(1 << AVRCP_EVENT_AVAILABLE_PLAYERS_CHANGED) |
@@ -4175,6 +4182,8 @@ static void target_init(struct avrcp *session)
(1 << AVRCP_EVENT_AVAILABLE_PLAYERS_CHANGED);
@@ -4285,6 +4292,8 @@ static void target_init(struct avrcp *session)
if (!(target->features & AVRCP_FEATURE_BROWSING))
return;

Expand All @@ -58,7 +62,7 @@ index 0a105b4a8..21eb54d16 100644
avrcp_connect_browsing(session);
}

@@ -4205,14 +4214,20 @@ static void controller_init(struct avrcp *session)
@@ -4317,14 +4326,20 @@ static void controller_init(struct avrcp *session)
if (controller->version < 0x0103)
return;

Expand All @@ -80,10 +84,10 @@ index 0a105b4a8..21eb54d16 100644
}

diff --git a/src/device.c b/src/device.c
index ce00f5dd6..4aabcfe3c 100644
index 6147105e6..94906b896 100644
--- a/src/device.c
+++ b/src/device.c
@@ -300,6 +300,8 @@ struct btd_device {
@@ -301,6 +301,8 @@ struct btd_device {
int8_t volume;

struct key_code passththough_key;
Expand All @@ -92,7 +96,7 @@ index ce00f5dd6..4aabcfe3c 100644
};

static const uint16_t uuid_list[] = {
@@ -1530,6 +1532,46 @@ static gboolean dev_property_get_key_code(const GDBusPropertyTable *property,
@@ -1531,6 +1533,46 @@ static gboolean dev_property_get_key_code(const GDBusPropertyTable *property,
return TRUE;
}

Expand Down Expand Up @@ -139,7 +143,7 @@ index ce00f5dd6..4aabcfe3c 100644
static gboolean
dev_property_service_data_exist(const GDBusPropertyTable *property,
void *data)
@@ -2362,6 +2404,25 @@ void media_metadata_request(struct btd_device *dev)
@@ -2363,6 +2405,25 @@ void media_metadata_request(struct btd_device *dev)
DBUS_TYPE_INVALID);
}

Expand All @@ -165,7 +169,7 @@ index ce00f5dd6..4aabcfe3c 100644
static void add_service_data(void *data, void *user_data)
{
struct eir_sd *sd = data;
@@ -3408,6 +3469,10 @@ static const GDBusPropertyTable device_properties[] = {
@@ -3505,6 +3566,10 @@ static const GDBusPropertyTable device_properties[] = {
NULL, dev_property_manufacturer_data_exist },
{ "KeyCode", "a{sv}", dev_property_get_key_code,
NULL, dev_property_key_code_exist},
Expand All @@ -176,7 +180,7 @@ index ce00f5dd6..4aabcfe3c 100644
{ "ServiceData", "a{sv}", dev_property_get_service_data,
NULL, dev_property_service_data_exist },
{ "TxPower", "n", dev_property_get_tx_power, NULL,
@@ -4475,6 +4540,9 @@ static struct btd_device *device_new(struct btd_adapter *adapter,
@@ -4573,6 +4638,9 @@ static struct btd_device *device_new(struct btd_adapter *adapter,
device->passththough_key.state = NULL;
device->passththough_key.key = NULL;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ Upstream-Status: Pending
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/profiles/audio/transport.c b/profiles/audio/transport.c
index 300145794..3325bca72 100644
index c7a0eaec3..860cc5f8f 100644
--- a/profiles/audio/transport.c
+++ b/profiles/audio/transport.c
@@ -1396,7 +1396,7 @@ static void *transport_a2dp_src_init(struct media_transport *transport,
@@ -1625,7 +1625,7 @@ static void *transport_a2dp_src_init(struct media_transport *transport,
return NULL;

a2dp = new0(struct a2dp_transport, 1);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,10 @@ index c434043e1..c39b1846a 100644
mp->volume = volume;
}
diff --git a/profiles/audio/transport.c b/profiles/audio/transport.c
index 3325bca72..510dbc46d 100644
index 860cc5f8f..b5ce7bdca 100644
--- a/profiles/audio/transport.c
+++ b/profiles/audio/transport.c
@@ -2149,8 +2149,8 @@ void media_transport_update_volume(struct media_transport *transport,
@@ -2448,8 +2448,8 @@ void media_transport_update_volume(struct media_transport *transport,
return;

/* Check if volume really changed */
Expand Down
Loading

0 comments on commit 339d8a9

Please sign in to comment.