Loading system/bta/le_audio/devices.cc +0 −18 Original line number Original line Diff line number Diff line Loading @@ -410,17 +410,6 @@ LeAudioDevice* LeAudioDeviceGroup::GetNextActiveDeviceByDataPathState( return iter->lock().get(); return iter->lock().get(); } } bool LeAudioDeviceGroup::SetContextType(LeAudioContextType context_type) { /* XXX: group context policy ? / may it disallow to change type ?) */ context_type_ = context_type; return true; } LeAudioContextType LeAudioDeviceGroup::GetContextType(void) { return context_type_; } uint32_t LeAudioDeviceGroup::GetSduInterval(uint8_t direction) { uint32_t LeAudioDeviceGroup::GetSduInterval(uint8_t direction) { for (LeAudioDevice* leAudioDevice = GetFirstActiveDevice(); for (LeAudioDevice* leAudioDevice = GetFirstActiveDevice(); leAudioDevice != nullptr; leAudioDevice != nullptr; Loading Loading @@ -1579,9 +1568,6 @@ const set_configurations::AudioSetConfiguration* LeAudioDeviceGroup::GetActiveConfiguration(void) { LeAudioDeviceGroup::GetActiveConfiguration(void) { return active_context_to_configuration_map[active_context_type_]; return active_context_to_configuration_map[active_context_type_]; } } AudioContexts LeAudioDeviceGroup::GetActiveContexts(void) { return active_contexts_mask_; } std::optional<LeAudioCodecConfiguration> std::optional<LeAudioCodecConfiguration> LeAudioDeviceGroup::GetCodecConfigurationByDirection( LeAudioDeviceGroup::GetCodecConfigurationByDirection( Loading Loading @@ -1777,10 +1763,6 @@ void LeAudioDeviceGroup::CreateStreamVectorForOffloader(uint8_t direction) { } } } } types::LeAudioContextType LeAudioDeviceGroup::GetCurrentContextType(void) { return active_context_type_; } bool LeAudioDeviceGroup::IsPendingConfiguration(void) { bool LeAudioDeviceGroup::IsPendingConfiguration(void) { return stream_conf.pending_configuration; return stream_conf.pending_configuration; } } Loading system/bta/le_audio/devices.h +11 −7 Original line number Original line Diff line number Diff line Loading @@ -214,10 +214,10 @@ class LeAudioDeviceGroup { transport_latency_stom_us_(0), transport_latency_stom_us_(0), active_context_type_(types::LeAudioContextType::UNINITIALIZED), active_context_type_(types::LeAudioContextType::UNINITIALIZED), metadata_context_type_(0), metadata_context_type_(0), active_contexts_mask_(0), pending_update_available_contexts_(std::nullopt), pending_update_available_contexts_(std::nullopt), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) {} context_type_(types::LeAudioContextType::UNINITIALIZED) {} ~LeAudioDeviceGroup(void); ~LeAudioDeviceGroup(void); void AddNode(const std::shared_ptr<LeAudioDevice>& leAudioDevice); void AddNode(const std::shared_ptr<LeAudioDevice>& leAudioDevice); Loading Loading @@ -265,8 +265,6 @@ class LeAudioDeviceGroup { bool Configure(types::LeAudioContextType context_type, bool Configure(types::LeAudioContextType context_type, types::AudioContexts metadata_context_type, types::AudioContexts metadata_context_type, std::vector<uint8_t> ccid_list = {}); std::vector<uint8_t> ccid_list = {}); bool SetContextType(types::LeAudioContextType context_type); types::LeAudioContextType GetContextType(void); uint32_t GetSduInterval(uint8_t direction); uint32_t GetSduInterval(uint8_t direction); uint8_t GetSCA(void); uint8_t GetSCA(void); uint8_t GetPacking(void); uint8_t GetPacking(void); Loading @@ -286,14 +284,12 @@ class LeAudioDeviceGroup { bool ReloadAudioLocations(void); bool ReloadAudioLocations(void); bool ReloadAudioDirections(void); bool ReloadAudioDirections(void); const set_configurations::AudioSetConfiguration* GetActiveConfiguration(void); const set_configurations::AudioSetConfiguration* GetActiveConfiguration(void); types::LeAudioContextType GetCurrentContextType(void); bool IsPendingConfiguration(void); bool IsPendingConfiguration(void); void SetPendingConfiguration(void); void SetPendingConfiguration(void); void ClearPendingConfiguration(void); void ClearPendingConfiguration(void); bool IsConfigurationSupported( bool IsConfigurationSupported( LeAudioDevice* leAudioDevice, LeAudioDevice* leAudioDevice, const set_configurations::AudioSetConfiguration* audio_set_conf); const set_configurations::AudioSetConfiguration* audio_set_conf); types::AudioContexts GetActiveContexts(void); std::optional<LeAudioCodecConfiguration> GetCodecConfigurationByDirection( std::optional<LeAudioCodecConfiguration> GetCodecConfigurationByDirection( types::LeAudioContextType group_context_type, uint8_t direction); types::LeAudioContextType group_context_type, uint8_t direction); bool IsContextSupported(types::LeAudioContextType group_context_type); bool IsContextSupported(types::LeAudioContextType group_context_type); Loading Loading @@ -325,10 +321,18 @@ class LeAudioDeviceGroup { pending_update_available_contexts_ = audio_contexts; pending_update_available_contexts_ = audio_contexts; } } inline types::LeAudioContextType GetCurrentContextType(void) const { return active_context_type_; } inline types::AudioContexts GetMetadataContextType(void) const { inline types::AudioContexts GetMetadataContextType(void) const { return metadata_context_type_; return metadata_context_type_; } } inline types::AudioContexts GetActiveContexts(void) { return active_contexts_mask_; } bool IsInTransition(void); bool IsInTransition(void); bool IsReleasing(void); bool IsReleasing(void); void Dump(int fd); void Dump(int fd); Loading @@ -353,6 +357,7 @@ class LeAudioDeviceGroup { types::LeAudioContextType active_context_type_; types::LeAudioContextType active_context_type_; types::AudioContexts metadata_context_type_; types::AudioContexts metadata_context_type_; types::AudioContexts active_contexts_mask_; types::AudioContexts active_contexts_mask_; std::optional<types::AudioContexts> pending_update_available_contexts_; std::optional<types::AudioContexts> pending_update_available_contexts_; std::map<types::LeAudioContextType, std::map<types::LeAudioContextType, const set_configurations::AudioSetConfiguration*> const set_configurations::AudioSetConfiguration*> Loading @@ -360,7 +365,6 @@ class LeAudioDeviceGroup { types::AseState target_state_; types::AseState target_state_; types::AseState current_state_; types::AseState current_state_; types::LeAudioContextType context_type_; std::vector<std::weak_ptr<LeAudioDevice>> leAudioDevices_; std::vector<std::weak_ptr<LeAudioDevice>> leAudioDevices_; }; }; Loading system/bta/le_audio/le_audio_client_test.cc +3 −12 Original line number Original line Diff line number Diff line Loading @@ -677,8 +677,9 @@ class UnicastTestNoInit : public Test { return false; return false; } } group->Configure(group->GetContextType(), group->Configure( static_cast<uint16_t>(group->GetContextType()), {}); group->GetCurrentContextType(), static_cast<uint16_t>(group->GetCurrentContextType()), {}); if (!group->CigAssignCisIds(leAudioDevice)) return false; if (!group->CigAssignCisIds(leAudioDevice)) return false; group->CigAssignCisConnHandlesToAses(leAudioDevice); group->CigAssignCisConnHandlesToAses(leAudioDevice); Loading Loading @@ -761,15 +762,6 @@ class UnicastTestNoInit : public Test { types::LeAudioContextType context_type, types::LeAudioContextType context_type, types::AudioContexts metadata_context_type, types::AudioContexts metadata_context_type, std::vector<uint8_t> ccid_list) { std::vector<uint8_t> ccid_list) { if (group->GetState() == types::AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING) { if (group->GetContextType() != context_type) { /* TODO: Switch context of group */ group->SetContextType(context_type); } return true; } /* Do what ReleaseCisIds(group) does: start */ /* Do what ReleaseCisIds(group) does: start */ LeAudioDevice* leAudioDevice = group->GetFirstDevice(); LeAudioDevice* leAudioDevice = group->GetFirstDevice(); while (leAudioDevice != nullptr) { while (leAudioDevice != nullptr) { Loading @@ -790,7 +782,6 @@ class UnicastTestNoInit : public Test { if (group->GetState() == if (group->GetState() == types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) { types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) { group->CigGenerateCisIds(context_type); group->CigGenerateCisIds(context_type); group->SetContextType(context_type); std::vector<uint16_t> conn_handles; std::vector<uint16_t> conn_handles; for (uint8_t i = 0; i < (uint8_t)(group->cises_.size()); i++) { for (uint8_t i = 0; i < (uint8_t)(group->cises_.size()); i++) { Loading system/bta/le_audio/state_machine.cc +0 −1 Original line number Original line Diff line number Diff line Loading @@ -193,7 +193,6 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine { } } group->CigGenerateCisIds(context_type); group->CigGenerateCisIds(context_type); group->SetContextType(context_type); /* All ASEs should aim to achieve target state */ /* All ASEs should aim to achieve target state */ SetTargetState(group, AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING); SetTargetState(group, AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING); PrepareAndSendCodecConfigure(group, group->GetFirstActiveDevice()); PrepareAndSendCodecConfigure(group, group->GetFirstActiveDevice()); Loading Loading
system/bta/le_audio/devices.cc +0 −18 Original line number Original line Diff line number Diff line Loading @@ -410,17 +410,6 @@ LeAudioDevice* LeAudioDeviceGroup::GetNextActiveDeviceByDataPathState( return iter->lock().get(); return iter->lock().get(); } } bool LeAudioDeviceGroup::SetContextType(LeAudioContextType context_type) { /* XXX: group context policy ? / may it disallow to change type ?) */ context_type_ = context_type; return true; } LeAudioContextType LeAudioDeviceGroup::GetContextType(void) { return context_type_; } uint32_t LeAudioDeviceGroup::GetSduInterval(uint8_t direction) { uint32_t LeAudioDeviceGroup::GetSduInterval(uint8_t direction) { for (LeAudioDevice* leAudioDevice = GetFirstActiveDevice(); for (LeAudioDevice* leAudioDevice = GetFirstActiveDevice(); leAudioDevice != nullptr; leAudioDevice != nullptr; Loading Loading @@ -1579,9 +1568,6 @@ const set_configurations::AudioSetConfiguration* LeAudioDeviceGroup::GetActiveConfiguration(void) { LeAudioDeviceGroup::GetActiveConfiguration(void) { return active_context_to_configuration_map[active_context_type_]; return active_context_to_configuration_map[active_context_type_]; } } AudioContexts LeAudioDeviceGroup::GetActiveContexts(void) { return active_contexts_mask_; } std::optional<LeAudioCodecConfiguration> std::optional<LeAudioCodecConfiguration> LeAudioDeviceGroup::GetCodecConfigurationByDirection( LeAudioDeviceGroup::GetCodecConfigurationByDirection( Loading Loading @@ -1777,10 +1763,6 @@ void LeAudioDeviceGroup::CreateStreamVectorForOffloader(uint8_t direction) { } } } } types::LeAudioContextType LeAudioDeviceGroup::GetCurrentContextType(void) { return active_context_type_; } bool LeAudioDeviceGroup::IsPendingConfiguration(void) { bool LeAudioDeviceGroup::IsPendingConfiguration(void) { return stream_conf.pending_configuration; return stream_conf.pending_configuration; } } Loading
system/bta/le_audio/devices.h +11 −7 Original line number Original line Diff line number Diff line Loading @@ -214,10 +214,10 @@ class LeAudioDeviceGroup { transport_latency_stom_us_(0), transport_latency_stom_us_(0), active_context_type_(types::LeAudioContextType::UNINITIALIZED), active_context_type_(types::LeAudioContextType::UNINITIALIZED), metadata_context_type_(0), metadata_context_type_(0), active_contexts_mask_(0), pending_update_available_contexts_(std::nullopt), pending_update_available_contexts_(std::nullopt), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) {} context_type_(types::LeAudioContextType::UNINITIALIZED) {} ~LeAudioDeviceGroup(void); ~LeAudioDeviceGroup(void); void AddNode(const std::shared_ptr<LeAudioDevice>& leAudioDevice); void AddNode(const std::shared_ptr<LeAudioDevice>& leAudioDevice); Loading Loading @@ -265,8 +265,6 @@ class LeAudioDeviceGroup { bool Configure(types::LeAudioContextType context_type, bool Configure(types::LeAudioContextType context_type, types::AudioContexts metadata_context_type, types::AudioContexts metadata_context_type, std::vector<uint8_t> ccid_list = {}); std::vector<uint8_t> ccid_list = {}); bool SetContextType(types::LeAudioContextType context_type); types::LeAudioContextType GetContextType(void); uint32_t GetSduInterval(uint8_t direction); uint32_t GetSduInterval(uint8_t direction); uint8_t GetSCA(void); uint8_t GetSCA(void); uint8_t GetPacking(void); uint8_t GetPacking(void); Loading @@ -286,14 +284,12 @@ class LeAudioDeviceGroup { bool ReloadAudioLocations(void); bool ReloadAudioLocations(void); bool ReloadAudioDirections(void); bool ReloadAudioDirections(void); const set_configurations::AudioSetConfiguration* GetActiveConfiguration(void); const set_configurations::AudioSetConfiguration* GetActiveConfiguration(void); types::LeAudioContextType GetCurrentContextType(void); bool IsPendingConfiguration(void); bool IsPendingConfiguration(void); void SetPendingConfiguration(void); void SetPendingConfiguration(void); void ClearPendingConfiguration(void); void ClearPendingConfiguration(void); bool IsConfigurationSupported( bool IsConfigurationSupported( LeAudioDevice* leAudioDevice, LeAudioDevice* leAudioDevice, const set_configurations::AudioSetConfiguration* audio_set_conf); const set_configurations::AudioSetConfiguration* audio_set_conf); types::AudioContexts GetActiveContexts(void); std::optional<LeAudioCodecConfiguration> GetCodecConfigurationByDirection( std::optional<LeAudioCodecConfiguration> GetCodecConfigurationByDirection( types::LeAudioContextType group_context_type, uint8_t direction); types::LeAudioContextType group_context_type, uint8_t direction); bool IsContextSupported(types::LeAudioContextType group_context_type); bool IsContextSupported(types::LeAudioContextType group_context_type); Loading Loading @@ -325,10 +321,18 @@ class LeAudioDeviceGroup { pending_update_available_contexts_ = audio_contexts; pending_update_available_contexts_ = audio_contexts; } } inline types::LeAudioContextType GetCurrentContextType(void) const { return active_context_type_; } inline types::AudioContexts GetMetadataContextType(void) const { inline types::AudioContexts GetMetadataContextType(void) const { return metadata_context_type_; return metadata_context_type_; } } inline types::AudioContexts GetActiveContexts(void) { return active_contexts_mask_; } bool IsInTransition(void); bool IsInTransition(void); bool IsReleasing(void); bool IsReleasing(void); void Dump(int fd); void Dump(int fd); Loading @@ -353,6 +357,7 @@ class LeAudioDeviceGroup { types::LeAudioContextType active_context_type_; types::LeAudioContextType active_context_type_; types::AudioContexts metadata_context_type_; types::AudioContexts metadata_context_type_; types::AudioContexts active_contexts_mask_; types::AudioContexts active_contexts_mask_; std::optional<types::AudioContexts> pending_update_available_contexts_; std::optional<types::AudioContexts> pending_update_available_contexts_; std::map<types::LeAudioContextType, std::map<types::LeAudioContextType, const set_configurations::AudioSetConfiguration*> const set_configurations::AudioSetConfiguration*> Loading @@ -360,7 +365,6 @@ class LeAudioDeviceGroup { types::AseState target_state_; types::AseState target_state_; types::AseState current_state_; types::AseState current_state_; types::LeAudioContextType context_type_; std::vector<std::weak_ptr<LeAudioDevice>> leAudioDevices_; std::vector<std::weak_ptr<LeAudioDevice>> leAudioDevices_; }; }; Loading
system/bta/le_audio/le_audio_client_test.cc +3 −12 Original line number Original line Diff line number Diff line Loading @@ -677,8 +677,9 @@ class UnicastTestNoInit : public Test { return false; return false; } } group->Configure(group->GetContextType(), group->Configure( static_cast<uint16_t>(group->GetContextType()), {}); group->GetCurrentContextType(), static_cast<uint16_t>(group->GetCurrentContextType()), {}); if (!group->CigAssignCisIds(leAudioDevice)) return false; if (!group->CigAssignCisIds(leAudioDevice)) return false; group->CigAssignCisConnHandlesToAses(leAudioDevice); group->CigAssignCisConnHandlesToAses(leAudioDevice); Loading Loading @@ -761,15 +762,6 @@ class UnicastTestNoInit : public Test { types::LeAudioContextType context_type, types::LeAudioContextType context_type, types::AudioContexts metadata_context_type, types::AudioContexts metadata_context_type, std::vector<uint8_t> ccid_list) { std::vector<uint8_t> ccid_list) { if (group->GetState() == types::AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING) { if (group->GetContextType() != context_type) { /* TODO: Switch context of group */ group->SetContextType(context_type); } return true; } /* Do what ReleaseCisIds(group) does: start */ /* Do what ReleaseCisIds(group) does: start */ LeAudioDevice* leAudioDevice = group->GetFirstDevice(); LeAudioDevice* leAudioDevice = group->GetFirstDevice(); while (leAudioDevice != nullptr) { while (leAudioDevice != nullptr) { Loading @@ -790,7 +782,6 @@ class UnicastTestNoInit : public Test { if (group->GetState() == if (group->GetState() == types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) { types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE) { group->CigGenerateCisIds(context_type); group->CigGenerateCisIds(context_type); group->SetContextType(context_type); std::vector<uint16_t> conn_handles; std::vector<uint16_t> conn_handles; for (uint8_t i = 0; i < (uint8_t)(group->cises_.size()); i++) { for (uint8_t i = 0; i < (uint8_t)(group->cises_.size()); i++) { Loading
system/bta/le_audio/state_machine.cc +0 −1 Original line number Original line Diff line number Diff line Loading @@ -193,7 +193,6 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine { } } group->CigGenerateCisIds(context_type); group->CigGenerateCisIds(context_type); group->SetContextType(context_type); /* All ASEs should aim to achieve target state */ /* All ASEs should aim to achieve target state */ SetTargetState(group, AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING); SetTargetState(group, AseState::BTA_LE_AUDIO_ASE_STATE_STREAMING); PrepareAndSendCodecConfigure(group, group->GetFirstActiveDevice()); PrepareAndSendCodecConfigure(group, group->GetFirstActiveDevice()); Loading