Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast.

Removed platform specific devices from the list of devices listed in AudioSystem.
diff --git a/libaudio-qsd8k/AudioHardware.cpp b/libaudio-qsd8k/AudioHardware.cpp
index e8b3792..e75ad40 100644
--- a/libaudio-qsd8k/AudioHardware.cpp
+++ b/libaudio-qsd8k/AudioHardware.cpp
@@ -1147,11 +1147,8 @@
                 }
             }
 
-            if (outputDevices & AudioSystem::DEVICE_OUT_TTY) {
-                    LOGI("Routing audio to TTY\n");
-                    sndDevice = SND_DEVICE_TTY_FULL;
-            } else if (outputDevices &
-                       (AudioSystem::DEVICE_OUT_BLUETOOTH_SCO | AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET)) {
+            if (outputDevices &
+                (AudioSystem::DEVICE_OUT_BLUETOOTH_SCO | AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET)) {
                 LOGI("Routing audio to Bluetooth PCM\n");
                 sndDevice = SND_DEVICE_BT;
             } else if (outputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT) {
@@ -1161,17 +1158,6 @@
                        (outputDevices & AudioSystem::DEVICE_OUT_SPEAKER)) {
                 LOGI("Routing audio to Wired Headset and Speaker\n");
                 sndDevice = SND_DEVICE_HEADSET_AND_SPEAKER;
-            } else if (outputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER) {
-                LOGI("Routing audio to FM Speakerphone (%d,%x)\n", mMode, outputDevices);
-                sndDevice = SND_DEVICE_FM_SPEAKER;
-            } else if (outputDevices & AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-                if (outputDevices & AudioSystem::DEVICE_OUT_SPEAKER) {
-                    LOGI("Routing audio to FM Headset and Speaker (%d,%x)\n", mMode, outputDevices);
-                    sndDevice = SND_DEVICE_HEADSET_AND_SPEAKER;
-                } else {
-                    LOGI("Routing audio to FM Headset (%d,%x)\n", mMode, outputDevices);
-                    sndDevice = SND_DEVICE_FM_HEADSET;
-                }
             } else if (outputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE) {
                 if (outputDevices & AudioSystem::DEVICE_OUT_SPEAKER) {
                     LOGI("Routing audio to No microphone Wired Headset and Speaker (%d,%x)\n", mMode, outputDevices);
diff --git a/libaudio-qsd8k/AudioPolicyManager.cpp b/libaudio-qsd8k/AudioPolicyManager.cpp
index 0eec415..4e4c4d4 100644
--- a/libaudio-qsd8k/AudioPolicyManager.cpp
+++ b/libaudio-qsd8k/AudioPolicyManager.cpp
@@ -214,33 +214,6 @@
                             mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_DTMF)) {
                          newDevice = device;
                     }
-                } else if (device == AudioSystem::DEVICE_OUT_TTY) {
-                    LOGV("setDeviceConnectionState() tty device");
-                    // if connecting a wired headset, we check the following by order of priority
-                    // to request a routing change if necessary:
-                    // 1: we are in call or the strategy phone is active on the hardware output:
-                    //      use device for strategy phone
-                    if (getDeviceForStrategy(STRATEGY_PHONE) == device &&
-                        (mPhoneState == AudioSystem::MODE_IN_CALL ||
-                        mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_PHONE))) {
-                        newDevice = device;
-                    }
-                } else if (device == AudioSystem::DEVICE_OUT_FM_SPEAKER ||
-                           device == AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-                    LOGV("setDeviceConnectionState() no mic headphone device");
-                    // if connecting a wired headset, we check the following by order of priority
-                    // to request a routing change if necessary:
-                    // 1: the strategy sonification is active on the hardware output:
-                    //      use device for strategy sonification
-                    // 2: the strategy media is active on the hardware output:
-                    //      use device for strategy media
-                    if ((getDeviceForStrategy(STRATEGY_SONIFICATION) & device) &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_SONIFICATION)){
-                        newDevice = getDeviceForStrategy(STRATEGY_SONIFICATION);
-                    } else if ((getDeviceForStrategy(STRATEGY_MEDIA) == device) &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_MEDIA)){
-                        newDevice = device;
-                    }
                 }
 
                 // request routing change if necessary
@@ -390,23 +363,6 @@
                                mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_DTMF)){
                         newDevice = getDeviceForStrategy(STRATEGY_DTMF);
                     }
