Revert "Call getAudioPort to get supported attributes for audio devices."

This reverts commit 3b4270ecbebad2b5c0d6733eee3fb52e1ddb76aa.

Reason for revert: b/172307055

Change-Id: Ic22dad674bbd9eee9d3b24308e2a2e964c6406f2
diff --git a/media/libaudiofoundation/AudioPort.cpp b/media/libaudiofoundation/AudioPort.cpp
index 6f4e5ac..1846a6b 100644
--- a/media/libaudiofoundation/AudioPort.cpp
+++ b/media/libaudiofoundation/AudioPort.cpp
@@ -38,21 +38,6 @@
     }
 }
 
-void AudioPort::importAudioPort(const audio_port_v7 &port) {
-    for (size_t i = 0; i < port.num_audio_profiles; ++i) {
-        sp<AudioProfile> profile = new AudioProfile(port.audio_profiles[i].format,
-                ChannelMaskSet(port.audio_profiles[i].channel_masks,
-                        port.audio_profiles[i].channel_masks +
-                        port.audio_profiles->num_channel_masks),
-                SampleRateSet(port.audio_profiles[i].sample_rates,
-                        port.audio_profiles[i].sample_rates +
-                        port.audio_profiles[i].num_sample_rates));
-        if (!mProfiles.contains(profile)) {
-            addAudioProfile(profile);
-        }
-    }
-}
-
 void AudioPort::toAudioPort(struct audio_port *port) const {
     // TODO: update this function once audio_port structure reflects the new profile definition.
     // For compatibility reason: flatening the AudioProfile into audio_port structure.
@@ -77,40 +62,22 @@
             }
         }
     }
+    port->role = mRole;
+    port->type = mType;
+    strlcpy(port->name, mName.c_str(), AUDIO_PORT_MAX_NAME_LEN);
     port->num_sample_rates = flatenedRates.size();
     port->num_channel_masks = flatenedChannels.size();
     port->num_formats = flatenedFormats.size();
     std::copy(flatenedRates.begin(), flatenedRates.end(), port->sample_rates);
     std::copy(flatenedChannels.begin(), flatenedChannels.end(), port->channel_masks);
     std::copy(flatenedFormats.begin(), flatenedFormats.end(), port->formats);
-    toAudioPortBase(port);
-}
 
-void AudioPort::toAudioPort(struct audio_port_v7 *port) const {
-    port->num_audio_profiles = 0;
-    for (const auto& profile : mProfiles) {
-        if (profile->isValid()) {
-            const SampleRateSet &sampleRates = profile->getSampleRates();
-            const ChannelMaskSet &channelMasks = profile->getChannels();
+    ALOGV("AudioPort::toAudioPort() num gains %zu", mGains.size());
 
-            if (sampleRates.size() > AUDIO_PORT_MAX_SAMPLING_RATES ||
-                    channelMasks.size() > AUDIO_PORT_MAX_CHANNEL_MASKS ||
-                    port->num_audio_profiles >= AUDIO_PORT_MAX_AUDIO_PROFILES) {
-                ALOGE("%s: bailing out: cannot export profiles to port config", __func__);
-                return;
-            }
-
-            auto& dstProfile = port->audio_profiles[port->num_audio_profiles++];
-            dstProfile.format = profile->getFormat();
-            dstProfile.num_sample_rates = sampleRates.size();
-            std::copy(sampleRates.begin(), sampleRates.end(),
-                    std::begin(dstProfile.sample_rates));
-            dstProfile.num_channel_masks = channelMasks.size();
-            std::copy(channelMasks.begin(), channelMasks.end(),
-                    std::begin(dstProfile.channel_masks));
-        }
+    port->num_gains = std::min(mGains.size(), (size_t) AUDIO_PORT_MAX_GAINS);
+    for (size_t i = 0; i < port->num_gains; i++) {
+        port->gains[i] = mGains[i]->getGain();
     }
-    toAudioPortBase(port);
 }
 
 void AudioPort::dump(std::string *dst, int spaces, bool verbose) const {
diff --git a/media/libaudiofoundation/AudioProfile.cpp b/media/libaudiofoundation/AudioProfile.cpp
index 64b4822..67b600e 100644
--- a/media/libaudiofoundation/AudioProfile.cpp
+++ b/media/libaudiofoundation/AudioProfile.cpp
@@ -260,16 +260,6 @@
     return false;
 }
 
-bool AudioProfileVector::contains(const sp<AudioProfile> profile) const
-{
-    for (const auto& audioProfile : *this) {
-        if (audioProfile->equals(profile)) {
-            return true;
-        }
-    }
-    return false;
-}
-
 void AudioProfileVector::dump(std::string *dst, int spaces) const
 {
     dst->append(base::StringPrintf("%*s- Profiles:\n", spaces, ""));
diff --git a/media/libaudiofoundation/DeviceDescriptorBase.cpp b/media/libaudiofoundation/DeviceDescriptorBase.cpp
index 50bda8b..16cf71a 100644
--- a/media/libaudiofoundation/DeviceDescriptorBase.cpp
+++ b/media/libaudiofoundation/DeviceDescriptorBase.cpp
@@ -80,12 +80,13 @@
 void DeviceDescriptorBase::toAudioPort(struct audio_port *port) const
 {
     ALOGV("DeviceDescriptorBase::toAudioPort() handle %d type %08x", mId, mDeviceTypeAddr.mType);
-    toAudioPortInternal(port);
-}
-
-void DeviceDescriptorBase::toAudioPort(struct audio_port_v7 *port) const {
-    ALOGV("DeviceDescriptorBase::toAudioPort() v7 handle %d type %08x", mId, mDeviceTypeAddr.mType);
-    toAudioPortInternal(port);
+    AudioPort::toAudioPort(port);
+    toAudioPortConfig(&port->active_config);
+    port->id = mId;
+    port->ext.device.type = mDeviceTypeAddr.mType;
+    port->ext.device.encapsulation_modes = mEncapsulationModes;
+    port->ext.device.encapsulation_metadata_types = mEncapsulationMetadataTypes;
+    (void)audio_utils_strlcpy_zerofill(port->ext.device.address, mDeviceTypeAddr.getAddress());
 }
 
 status_t DeviceDescriptorBase::setEncapsulationModes(uint32_t encapsulationModes) {
diff --git a/media/libaudiofoundation/include/media/AudioPort.h b/media/libaudiofoundation/include/media/AudioPort.h
index 622b97b..3c013cb 100644
--- a/media/libaudiofoundation/include/media/AudioPort.h
+++ b/media/libaudiofoundation/include/media/AudioPort.h
@@ -17,7 +17,6 @@
 #pragma once
 
 #include <string>
-#include <type_traits>
 
 #include <binder/Parcel.h>
 #include <binder/Parcelable.h>
@@ -49,8 +48,6 @@
 
     virtual void toAudioPort(struct audio_port *port) const;
 
-    virtual void toAudioPort(struct audio_port_v7 *port) const;
-
     virtual void addAudioProfile(const sp<AudioProfile> &profile) {
         mProfiles.add(profile);
     }
@@ -67,8 +64,6 @@
 
     virtual void importAudioPort(const sp<AudioPort>& port, bool force = false);
 
-    virtual void importAudioPort(const audio_port_v7& port);
-
     status_t checkGain(const struct audio_gain_config *gainConfig, int index) const {
         if (index < 0 || (size_t)index >= mGains.size()) {
             return BAD_VALUE;
@@ -97,18 +92,6 @@
     audio_port_type_t mType;
     audio_port_role_t mRole;
     AudioProfileVector mProfiles; // AudioProfiles supported by this port (format, Rates, Channels)
-private:
-    template <typename T, std::enable_if_t<std::is_same<T, struct audio_port>::value
-                                        || std::is_same<T, struct audio_port_v7>::value, int> = 0>
-    void toAudioPortBase(T* port) const {
-        port->role = mRole;
-        port->type = mType;
-        strlcpy(port->name, mName.c_str(), AUDIO_PORT_MAX_NAME_LEN);
-        port->num_gains = std::min(mGains.size(), (size_t) AUDIO_PORT_MAX_GAINS);
-        for (size_t i = 0; i < port->num_gains; i++) {
-            port->gains[i] = mGains[i]->getGain();
-        }
-    }
 };
 
 
diff --git a/media/libaudiofoundation/include/media/AudioProfile.h b/media/libaudiofoundation/include/media/AudioProfile.h
index c076f3e..730138a 100644
--- a/media/libaudiofoundation/include/media/AudioProfile.h
+++ b/media/libaudiofoundation/include/media/AudioProfile.h
@@ -105,8 +105,6 @@
     bool hasDynamicProfile() const;
     bool hasDynamicRateFor(audio_format_t format) const;
 
-    bool contains(const sp<AudioProfile> profile) const;
-
     virtual void dump(std::string *dst, int spaces) const;
 
     bool equals(const AudioProfileVector& other) const;
diff --git a/media/libaudiofoundation/include/media/DeviceDescriptorBase.h b/media/libaudiofoundation/include/media/DeviceDescriptorBase.h
index 9ad8d3d..0cbd1de 100644
--- a/media/libaudiofoundation/include/media/DeviceDescriptorBase.h
+++ b/media/libaudiofoundation/include/media/DeviceDescriptorBase.h
@@ -54,7 +54,6 @@
 
     // AudioPort
     virtual void toAudioPort(struct audio_port *port) const;
-    virtual void toAudioPort(struct audio_port_v7 *port) const;
 
     status_t setEncapsulationModes(uint32_t encapsulationModes);
     status_t setEncapsulationMetadataTypes(uint32_t encapsulationMetadataTypes);
@@ -80,18 +79,6 @@
     AudioDeviceTypeAddr mDeviceTypeAddr;
     uint32_t mEncapsulationModes = 0;
     uint32_t mEncapsulationMetadataTypes = 0;
-private:
-    template <typename T, std::enable_if_t<std::is_same<T, struct audio_port>::value
-                                        || std::is_same<T, struct audio_port_v7>::value, int> = 0>
-    void toAudioPortInternal(T* port) const {
-        AudioPort::toAudioPort(port);
-        toAudioPortConfig(&port->active_config);
-        port->id = mId;
-        port->ext.device.type = mDeviceTypeAddr.mType;
-        port->ext.device.encapsulation_modes = mEncapsulationModes;
-        port->ext.device.encapsulation_metadata_types = mEncapsulationMetadataTypes;
-        (void)audio_utils_strlcpy_zerofill(port->ext.device.address, mDeviceTypeAddr.getAddress());
-    }
 };
 
 using DeviceDescriptorBaseVector = std::vector<sp<DeviceDescriptorBase>>;