From 0309d598a13c91cd5cee833074f7340f44ce5b34 Mon Sep 17 00:00:00 2001 From: hackerman-kl Date: Sun, 15 Mar 2026 10:21:03 +0100 Subject: [PATCH] milan-avb: use vlan and mac address from the stream itself --- src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c | 6 ++++-- src/modules/module-avb/aecp-aem-state.h | 2 -- src/modules/module-avb/stream.h | 5 +++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c b/src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c index 27e6f1a18..88c189af5 100644 --- a/src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c +++ b/src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c @@ -956,6 +956,7 @@ int handle_fsm_prb_w_resp_rcv_probe_tx_resp_evt(struct acmp *acmp, { uint8_t buf[512]; struct acmp_milan_v12 *acmp_m = (struct acmp_milan_v12 *)acmp; + struct stream *stream_generic = (struct stream *) stream; struct server *server = acmp->server; struct avb_ethernet_header *h = (struct avb_ethernet_header *)m; struct avb_packet_acmp *p = SPA_PTROFF(m, sizeof(*h), void); @@ -997,9 +998,10 @@ int handle_fsm_prb_w_resp_rcv_probe_tx_resp_evt(struct acmp *acmp, stream->acmp_status.common.saved_bindings.talker_unique_id = ntohs(p->talker_unique_id); stream->acmp_status.common.saved_bindings.talker_unique_id = ntohs(p->talker_unique_id); - memcpy(stream->acmp_status.common.stream_dest_mac, p->stream_dest_mac, + memcpy(stream_generic->addr, p->stream_dest_mac, sizeof(p->stream_dest_mac)); - stream->acmp_status.common.stream_vlanid = ntohs(p->stream_vlan_id); + stream_generic->vlan_id = ntohs(p->stream_vlan_id); + stream->acmp_status.common.probing_status = ACMP_MILAN_V12_PBSTA_COMPLETED; diff --git a/src/modules/module-avb/aecp-aem-state.h b/src/modules/module-avb/aecp-aem-state.h index b51496eb2..58d299767 100644 --- a/src/modules/module-avb/aecp-aem-state.h +++ b/src/modules/module-avb/aecp-aem-state.h @@ -154,8 +154,6 @@ struct acmp_stream_status_common { struct stream_input_saved_binding_param saved_bindings; uint8_t probing_status; uint8_t acmp_status; - uint8_t stream_dest_mac[6]; - uint16_t stream_vlanid; }; struct acmp_stream_status_milan_v12 { diff --git a/src/modules/module-avb/stream.h b/src/modules/module-avb/stream.h index f15837140..37a5c796c 100644 --- a/src/modules/module-avb/stream.h +++ b/src/modules/module-avb/stream.h @@ -25,15 +25,16 @@ struct stream { uint16_t direction; uint64_t id; - uint64_t peer_id; struct pw_stream *stream; struct spa_hook stream_listener; + uint64_t peer_id; uint8_t addr[6]; + int vlan_id; + struct spa_source *source; int prio; - int vlan_id; int mtt; int t_uncertainty; uint32_t frames_per_pdu;