-                } else if (device == AudioSystem::DEVICE_OUT_TTY) {
-                    LOGV("setDeviceConnectionState() tty device");
-                    if (wasUsedforPhone &&
-                        (mPhoneState == AudioSystem::MODE_IN_CALL ||
-                         mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_PHONE))) {
-                        newDevice = getDeviceForStrategy(STRATEGY_PHONE);
-                    }
-                } else if (device == AudioSystem::DEVICE_OUT_FM_SPEAKER ||
-                           device == AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-                    LOGV("setDeviceConnectionState() no mic headphone device");
-                    if (wasUsedForSonification &&
-                        mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_SONIFICATION)){
-                        newDevice = getDeviceForStrategy(STRATEGY_SONIFICATION);
-                    } else if (wasUsedForMedia &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_MEDIA)){
-                        newDevice = getDeviceForStrategy(STRATEGY_MEDIA);
-                    }
                 }
             }
             // request routing change if necessary
@@ -1371,8 +1327,6 @@
             // FALL THROUGH
 
         default:    // FORCE_NONE
-            device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_TTY;
-            if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
             if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
@@ -1388,8 +1342,6 @@
                 device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT;
                 if (device) break;
             }
-            device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER;
-            if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
             if (device == 0) {
                 LOGE("getDeviceForStrategy() speaker device not found");
@@ -1422,19 +1374,13 @@
                 if (device2 == 0) {
                     device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER;
                     if (device2 == 0) {
-                        device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_HEADPHONE;
+                        device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
                         if (device2 == 0) {
-                            device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER;
+                            device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
                             if (device2 == 0) {
-                                device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
-                                if (device2 == 0) {
-                                    device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
-                                    if (device2 == 0) {
-                                        device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
-                                        if (device == 0) {
-                                            LOGE("getDeviceForStrategy() speaker device not found");
-                                        }
-                                    }
+                                device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
+                                if (device == 0) {
+                                    LOGE("getDeviceForStrategy() speaker device not found");
                                 }
                             }
                         }
diff --git a/libaudio/AudioHardware.cpp b/libaudio/AudioHardware.cpp
index 310968c..ac56ec2 100644
--- a/libaudio/AudioHardware.cpp
+++ b/libaudio/AudioHardware.cpp
@@ -541,11 +541,8 @@
             }
         }
 
-        if (outputDevices & AudioSystem::DEVICE_OUT_TTY) {
-                LOGI("Routing audio to TTY\n");
-                sndDevice = SND_DEVICE_TTY_FULL;
-        } else if (outputDevices &
-                   (AudioSystem::DEVICE_OUT_BLUETOOTH_SCO | AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET)) {
+        if (outputDevices &
+            (AudioSystem::DEVICE_OUT_BLUETOOTH_SCO | AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET)) {
             LOGI("Routing audio to Bluetooth PCM\n");
             sndDevice = SND_DEVICE_BT;
         } else if (outputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT) {
@@ -556,19 +553,6 @@
             LOGI("Routing audio to Wired Headset and Speaker\n");
             sndDevice = SND_DEVICE_HEADSET_AND_SPEAKER;
             audProcess = (ADRC_ENABLE | EQ_ENABLE | RX_IIR_ENABLE);
-        } else if (outputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER) {
-            LOGI("Routing audio to FM Speakerphone (%d,%x)\n", mMode, outputDevices);
-            sndDevice = SND_DEVICE_FM_SPEAKER;
-            audProcess = (ADRC_ENABLE | EQ_ENABLE | RX_IIR_DISABLE);
-        } else if (outputDevices & AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-            if (outputDevices & AudioSystem::DEVICE_OUT_SPEAKER) {
-                LOGI("Routing audio to FM Headset and Speaker (%d,%x)\n", mMode, outputDevices);
-                sndDevice = SND_DEVICE_HEADSET_AND_SPEAKER;
-                audProcess = (ADRC_ENABLE | EQ_ENABLE | RX_IIR_ENABLE);
-            } else {
-                LOGI("Routing audio to FM Headset (%d,%x)\n", mMode, outputDevices);
-                sndDevice = SND_DEVICE_FM_HEADSET;
-            }
         } else if (outputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE) {
             if (outputDevices & AudioSystem::DEVICE_OUT_SPEAKER) {
                 LOGI("Routing audio to No microphone Wired Headset and Speaker (%d,%x)\n", mMode, outputDevices);
diff --git a/libaudio/AudioPolicyManager.cpp b/libaudio/AudioPolicyManager.cpp
index fb4319e..cceb91e 100644
--- a/libaudio/AudioPolicyManager.cpp
+++ b/libaudio/AudioPolicyManager.cpp
@@ -214,35 +214,7 @@
                             mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_DTMF)) {
                          newDevice = device;
                     }
-                } else if (device == AudioSystem::DEVICE_OUT_TTY) {
-                    LOGV("setDeviceConnectionState() tty device");
-                    // if connecting a wired headset, we check the following by order of priority
-                    // to request a routing change if necessary:
-                    // 1: we are in call or the strategy phone is active on the hardware output:
-                    //      use device for strategy phone
-                    if (getDeviceForStrategy(STRATEGY_PHONE) == device &&
-                        (mPhoneState == AudioSystem::MODE_IN_CALL ||
-                        mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_PHONE))) {
-                        newDevice = device;
-                    }
-                } else if (device == AudioSystem::DEVICE_OUT_FM_SPEAKER ||
-                           device == AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-                    LOGV("setDeviceConnectionState() no mic headphone device");
-                    // if connecting a wired headset, we check the following by order of priority
-                    // to request a routing change if necessary:
-                    // 1: the strategy sonification is active on the hardware output:
-                    //      use device for strategy sonification
-                    // 2: the strategy media is active on the hardware output:
-                    //      use device for strategy media
-                    if ((getDeviceForStrategy(STRATEGY_SONIFICATION) & device) &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_SONIFICATION)){
-                        newDevice = getDeviceForStrategy(STRATEGY_SONIFICATION);
-                    } else if ((getDeviceForStrategy(STRATEGY_MEDIA) == device) &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_MEDIA)){
-                        newDevice = device;
-                    }
                 }
