[PATCH BlueZ 2/5 v2] AVRCP: rename avrcp_header to avc_header

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>

AVCTP carries AV/C packets/PDUs not AVRCP as avrcp_header suggests.
---
 audio/control.c |   96 +++++++++++++++++++++++++++---------------------------
 1 files changed, 48 insertions(+), 48 deletions(-)

diff --git a/audio/control.c b/audio/control.c
index f84c7f7..91ab8d4 100644
--- a/audio/control.c
+++ b/audio/control.c
@@ -212,14 +212,14 @@ struct avctp_header {
 } __attribute__ ((packed));
 #define AVCTP_HEADER_LENGTH 3
 
-struct avrcp_header {
+struct avc_header {
 	uint8_t code:4;
 	uint8_t _hdr0:4;
 	uint8_t subunit_id:3;
 	uint8_t subunit_type:5;
 	uint8_t opcode;
 } __attribute__ ((packed));
-#define AVRCP_HEADER_LENGTH 3
+#define AVC_HEADER_LENGTH 3
 
 struct avrcp_spec_avc_pdu {
 	uint8_t company_id[3];
@@ -242,14 +242,14 @@ struct avctp_header {
 } __attribute__ ((packed));
 #define AVCTP_HEADER_LENGTH 3
 
-struct avrcp_header {
+struct avc_header {
 	uint8_t _hdr0:4;
 	uint8_t code:4;
 	uint8_t subunit_type:5;
 	uint8_t subunit_id:3;
 	uint8_t opcode;
 } __attribute__ ((packed));
-#define AVRCP_HEADER_LENGTH 3
+#define AVC_HEADER_LENGTH 3
 
 struct avrcp_spec_avc_pdu {
 	uint8_t company_id[3];
@@ -721,12 +721,12 @@ static const char *battery_status_to_str(enum battery_status status)
 
 static int avctp_send_event(struct control *control, uint8_t id, void *data)
 {
-	uint8_t buf[AVCTP_HEADER_LENGTH + AVRCP_HEADER_LENGTH +
+	uint8_t buf[AVCTP_HEADER_LENGTH + AVC_HEADER_LENGTH +
 					AVRCP_SPECAVCPDU_HEADER_LENGTH + 9];
 	struct avctp_header *avctp = (void *) buf;
-	struct avrcp_header *avrcp = (void *) &buf[AVCTP_HEADER_LENGTH];
+	struct avc_header *avc = (void *) &buf[AVCTP_HEADER_LENGTH];
 	struct avrcp_spec_avc_pdu *pdu = (void *) &buf[AVCTP_HEADER_LENGTH +
-							AVRCP_HEADER_LENGTH];
+							AVC_HEADER_LENGTH];
 	int sk;
 	uint16_t size;
 
@@ -743,9 +743,9 @@ static int avctp_send_event(struct control *control, uint8_t id, void *data)
 	avctp->cr = AVCTP_RESPONSE;
 	avctp->pid = htons(AV_REMOTE_SVCLASS_ID);
 
-	avrcp->code = CTYPE_CHANGED;
-	avrcp->subunit_type = SUBUNIT_PANEL;
-	avrcp->opcode = OP_VENDORDEP;
+	avc->code = CTYPE_CHANGED;
+	avc->subunit_type = SUBUNIT_PANEL;
+	avc->opcode = OP_VENDORDEP;
 
 	pdu->company_id[0] = IEEEID_BTSIG >> 16;
 	pdu->company_id[1] = (IEEEID_BTSIG >> 8) & 0xFF;
@@ -780,7 +780,7 @@ static int avctp_send_event(struct control *control, uint8_t id, void *data)
 	}
 
 	pdu->params_len = htons(size);
-	size += AVCTP_HEADER_LENGTH + AVRCP_HEADER_LENGTH +
+	size += AVCTP_HEADER_LENGTH + AVC_HEADER_LENGTH +
 					AVRCP_SPECAVCPDU_HEADER_LENGTH;
 
 	sk = g_io_channel_unix_get_fd(control->io);
@@ -1451,19 +1451,19 @@ static struct pdu_handler {
 /* handle vendordep pdu inside an avctp packet */
 static int handle_vendordep_pdu(struct control *control,
 					struct avctp_header *avctp,
-					struct avrcp_header *avrcp,
+					struct avc_header *avc,
 					int operand_count)
 {
 	struct pdu_handler *handler;
-	struct avrcp_spec_avc_pdu *pdu = (void *) avrcp + AVRCP_HEADER_LENGTH;
+	struct avrcp_spec_avc_pdu *pdu = (void *) avc + AVC_HEADER_LENGTH;
 	uint32_t company_id = (pdu->company_id[0] << 16) |
 				(pdu->company_id[1] << 8) |
 				(pdu->company_id[2]);
 
 	if (company_id != IEEEID_BTSIG ||
 				pdu->packet_type != AVCTP_PACKET_SINGLE) {
-		avrcp->code = CTYPE_NOT_IMPLEMENTED;
-		return AVRCP_HEADER_LENGTH;
+		avc->code = CTYPE_NOT_IMPLEMENTED;
+		return AVC_HEADER_LENGTH;
 	}
 
 	pdu->packet_type = 0;
@@ -1477,7 +1477,7 @@ static int handle_vendordep_pdu(struct control *control,
 			break;
 	}
 
-	if (!handler || handler->code != avrcp->code) {
+	if (!handler || handler->code != avc->code) {
 		pdu->params[0] = E_INVALID_COMMAND;
 		goto err_metadata;
 	}
@@ -1487,16 +1487,16 @@ static int handle_vendordep_pdu(struct control *control,
 		goto err_metadata;
 	}
 
-	avrcp->code = handler->func(control, pdu, avctp->transaction);
+	avc->code = handler->func(control, pdu, avctp->transaction);
 
-	return AVRCP_HEADER_LENGTH + AVRCP_SPECAVCPDU_HEADER_LENGTH +
+	return AVC_HEADER_LENGTH + AVRCP_SPECAVCPDU_HEADER_LENGTH +
 						ntohs(pdu->params_len);
 
 err_metadata:
 	pdu->params_len = htons(1);
-	avrcp->code = CTYPE_REJECTED;
+	avc->code = CTYPE_REJECTED;
 
-	return AVRCP_HEADER_LENGTH + AVRCP_SPECAVCPDU_HEADER_LENGTH + 1;
+	return AVC_HEADER_LENGTH + AVRCP_SPECAVCPDU_HEADER_LENGTH + 1;
 }
 
 static void avctp_disconnected(struct audio_device *dev)
@@ -1593,7 +1593,7 @@ static gboolean control_cb(GIOChannel *chan, GIOCondition cond,
 	struct control *control = data;
 	unsigned char buf[1024], *operands;
 	struct avctp_header *avctp;
-	struct avrcp_header *avrcp;
+	struct avc_header *avc;
 	int ret, packet_size, operand_count, sock;
 
 	if (cond & (G_IO_ERR | G_IO_HUP | G_IO_NVAL))
@@ -1622,65 +1622,65 @@ static gboolean control_cb(GIOChannel *chan, GIOCondition cond,
 			avctp->cr, avctp->ipid, ntohs(avctp->pid));
 
 	ret -= sizeof(struct avctp_header);
-	if ((unsigned int) ret < sizeof(struct avrcp_header)) {
+	if ((unsigned int) ret < sizeof(struct avc_header)) {
 		error("Too small AVRCP packet");
 		goto failed;
 	}
 
-	avrcp = (struct avrcp_header *) (buf + sizeof(struct avctp_header));
+	avc = (struct avc_header *) (buf + sizeof(struct avctp_header));
 
-	ret -= sizeof(struct avrcp_header);
+	ret -= sizeof(struct avc_header);
 
-	operands = buf + sizeof(struct avctp_header) + sizeof(struct avrcp_header);
+	operands = buf + sizeof(struct avctp_header) + sizeof(struct avc_header);
 	operand_count = ret;
 
-	DBG("AVRCP %s 0x%01X, subunit_type 0x%02X, subunit_id 0x%01X, "
+	DBG("AV/C %s 0x%01X, subunit_type 0x%02X, subunit_id 0x%01X, "
 			"opcode 0x%02X, %d operands",
 			avctp->cr ? "response" : "command",
-			avrcp->code, avrcp->subunit_type, avrcp->subunit_id,
-			avrcp->opcode, operand_count);
+			avc->code, avc->subunit_type, avc->subunit_id,
+			avc->opcode, operand_count);
 
 	if (avctp->packet_type != AVCTP_PACKET_SINGLE) {
 		avctp->cr = AVCTP_RESPONSE;
-		avrcp->code = CTYPE_NOT_IMPLEMENTED;
+		avc->code = CTYPE_NOT_IMPLEMENTED;
 	} else if (avctp->pid != htons(AV_REMOTE_SVCLASS_ID)) {
 		avctp->ipid = 1;
 		avctp->cr = AVCTP_RESPONSE;
 		packet_size = sizeof(*avctp);
 	} else if (avctp->cr == AVCTP_COMMAND &&
-			avrcp->code == CTYPE_CONTROL &&
-			avrcp->subunit_type == SUBUNIT_PANEL &&
-			avrcp->opcode == OP_PASSTHROUGH) {
+			avc->code == CTYPE_CONTROL &&
+			avc->subunit_type == SUBUNIT_PANEL &&
+			avc->opcode == OP_PASSTHROUGH) {
 		handle_panel_passthrough(control, operands, operand_count);
 		avctp->cr = AVCTP_RESPONSE;
-		avrcp->code = CTYPE_ACCEPTED;
+		avc->code = CTYPE_ACCEPTED;
 	} else if (avctp->cr == AVCTP_COMMAND &&
-			avrcp->code == CTYPE_STATUS &&
-			(avrcp->opcode == OP_UNITINFO
-			|| avrcp->opcode == OP_SUBUNITINFO)) {
+			avc->code == CTYPE_STATUS &&
+			(avc->opcode == OP_UNITINFO
+			|| avc->opcode == OP_SUBUNITINFO)) {
 		avctp->cr = AVCTP_RESPONSE;
-		avrcp->code = CTYPE_STABLE;
+		avc->code = CTYPE_STABLE;
 		/* The first operand should be 0x07 for the UNITINFO response.
 		 * Neither AVRCP (section 22.1, page 117) nor AVC Digital
 		 * Interface Command Set (section 9.2.1, page 45) specs
 		 * explain this value but both use it */
-		if (operand_count >= 1 && avrcp->opcode == OP_UNITINFO)
+		if (operand_count >= 1 && avc->opcode == OP_UNITINFO)
 			operands[0] = 0x07;
 		if (operand_count >= 2)
 			operands[1] = SUBUNIT_PANEL << 3;
-		DBG("reply to %s", avrcp->opcode == OP_UNITINFO ?
+		DBG("reply to %s", avc->opcode == OP_UNITINFO ?
 				"OP_UNITINFO" : "OP_SUBUNITINFO");
 	} else if (avctp->cr == AVCTP_COMMAND &&
-			avrcp->opcode == OP_VENDORDEP) {
+			avc->opcode == OP_VENDORDEP) {
 		int r_size;
 		operand_count -= 3;
 		avctp->cr = AVCTP_RESPONSE;
-		r_size = handle_vendordep_pdu(control, avctp, avrcp,
+		r_size = handle_vendordep_pdu(control, avctp, avc,
 								operand_count);
 		packet_size = AVCTP_HEADER_LENGTH + r_size;
 	} else {
 		avctp->cr = AVCTP_RESPONSE;
-		avrcp->code = CTYPE_REJECTED;
+		avc->code = CTYPE_REJECTED;
 	}
 
 	ret = write(sock, buf, packet_size);
@@ -2092,10 +2092,10 @@ static DBusMessage *control_is_connected(DBusConnection *conn,
 
 static int avctp_send_passthrough(struct control *control, uint8_t op)
 {
-	unsigned char buf[AVCTP_HEADER_LENGTH + AVRCP_HEADER_LENGTH + 2];
+	unsigned char buf[AVCTP_HEADER_LENGTH + AVC_HEADER_LENGTH + 2];
 	struct avctp_header *avctp = (void *) buf;
-	struct avrcp_header *avrcp = (void *) &buf[AVCTP_HEADER_LENGTH];
-	uint8_t *operands = &buf[AVCTP_HEADER_LENGTH + AVRCP_HEADER_LENGTH];
+	struct avc_header *avc = (void *) &buf[AVCTP_HEADER_LENGTH];
+	uint8_t *operands = &buf[AVCTP_HEADER_LENGTH + AVC_HEADER_LENGTH];
 	int sk = g_io_channel_unix_get_fd(control->io);
 	static uint8_t transaction = 0;
 
@@ -2106,9 +2106,9 @@ static int avctp_send_passthrough(struct control *control, uint8_t op)
 	avctp->cr = AVCTP_COMMAND;
 	avctp->pid = htons(AV_REMOTE_SVCLASS_ID);
 
-	avrcp->code = CTYPE_CONTROL;
-	avrcp->subunit_type = SUBUNIT_PANEL;
-	avrcp->opcode = OP_PASSTHROUGH;
+	avc->code = CTYPE_CONTROL;
+	avc->subunit_type = SUBUNIT_PANEL;
+	avc->opcode = OP_PASSTHROUGH;
 
 	operands[0] = op & 0x7f;
 	operands[1] = 0;
-- 
1.7.6.1

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux