Enable microphone selection

Expose the device's microphones for testing purposes through the
HAL. One has to pass a specific parameter to the `AudioManager`,
namely 'fp_test'. Accepted values are:
* 'primary_mic'
* 'secondary_mic'
* any other value to disable the microphone selection and reset
  the default behaviour

Note that there is no safeguard check, if one selects a microphone,
the test mode will be entered and will only be left when the
`AudioManager` receiveds the third possible 'fp_test' value.

Issue: FPIIM-641
Issue: FP2N-293
Change-Id: I291162ca42c200ff3bed62901f71aa84ebc5ccb6
Depends-On: I5c4067702910a269386c6517d9368012066da976
(cherry picked from commit b4dac619d496add06f6dd8fb8db172153983f096)
diff --git a/hal/audio_hw.h b/hal/audio_hw.h
index be468fe..e3fdc87 100644
--- a/hal/audio_hw.h
+++ b/hal/audio_hw.h
@@ -52,6 +52,16 @@
 #define MAX_SUPPORTED_CHANNEL_MASKS 2
 #define DEFAULT_HDMI_OUT_CHANNELS   2
 
+/* Expose microphone selection for testing purposes */
+#define FP_TEST_KEY             "fp_test"
+#define FP_TEST_KEY_PRIMARY     "primary_mic"
+#define FP_TEST_KEY_SECONDARY   "secondary_mic"
+#define FP_TEST_DEFAULT_MIC     0X00000000
+#define FP_TEST_PRIMARY_MIC     0X00000100
+#define FP_TEST_SECONDARY_MIC   0X00000200
+
+static uint32_t mFpTestMicSource = FP_TEST_DEFAULT_MIC;
+
 #define SND_CARD_STATE_OFFLINE 0
 #define SND_CARD_STATE_ONLINE 1