-
                 // request routing change if necessary
                 setOutputDevice(mHardwareOutput, newDevice);
             }
@@ -390,23 +362,6 @@
                                mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_DTMF)){
                         newDevice = getDeviceForStrategy(STRATEGY_DTMF);
                     }
-                } else if (device == AudioSystem::DEVICE_OUT_TTY) {
-                    LOGV("setDeviceConnectionState() tty device");
-                    if (wasUsedforPhone &&
-                        (mPhoneState == AudioSystem::MODE_IN_CALL ||
-                         mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_PHONE))) {
-                        newDevice = getDeviceForStrategy(STRATEGY_PHONE);
-                    }
-                } else if (device == AudioSystem::DEVICE_OUT_FM_SPEAKER ||
-                           device == AudioSystem::DEVICE_OUT_FM_HEADPHONE) {
-                    LOGV("setDeviceConnectionState() no mic headphone device");
-                    if (wasUsedForSonification &&
-                        mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_SONIFICATION)){
-                        newDevice = getDeviceForStrategy(STRATEGY_SONIFICATION);
-                    } else if (wasUsedForMedia &&
-                               mOutputs.valueFor(mHardwareOutput)->isUsedByStrategy(STRATEGY_MEDIA)){
-                        newDevice = getDeviceForStrategy(STRATEGY_MEDIA);
-                    }
                 }
             }
             // request routing change if necessary
@@ -1345,8 +1300,6 @@
             // FALL THROUGH
 
         default:    // FORCE_NONE
-            device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_TTY;
-            if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
             if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
@@ -1362,8 +1315,6 @@
                 device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT;
                 if (device) break;
             }
-            device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER;
-            if (device) break;
             device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
             if (device == 0) {
                 LOGE("getDeviceForStrategy() speaker device not found");
@@ -1396,19 +1347,13 @@
                 if (device2 == 0) {
                     device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER;
                     if (device2 == 0) {
-                        device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_HEADPHONE;
+                        device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
                         if (device2 == 0) {
-                            device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_FM_SPEAKER;
+                            device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
                             if (device2 == 0) {
-                                device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADPHONE;
-                                if (device2 == 0) {
-                                    device2 = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_WIRED_HEADSET;
-                                    if (device2 == 0) {
-                                        device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
-                                        if (device == 0) {
-                                            LOGE("getDeviceForStrategy() speaker device not found");
-                                        }
-                                    }
+                                device = mAvailableOutputDevices & AudioSystem::DEVICE_OUT_SPEAKER;
+                                if (device == 0) {
+                                    LOGE("getDeviceForStrategy() speaker device not found");
                                 }
                             }
                         }