From b2f7927776f1fc0cc66a717b2cc1771325c570cb Mon Sep 17 00:00:00 2001 From: Andrei Emeltchenko Date: Wed, 12 Mar 2014 16:40:25 +0200 Subject: [PATCH] android/avrcp: Add avrcp_send_passthrough function This function allows to send AVRCP vendor unique commands. --- android/avrcp-lib.c | 14 ++++++++++++++ android/avrcp-lib.h | 1 + 2 files changed, 15 insertions(+) diff --git a/android/avrcp-lib.c b/android/avrcp-lib.c index befc40493..a72dbffbb 100644 --- a/android/avrcp-lib.c +++ b/android/avrcp-lib.c @@ -469,3 +469,17 @@ int avrcp_register_notification_rsp(struct avrcp *session, uint8_t transaction, AVC_SUBUNIT_PANEL, AVRCP_REGISTER_NOTIFICATION, params, params_len); } + +int avrcp_send_passthrough(struct avrcp *session, uint32_t vendor, uint8_t op) +{ + uint8_t params[5]; + + if (!vendor) + return avctp_send_passthrough(session->conn, op, NULL, 0); + + hton24(params, vendor); + bt_put_be16(op, ¶ms[3]); + + return avctp_send_passthrough(session->conn, AVC_VENDOR_UNIQUE, params, + sizeof(params)); +} diff --git a/android/avrcp-lib.h b/android/avrcp-lib.h index 91a7d4701..cc6c2eef6 100644 --- a/android/avrcp-lib.h +++ b/android/avrcp-lib.h @@ -164,3 +164,4 @@ int avrcp_get_element_attrs_rsp(struct avrcp *session, uint8_t transaction, int avrcp_register_notification_rsp(struct avrcp *session, uint8_t transaction, uint8_t code, uint8_t *params, size_t params_len); +int avrcp_send_passthrough(struct avrcp *session, uint32_t vendor, uint8_t op); -- 2.47.3