mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-05-01 06:46:47 -04:00
milan-avb: aecp: dispatch Milan MVU vendor-unique commands
This commit is contained in:
parent
363418bee2
commit
e9e271ec30
1 changed files with 13 additions and 0 deletions
|
|
@ -11,6 +11,7 @@
|
||||||
|
|
||||||
#include "aecp.h"
|
#include "aecp.h"
|
||||||
#include "aecp-aem.h"
|
#include "aecp-aem.h"
|
||||||
|
#include "aecp-vendor-unique-milan-v12.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
|
|
||||||
static const uint8_t mac[6] = AVB_BROADCAST_MAC;
|
static const uint8_t mac[6] = AVB_BROADCAST_MAC;
|
||||||
|
|
@ -83,6 +84,18 @@ static int aecp_message(void *data, uint64_t now, const void *message, int len)
|
||||||
|
|
||||||
message_type = AVB_PACKET_AECP_GET_MESSAGE_TYPE(p);
|
message_type = AVB_PACKET_AECP_GET_MESSAGE_TYPE(p);
|
||||||
|
|
||||||
|
/* Milan v1.2 Section 5.4.4: AECP VENDOR_UNIQUE_COMMAND with the Milan MVU
|
||||||
|
* protocol_id is dispatched separately. The handler returns 1 if it
|
||||||
|
* recognised the protocol_id (sent a response or NOT_IMPLEMENTED for
|
||||||
|
* the specific MVU command); 0 means "not Milan MVU, fall through". */
|
||||||
|
if (message_type == AVB_AECP_MESSAGE_TYPE_VENDOR_UNIQUE_COMMAND &&
|
||||||
|
server->avb_mode == AVB_MODE_MILAN_V12) {
|
||||||
|
int rc = aecp_vendor_unique_milan_v12_handle_command(aecp,
|
||||||
|
message, len);
|
||||||
|
if (rc != 0)
|
||||||
|
return rc < 0 ? rc : 0;
|
||||||
|
}
|
||||||
|
|
||||||
info = find_msg_info(message_type, NULL);
|
info = find_msg_info(message_type, NULL);
|
||||||
if (info == NULL)
|
if (info == NULL)
|
||||||
return reply_not_implemented(aecp, message, len);
|
return reply_not_implemented(aecp, message, len);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue