diff --git a/pw_bluetooth_proxy/basic_l2cap_channel.cc b/pw_bluetooth_proxy/basic_l2cap_channel.cc index a5c00be50..842969e84 100644 --- a/pw_bluetooth_proxy/basic_l2cap_channel.cc +++ b/pw_bluetooth_proxy/basic_l2cap_channel.cc @@ -25,6 +25,7 @@ namespace pw::bluetooth::proxy { pw::Result BasicL2capChannel::Create( L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t local_cid, uint16_t remote_cid, Function payload)>&& payload_from_controller_fn, @@ -38,6 +39,7 @@ pw::Result BasicL2capChannel::Create( return BasicL2capChannel( /*l2cap_channel_manager=*/l2cap_channel_manager, /*connection_handle=*/connection_handle, + /*transport=*/transport, /*local_cid=*/local_cid, /*remote_cid=*/remote_cid, /*payload_from_controller_fn=*/std::move(payload_from_controller_fn), @@ -73,13 +75,14 @@ pw::Status BasicL2capChannel::Write(pw::span payload) { BasicL2capChannel::BasicL2capChannel( L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t local_cid, uint16_t remote_cid, Function payload)>&& payload_from_controller_fn, Function&& queue_space_available_fn) : L2capChannel(/*l2cap_channel_manager=*/l2cap_channel_manager, /*connection_handle=*/connection_handle, - /*transport=*/AclTransportType::kLe, + /*transport=*/transport, /*local_cid=*/local_cid, /*remote_cid=*/remote_cid, /*payload_from_controller_fn=*/ diff --git a/pw_bluetooth_proxy/l2cap_aclu_signaling_channel.cc b/pw_bluetooth_proxy/l2cap_aclu_signaling_channel.cc index b52e4ef6c..39be27a9f 100644 --- a/pw_bluetooth_proxy/l2cap_aclu_signaling_channel.cc +++ b/pw_bluetooth_proxy/l2cap_aclu_signaling_channel.cc @@ -26,6 +26,7 @@ L2capAclUSignalingChannel::L2capAclUSignalingChannel( : L2capSignalingChannel( /*l2cap_channel_manager=*/l2cap_channel_manager, /*connection_handle=*/connection_handle, + /*transport=*/AclTransportType::kBrEdr, /*fixed_cid=*/ cpp23::to_underlying(emboss::L2capFixedCid::ACL_U_SIGNALING)) {} diff --git a/pw_bluetooth_proxy/l2cap_leu_signaling_channel.cc b/pw_bluetooth_proxy/l2cap_leu_signaling_channel.cc index a6ed5f4dd..35c931ebe 100644 --- a/pw_bluetooth_proxy/l2cap_leu_signaling_channel.cc +++ b/pw_bluetooth_proxy/l2cap_leu_signaling_channel.cc @@ -24,6 +24,7 @@ L2capLeUSignalingChannel::L2capLeUSignalingChannel( : L2capSignalingChannel( /*l2cap_channel_manager=*/l2cap_channel_manager, /*connection_handle=*/connection_handle, + /*transport=*/AclTransportType::kLe, /*fixed_cid=*/ cpp23::to_underlying(emboss::L2capFixedCid::LE_U_SIGNALING)) {} diff --git a/pw_bluetooth_proxy/l2cap_signaling_channel.cc b/pw_bluetooth_proxy/l2cap_signaling_channel.cc index 45765aec6..fd7a8546b 100644 --- a/pw_bluetooth_proxy/l2cap_signaling_channel.cc +++ b/pw_bluetooth_proxy/l2cap_signaling_channel.cc @@ -31,9 +31,11 @@ namespace pw::bluetooth::proxy { L2capSignalingChannel::L2capSignalingChannel( L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t fixed_cid) : BasicL2capChannel(/*l2cap_channel_manager=*/l2cap_channel_manager, /*connection_handle=*/connection_handle, + /*transport*/ transport, /*local_cid=*/fixed_cid, /*remote_cid=*/fixed_cid, /*payload_from_controller_fn=*/nullptr, diff --git a/pw_bluetooth_proxy/proxy_host.cc b/pw_bluetooth_proxy/proxy_host.cc index f6670a46e..ce5c03e92 100644 --- a/pw_bluetooth_proxy/proxy_host.cc +++ b/pw_bluetooth_proxy/proxy_host.cc @@ -444,6 +444,7 @@ pw::Result ProxyHost::AcquireBasicL2capChannel( return BasicL2capChannel::Create( /*l2cap_channel_manager=*/l2cap_channel_manager_, /*connection_handle=*/connection_handle, + /*transport=*/transport, /*local_cid=*/local_cid, /*remote_cid=*/remote_cid, /*payload_from_controller_fn=*/std::move(payload_from_controller_fn), diff --git a/pw_bluetooth_proxy/public/pw_bluetooth_proxy/basic_l2cap_channel.h b/pw_bluetooth_proxy/public/pw_bluetooth_proxy/basic_l2cap_channel.h index b9438a8b2..e054518cd 100644 --- a/pw_bluetooth_proxy/public/pw_bluetooth_proxy/basic_l2cap_channel.h +++ b/pw_bluetooth_proxy/public/pw_bluetooth_proxy/basic_l2cap_channel.h @@ -25,6 +25,7 @@ class BasicL2capChannel : public L2capChannel { static pw::Result Create( L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t local_cid, uint16_t remote_cid, Function payload)>&& payload_from_controller_fn, @@ -57,6 +58,7 @@ class BasicL2capChannel : public L2capChannel { explicit BasicL2capChannel( L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t local_cid, uint16_t remote_cid, Function payload)>&& payload_from_controller_fn, diff --git a/pw_bluetooth_proxy/public/pw_bluetooth_proxy/internal/l2cap_signaling_channel.h b/pw_bluetooth_proxy/public/pw_bluetooth_proxy/internal/l2cap_signaling_channel.h index 6c2f88c75..cc3f1046a 100644 --- a/pw_bluetooth_proxy/public/pw_bluetooth_proxy/internal/l2cap_signaling_channel.h +++ b/pw_bluetooth_proxy/public/pw_bluetooth_proxy/internal/l2cap_signaling_channel.h @@ -30,6 +30,7 @@ class L2capSignalingChannel : public BasicL2capChannel { public: explicit L2capSignalingChannel(L2capChannelManager& l2cap_channel_manager, uint16_t connection_handle, + AclTransportType transport, uint16_t fixed_cid); L2capSignalingChannel& operator=(L2capSignalingChannel&& other);