Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 8 additions & 19 deletions subsys/bluetooth/audio/pacs.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,23 +109,6 @@ static void get_pac_records(struct bt_conn *conn, enum bt_audio_dir dir,
}
}

static ssize_t pac_read(struct bt_conn *conn, const struct bt_gatt_attr *attr,
void *buf, uint16_t len, uint16_t offset)
{
enum bt_audio_dir dir;

if (!bt_uuid_cmp(attr->uuid, BT_UUID_PACS_SNK)) {
dir = BT_AUDIO_DIR_SINK;
} else {
dir = BT_AUDIO_DIR_SOURCE;
}

get_pac_records(conn, dir, &read_buf);

return bt_gatt_attr_read(conn, attr, buf, len, offset, read_buf.data,
read_buf.len);
}

static void available_context_cfg_changed(const struct bt_gatt_attr *attr, uint16_t value)
{
BT_DBG("attr %p value 0x%04x", attr, value);
Expand Down Expand Up @@ -253,7 +236,10 @@ static ssize_t snk_read(struct bt_conn *conn, const struct bt_gatt_attr *attr,
BT_DBG("conn %p attr %p buf %p len %u offset %u", conn, attr, buf, len,
offset);

return pac_read(conn, attr, buf, len, offset);
get_pac_records(conn, BT_AUDIO_DIR_SINK, &read_buf);

return bt_gatt_attr_read(conn, attr, buf, len, offset, read_buf.data,
read_buf.len);
}

static void snk_cfg_changed(const struct bt_gatt_attr *attr, uint16_t value)
Expand Down Expand Up @@ -349,7 +335,10 @@ static ssize_t src_read(struct bt_conn *conn, const struct bt_gatt_attr *attr,
BT_DBG("conn %p attr %p buf %p len %u offset %u", conn, attr, buf, len,
offset);

return pac_read(conn, attr, buf, len, offset);
get_pac_records(conn, BT_AUDIO_DIR_SOURCE, &read_buf);

return bt_gatt_attr_read(conn, attr, buf, len, offset, read_buf.data,
read_buf.len);
}

static void src_cfg_changed(const struct bt_gatt_attr *attr, uint16_t value)
Expand Down