Add audio config fix audioserver crash

Bug: 139107810
Change-Id: I182e29fb0d6b22858932c8c7cc26ca787a32464d
Signed-off-by: Wilson Sung <wilsonsung@google.com>
This commit is contained in:
Wilson Sung
2019-08-21 00:27:20 +08:00
committed by Adam Shih
parent 33447c738d
commit 4cfa758c35
48 changed files with 3281 additions and 0 deletions

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,32 @@
#define CSPL_IN_LEFT 1
#define CSPL_IN_RIGHT 2
#define CSPL_OUT_RIGHT 4
#define CSPL_OUT_LEFT 3
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_CAL_STATUS_RIGHT 908
#define CSPL_CAL_CHECKSUM_LEFT 903
#define CSPL_CAL_STATUS_LEFT 902
#define CSPL_CAL_Z_RIGHT 906
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_CAL_Z_LEFT 900
#define CSPL_CAL_AMBIENT_TEMPERATURE_LEFT 901
#define CSPL_CAL_CHECKSUM_RIGHT 909
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CAL_AMBIENT_TEMPERATURE_RIGHT 907
#define CSPL_CAL_SET_STATUS_FULL_RIGHT 910
#define CSPL_CAL_SET_STATUS_HP_LEFT 905
#define CSPL_CAL_SET_STATUS_HP_RIGHT 911
#define CSPL_CAL_SET_STATUS_FULL_LEFT 904
#define CSPL_CONFIG_RX 589, 4, 768, 1234, 13672, 768, 5679, 16, 9875, 48000, 48, 8, 4, 1, 4, 2, 4, 3, 4, 4, 4, 0, 48, 0, 48, 0, 48, 0, 48, 16, 16, 902, 120, 906, 119, 900, 908, 901, 122, 121, 909, 907, 903, 905, 904, 911, 910, 70, 53, 1, 4, 53, 1, 5, 53, 0, 5, 1, 4, 4, 53, 0, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 5, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 11, 5, 6, 8, 4, 6001, 6002, 6003, 6004, 0, 4, -2096293503, -2096293503, -2096293503, -2096293503, 4, 2052387573, 2052387573, 2052387573, 2052387573, 4, 1293222, 1293222, 1293222, 1293222, 4, 1293222, 1293222, 1293222, 1293222, 4, 1293222, 1293222, 1293222, 1293222, 11, 6, 6, 8, 4, 6001, 6002, 6003, 6004, 0, 4, -2126322971, -2126322971, -2126322971, -2126322971, 4, 2105370123, 2105370123, 2105370123, 2105370123, 4, 1713966715, 1713966715, 1713966715, 1713966715, 4, -1695028449, -1695028449, -1695028449, -1695028449, 4, 1676298755, 1676298755, 1676298755, 1676298755, 22, 5, 5, 144, 41, 6, 6, 7, 16, 27, 7, 6, 144, 267, 2146747946, 40, 6, 6, 10661170, 18, 6, 6, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 5, 5, 16, 39, 5, 6, 6, 1, 5, 5, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 5, 5, 3, 4, 6, 0, 11, 12, 60, 120, 10633, 23, 3650722, 751619276, 322122547, 1073577011, 1073752125, 989623, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 5, 6, 5, 37, 5, 5, 3, 4, 6, 0, 11, 13, 60, 120, 10633, 23, 3650722, 510027366, 120795955, 1073731522, 1073746974, 989623, 25, 5, 6, 48, 2386766, 499999, 4800, 3, 6, 6, -2133569855, 2119835204, 44785, 44785, 44785, 1, 6, 7, 4, 5, 6, 6, 1, 5, 5, 4, 7, 5, 5, 52, 5, 2, 1, 4, 4, 1, 4, 4, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 4, 4, 1, 4, 4, 1, 4, 4, 1, 4, 4, 11, 4, 5, 7, 4, 6001, 6002, 6003, 6004, 0, 4, -2052615183, -2052615183, -2052615183, -2052615183, 4, 1979238100, 1979238100, 1979238100, 1979238100, 4, 3941168, 3941168, 3941168, 3941168, 4, 3941168, 3941168, 3941168, 3941168, 4, 3941168, 3941168, 3941168, 3941168, 11, 5, 5, 7, 4, 6001, 6002, 6003, 6004, 0, 4, -2128718877, -2128718877, -2128718877, -2128718877, 4, 2110279212, 2110279212, 2110279212, 2110279212, 4, 1707665443, 1707665443, 1707665443, 1707665443, 4, -1690923265, -1690923265, -1690923265, -1690923265, 4, 1674506200, 1674506200, 1674506200, 1674506200, 22, 4, 4, 144, 41, 5, 6, 5, 16, 27, 5, 5, 144, 267, 2146747946, 40, 5, 5, 51618444, 18, 5, 5, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 4, 4, 16, 39, 4, 5, 5, 1, 4, 4, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 4, 4, 1, 2, 10, 5, 9, 14, 50, 110, 9552, 23, 3833258, 751619276, 322122547, 1073577011, 1073752125, 1049601, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 4, 5, 4, 37, 4, 4, 1, 2, 10, 5, 9, 15, 50, 110, 9552, 23, 3833258, 510027366, 120795955, 1073731522, 1073746974, 1049601, 25, 4, 5, 48, 2386766, 499999, 4800, 3, 5, 5, -2133569855, 2119835204, 44785, 44785, 44785, 1, 5, 6, 4, 4, 5, 5, 1, 4, 4, 4, 6, 4, 4, 52, 4, 3, 2052810289
#define CSPL_IN_CURRENT_RIGHT 11
#define CSPL_IN_VOLTAGE_LEFT 10
#define CSPL_IN_VOLTAGE_RIGHT 12
#define CSPL_IN_CURRENT_LEFT 9
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CONFIG_TX 425, 4, 768, 1234, 4268, 1344, 5679, 16, 9875, 48000, 48, 11, 4, 10, 2, 11, 2, 12, 2, 9, 2, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 14, 4, 119, 121, 120, 122, 50, 17, 3, 4, 17, 0, 5, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 5, 7, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 5, 8, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 5, 9, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 5, 5, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 10, -2146598296, 2145797691, 842978, 0, -842978, 3, 10, 10, -2146598296, 2145797691, 842978, 0, -842978, 19, 10, 6, 4, 1024, 8, 131067, 13, 21, 4, 0, 10633, 1024, 1073239999, 3, 4, 6, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 6, 7, 5, 32768, 1, 262135, 12, 3, 4, 6, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 6, 8, 6, 32768, 1, 262135, 12, 3, 4, 6, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 6, 9, 7, 32768, 1, 262135, 12, 3, 4, 4, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 4, 5, 8, 32768, 1, 262135, 12, 23, 8, 7, 6, 5, 1, 6001, 6002, 6003, 6004, 0, 17, 1, 4, 17, 2, 5, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 5, 7, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 5, 8, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 5, 9, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 5, 5, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 10, -2146598296, 2145797691, 842978, 0, -842978, 3, 10, 10, -2146598296, 2145797691, 842978, 0, -842978, 19, 10, 6, 9, 1024, 8, 131067, 13, 21, 9, 2, 9552, 1024, 1073239999, 3, 4, 6, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 6, 7, 10, 32768, 1, 262135, 12, 3, 4, 6, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 6, 8, 11, 32768, 1, 262135, 12, 3, 4, 6, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 6, 9, 12, 32768, 1, 262135, 12, 3, 4, 4, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 4, 5, 13, 32768, 1, 262135, 12, 23, 13, 12, 11, 10, 3, 6001, 6002, 6003, 6004, 0, -2102453470

View File

@@ -0,0 +1,31 @@
#define CSPL_IN_LEFT 1
#define CSPL_IN_RIGHT 2
#define CSPL_OUT_RIGHT 4
#define CSPL_OUT_LEFT 3
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_CAL_STATUS_RIGHT 908
#define CSPL_CAL_CHECKSUM_LEFT 903
#define CSPL_CAL_STATUS_LEFT 902
#define CSPL_CAL_Z_RIGHT 906
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_CAL_Z_LEFT 900
#define CSPL_CAL_AMBIENT_TEMPERATURE_LEFT 901
#define CSPL_CAL_CHECKSUM_RIGHT 909
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CAL_AMBIENT_TEMPERATURE_RIGHT 907
#define CSPL_CAL_SET_STATUS_FULL_RIGHT 910
#define CSPL_CAL_SET_STATUS_HP_LEFT 905
#define CSPL_CAL_SET_STATUS_HP_RIGHT 911
#define CSPL_CAL_SET_STATUS_FULL_LEFT 904
#define CSPL_CONFIG_RX 589, 4, 768, 1234, 13672, 768, 5679, 16, 9875, 48000, 48, 8, 4, 1, 4, 2, 4, 3, 4, 4, 4, 0, 48, 0, 48, 0, 48, 0, 48, 16, 16, 902, 120, 906, 119, 900, 908, 901, 122, 121, 909, 907, 903, 905, 904, 911, 910, 70, 53, 1, 4, 53, 1, 5, 53, 0, 5, 1, 4, 4, 53, 0, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 5, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 11, 5, 6, 8, 4, 6001, 6002, 6003, 6004, 0, 4, -2060522088, -2060522088, -2060522088, -2060522088, 4, 1982052173, 1982052173, 1982052173, 1982052173, 4, 2071498, 2071498, 2071498, 2071498, 4, 2071498, 2071498, 2071498, 2071498, 4, 2071498, 2071498, 2071498, 2071498, 11, 6, 6, 8, 4, 6001, 6002, 6003, 6004, 0, 4, -2126459776, -2126459776, -2126459776, -2126459776, 4, 2105559741, 2105559741, 2105559741, 2105559741, 4, 1927924539, 1927924539, 1927924539, 1927924539, 4, -1907939879, -1907939879, -1907939879, -1907939879, 4, 1888079887, 1888079887, 1888079887, 1888079887, 22, 5, 5, 144, 41, 6, 6, 7, 16, 27, 7, 6, 144, 267, 2146747946, 40, 6, 6, 18958540, 18, 6, 6, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 5, 5, 16, 39, 5, 6, 6, 1, 5, 5, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 5, 5, 3, 4, 6, 0, 11, 12, 60, 120, 10788, 23, 3650722, 751619276, 322122547, 1073577011, 1073752125, 975685, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 5, 6, 5, 37, 5, 5, 3, 4, 6, 0, 11, 13, 60, 120, 10788, 23, 3650722, 510027366, 120795955, 1073731522, 1073746974, 975685, 25, 5, 6, 48, 2386766, 499999, 4800, 3, 6, 6, -2133569855, 2119835204, 44785, 44785, 44785, 1, 6, 7, 4, 5, 6, 6, 1, 5, 5, 4, 7, 5, 5, 52, 5, 2, 1, 4, 4, 1, 4, 4, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 4, 4, 1, 4, 4, 1, 4, 4, 1, 4, 4, 11, 4, 5, 7, 4, 6001, 6002, 6003, 6004, 0, 4, -2061266477, -2061266477, -2061266477, -2061266477, 4, 1996631270, 1996631270, 1996631270, 1996631270, 4, 3600109, 3600109, 3600109, 3600109, 4, 3600109, 3600109, 3600109, 3600109, 4, 3600109, 3600109, 3600109, 3600109, 11, 5, 5, 7, 4, 6001, 6002, 6003, 6004, 0, 4, -2130257428, -2130257428, -2130257428, -2130257428, 4, 2113829313, 2113829313, 2113829313, 2113829313, 4, 2007976557, 2007976557, 2007976557, 2007976557, 4, -1991391739, -1991391739, -1991391739, -1991391739, 4, 1975597214, 1975597214, 1975597214, 1975597214, 22, 4, 4, 144, 41, 5, 6, 5, 16, 27, 5, 5, 144, 267, 2146747946, 40, 5, 5, 67267442, 18, 5, 5, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 4, 4, 16, 39, 4, 5, 5, 1, 4, 4, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 4, 4, 1, 2, 10, 5, 9, 14, 50, 110, 9003, 23, 3833258, 751619276, 322122547, 1073577011, 1073752125, 1113262, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 4, 5, 4, 37, 4, 4, 1, 2, 10, 5, 9, 15, 50, 110, 9003, 23, 3833258, 510027366, 120795955, 1073731522, 1073746974, 1113262, 25, 4, 5, 48, 2386766, 499999, 4800, 3, 5, 5, -2133569855, 2119835204, 44785, 44785, 44785, 1, 5, 6, 4, 4, 5, 5, 1, 4, 4, 4, 6, 4, 4, 52, 4, 3, -1076593316
#define CSPL_IN_CURRENT_RIGHT 11
#define CSPL_IN_VOLTAGE_LEFT 10
#define CSPL_IN_VOLTAGE_RIGHT 12
#define CSPL_IN_CURRENT_LEFT 9
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CONFIG_TX 425, 4, 768, 1234, 4268, 1344, 5679, 16, 9875, 48000, 48, 11, 4, 10, 2, 11, 2, 12, 2, 9, 2, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 14, 4, 119, 121, 120, 122, 50, 17, 3, 4, 17, 0, 5, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 5, 7, -2131386568, 2127392723, 10045462, 0, -10045462, 3, 5, 8, -2131386568, 2127392723, 10045462, 0, -10045462, 3, 5, 9, -2131386568, 2127392723, 10045462, 0, -10045462, 3, 5, 5, -2131386568, 2127392723, 10045462, 0, -10045462, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 10, -2146598296, 2145797691, 842978, 0, -842978, 3, 10, 10, -2146598296, 2145797691, 842978, 0, -842978, 19, 10, 6, 4, 1024, 8, 131067, 13, 21, 4, 0, 10789, 1024, 1073239999, 3, 4, 6, -2131386568, 2127392723, 10045462, 0, -10045462, 19, 6, 7, 5, 32768, 1, 262135, 12, 3, 4, 6, -2131386568, 2127392723, 10045462, 0, -10045462, 19, 6, 8, 6, 32768, 1, 262135, 12, 3, 4, 6, -2131386568, 2127392723, 10045462, 0, -10045462, 19, 6, 9, 7, 32768, 1, 262135, 12, 3, 4, 4, -2131386568, 2127392723, 10045462, 0, -10045462, 19, 4, 5, 8, 32768, 1, 262135, 12, 23, 8, 7, 6, 5, 1, 6001, 6002, 6003, 6004, 0, 17, 1, 4, 17, 2, 5, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 5, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 5, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 6, -2146598296, 2145797691, 842978, 0, -842978, 3, 5, 7, -2123141140, 2120572843, 13455402, 0, -13455402, 3, 5, 8, -2123141140, 2120572843, 13455402, 0, -13455402, 3, 5, 9, -2123141140, 2120572843, 13455402, 0, -13455402, 3, 5, 5, -2123141140, 2120572843, 13455402, 0, -13455402, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 4, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 4, 10, -2146598296, 2145797691, 842978, 0, -842978, 3, 10, 10, -2146598296, 2145797691, 842978, 0, -842978, 19, 10, 6, 9, 1024, 8, 131067, 13, 21, 9, 2, 9003, 1024, 1073239999, 3, 4, 6, -2123141140, 2120572843, 13455402, 0, -13455402, 19, 6, 7, 10, 32768, 1, 262135, 12, 3, 4, 6, -2123141140, 2120572843, 13455402, 0, -13455402, 19, 6, 8, 11, 32768, 1, 262135, 12, 3, 4, 6, -2123141140, 2120572843, 13455402, 0, -13455402, 19, 6, 9, 12, 32768, 1, 262135, 12, 3, 4, 4, -2123141140, 2120572843, 13455402, 0, -13455402, 19, 4, 5, 13, 32768, 1, 262135, 12, 23, 13, 12, 11, 10, 3, 6001, 6002, 6003, 6004, 0, -1488967997

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,36 @@
#define CSPL_IN_LEFT 1
#define CSPL_IN_RIGHT 2
#define CSPL_OUT_RIGHT 4
#define CSPL_OUT_LEFT 3
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_SQUEEZE_FLAG_LEFT 1030
#define CSPL_CAL_STATUS_RIGHT 908
#define CSPL_CAL_CHECKSUM_LEFT 903
#define CSPL_CAL_STATUS_LEFT 902
#define CSPL_CAL_Z_RIGHT 906
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_CAL_Z_LEFT 900
#define CSPL_CAL_AMBIENT_TEMPERATURE_LEFT 901
#define CSPL_CAL_CHECKSUM_RIGHT 909
#define CSPL_SQUEEZE_FLAG_RIGHT 1031
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CAL_AMBIENT_TEMPERATURE_RIGHT 907
#define CSPL_SINE_FLAG_RIGHT 1029
#define CSPL_CAL_SET_STATUS_FULL_RIGHT 910
#define CSPL_CAL_SET_STATUS_HP_LEFT 905
#define CSPL_SINE_FLAG_LEFT 1028
#define CSPL_CAL_SET_STATUS_HP_RIGHT 911
#define CSPL_CAL_SET_STATUS_FULL_LEFT 904
#define CSPL_CONFIG_RX 665, 4, 768, 1234, 15080, 768, 5679, 16, 9875, 48000, 48, 8, 4, 1, 4, 2, 4, 3, 4, 4, 4, 0, 48, 0, 48, 0, 48, 0, 48, 20, 20, 902, 1031, 120, 906, 119, 1030, 900, 908, 901, 122, 121, 909, 907, 903, 1028, 905, 904, 1029, 911, 910, 78, 53, 1, 4, 53, 1, 5, 53, 0, 5, 1, 4, 4, 53, 0, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 5, 5, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 5, 5, 1, 5, 5, 1, 5, 5, 1, 5, 5, 11, 5, 6, 10, 4, 6001, 6002, 6003, 6004, 0, 4, -2096293503, -2096293503, -2096293503, -2096293503, 4, 2052387573, 2052387573, 2052387573, 2052387573, 4, 1293222, 1293222, 1293222, 1293222, 4, 1293222, 1293222, 1293222, 1293222, 4, 1293222, 1293222, 1293222, 1293222, 11, 6, 6, 10, 4, 6001, 6002, 6003, 6004, 0, 4, -2126322971, -2126322971, -2126322971, -2126322971, 4, 2105370123, 2105370123, 2105370123, 2105370123, 4, 1713966715, 1713966715, 1713966715, 1713966715, 4, -1695028449, -1695028449, -1695028449, -1695028449, 4, 1676298755, 1676298755, 1676298755, 1676298755, 27, 5, 7, 0, 267, 2146966862, 8240, 5, 7, 14, 8, 13421772, 1073741824, 2147483, 42949672, 2684354, 9600, 120000, 27, 6, 7, 0, 267, 2146966862, 8237, 6, 7, 6, 14, 5, 4697620, 2011923742, 2147286804, 429496729, 2147483, 1, 22, 5, 5, 144, 41, 6, 6, 7, 16, 27, 7, 6, 144, 267, 2146747946, 40, 6, 6, 10661170, 18, 6, 6, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 5, 5, 16, 39, 5, 6, 6, 1, 5, 5, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 5, 5, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 5, 5, 4, 6, 8, 0, 13, 15, 60, 120, 10633, 23, 3650722, 751619276, 322122547, 1073577011, 1073752125, 989623, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 6, 6, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 5, 6, 5, 37, 5, 5, 4, 6, 8, 0, 13, 16, 60, 120, 10633, 23, 3650722, 510027366, 120795955, 1073731522, 1073746974, 989623, 25, 5, 6, 48, 2386766, 499999, 4800, 3, 6, 6, -2133569855, 2119835204, 44785, 44785, 44785, 1, 6, 7, 4, 5, 6, 6, 1, 5, 5, 4, 7, 5, 5, 52, 5, 2, 1, 4, 4, 1, 4, 4, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 3, 4, 4, -2119657205, 2092542729, 2119835196, -2119835196, 2119835196, 1, 4, 4, 1, 4, 4, 1, 4, 4, 1, 4, 4, 11, 4, 5, 9, 4, 6001, 6002, 6003, 6004, 0, 4, -2052615183, -2052615183, -2052615183, -2052615183, 4, 1979238100, 1979238100, 1979238100, 1979238100, 4, 3941168, 3941168, 3941168, 3941168, 4, 3941168, 3941168, 3941168, 3941168, 4, 3941168, 3941168, 3941168, 3941168, 11, 5, 5, 9, 4, 6001, 6002, 6003, 6004, 0, 4, -2128718877, -2128718877, -2128718877, -2128718877, 4, 2110279212, 2110279212, 2110279212, 2110279212, 4, 1707665443, 1707665443, 1707665443, 1707665443, 4, -1690923265, -1690923265, -1690923265, -1690923265, 4, 1674506200, 1674506200, 1674506200, 1674506200, 27, 4, 6, 0, 267, 2146966862, 8240, 4, 6, 17, 8, 13421772, 1073741824, 2147483, 42949672, 2684354, 9600, 120000, 27, 5, 6, 0, 267, 2146966862, 8237, 5, 6, 5, 17, 1, 4697620, 0, 2147286804, 2147450839, 214748364, 1, 22, 4, 4, 144, 41, 5, 6, 5, 16, 27, 5, 5, 144, 267, 2146747946, 40, 5, 5, 51618444, 18, 5, 5, 17, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 7895160, 22, 4, 4, 16, 39, 4, 5, 5, 1, 4, 4, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 3, 4, 4, -1792293227, 1538959524, 1817757406, -1817757406, 1817757406, 37, 4, 4, 2, 3, 12, 7, 11, 18, 50, 110, 9551, 23, 3833258, 751619276, 322122547, 1073577011, 1073752125, 1049601, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 3, 5, 5, -1792293227, 1538959524, 25464179, 25464179, 25464179, 4, 4, 5, 4, 37, 4, 4, 2, 3, 12, 7, 11, 19, 50, 110, 9551, 23, 3833258, 510027366, 120795955, 1073731522, 1073746974, 1049601, 25, 4, 5, 48, 2386766, 499999, 4800, 3, 5, 5, -2133569855, 2119835204, 44785, 44785, 44785, 1, 5, 6, 4, 4, 5, 5, 1, 4, 4, 4, 6, 4, 4, 52, 4, 3, 563938673
#define CSPL_IN_CURRENT_RIGHT 11
#define CSPL_IN_VOLTAGE_LEFT 10
#define CSPL_IN_VOLTAGE_RIGHT 12
#define CSPL_IN_CURRENT_LEFT 9
#define CSPL_TEMPERATURE_RIGHT 120
#define CSPL_SQUEEZE_FLAG_LEFT 1030
#define CSPL_TEMPERATURE_LEFT 119
#define CSPL_EXCURSION_MODEL_RIGHT 122
#define CSPL_SQUEEZE_FLAG_RIGHT 1031
#define CSPL_EXCURSION_MODEL_LEFT 121
#define CSPL_CONFIG_TX 605, 4, 768, 1234, 5516, 1728, 5679, 16, 9875, 48000, 48, 13, 4, 10, 2, 11, 2, 12, 2, 9, 2, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 0, 48, 18, 6, 119, 121, 1030, 120, 122, 1031, 74, 17, 3, 4, 17, 0, 5, 3, 5, 6, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 6, 6, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 6, 7, -2146598296, 2145797691, 842978, 0, -842978, 3, 7, 7, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 8, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 6, 9, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 6, 10, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 6, 6, -2133803504, 2129650866, 8916390, 0, -8916390, 3, 4, 11, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 11, 11, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 11, 12, -2146598296, 2145797691, 842978, 0, -842978, 3, 12, 12, -2146598296, 2145797691, 842978, 0, -842978, 19, 12, 7, 6, 1024, 8, 131067, 13, 21, 6, 0, 10633, 1024, 1073239999, 3, 11, 7, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 7, 8, 7, 32768, 1, 262135, 12, 3, 11, 7, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 7, 9, 8, 32768, 1, 262135, 12, 3, 11, 7, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 7, 10, 9, 32768, 1, 262135, 12, 3, 11, 7, -2133803504, 2129650866, 8916390, 0, -8916390, 19, 7, 6, 10, 32768, 1, 262135, 12, 23, 10, 9, 8, 7, 1, 6001, 6002, 6003, 6004, 0, 3, 5, 6, -2096293503, 2052387573, 1293222, 1293222, 1293222, 3, 6, 6, -2126322971, 2105370123, 1713966715, -1695028449, 1676298755, 32, 11, 0, 7, 5, 5, 1650878054, 3, 7, 4, 4, 2071690107, 0, 50, 5, 5, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 5, 5, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 4, 4, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 4, 4, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 46, 5, 4, 4, 0, 11, 18, 855638016, -2145980409, 2147462173, 2136746229, 299067162, 493921239, 1073741824, 7, 4, 4, 1583769190, -2, 103, 6, 4, 2, 20, 1, 1503238, 17, 1, 4, 17, 2, 5, 3, 5, 6, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 6, 6, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 6, 7, -2146598296, 2145797691, 842978, 0, -842978, 3, 7, 7, -2146598296, 2145797691, 842978, 0, -842978, 3, 6, 8, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 6, 9, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 6, 10, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 6, 6, -2122640104, 2120193161, 13645243, 0, -13645243, 3, 4, 11, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 11, 11, -2143508228, 2139547499, 2143511901, -2143511901, 2143511901, 3, 11, 12, -2146598296, 2145797691, 842978, 0, -842978, 3, 12, 12, -2146598296, 2145797691, 842978, 0, -842978, 19, 12, 7, 12, 1024, 8, 131067, 13, 21, 12, 3, 9552, 1024, 1073239999, 3, 11, 7, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 7, 8, 13, 32768, 1, 262135, 12, 3, 11, 7, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 7, 9, 14, 32768, 1, 262135, 12, 3, 11, 7, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 7, 10, 15, 32768, 1, 262135, 12, 3, 11, 7, -2122640104, 2120193161, 13645243, 0, -13645243, 19, 7, 6, 16, 32768, 1, 262135, 12, 23, 16, 15, 14, 13, 4, 6001, 6002, 6003, 6004, 0, 3, 5, 6, -2052615183, 1979238100, 3941168, 3941168, 3941168, 3, 6, 6, -2128718877, 2110279212, 1707665443, -1690923265, 1674506200, 32, 17, 0, 7, 5, 5, 1650878054, 3, 7, 4, 4, 2071690107, 0, 50, 5, 5, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 5, 5, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 4, 4, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 50, 4, 4, -2127607086, 2108095109, 2127698232, -2127698232, 2127698232, 46, 5, 4, 4, 3, 17, 18, 855638016, -2145980409, 2147462173, 2136746229, 299067162, 869730877, 1073741824, 7, 4, 4, 1503238553, -2, 103, 6, 4, 5, 20, 1, 2281701, -21253198

File diff suppressed because one or more lines are too long

10
audio/README Normal file
View File

@@ -0,0 +1,10 @@
Example usage:
$ python3.5 convert_config_string.py txt 510_Bonito_Baseline.h crus_sp_config_c1_rx.bin crus_sp_config_c1_tx.bin
CSPL config string conversion used for android system
python version: sys.version_info(major=3, minor=5, micro=3, releaselevel='final', serial=0)
Current Os name: posix
24 bit detected
wrote file: crus_sp_config_c1_rx.bin
wrote file: crus_sp_config_c1_tx.bin

View File

@@ -0,0 +1,397 @@
import ctypes
import sys
import os
import array
global arrayelementsize
def Generate_CRC(inlist):
crc = int(~0)&0xffffffff
for i in range(len(inlist)-1):
crc = crc ^ (int(inlist[i]&0xffffffff))
for j in range(4*8):
crc = ((int(crc >> 1)&0xffffffff) ^ int(0xEDB88320 & ((-(crc & 1))&0xffffffff) ))&0xffffffff
crc=(~crc)&0xffffffff
if (crc>0x7fffffff):
crc=-(0x7fffffff-(crc&0x7fffffff)+1)
print("Calculated CRC= ", crc)
print("Actual CRC=", inlist[len(inlist)-1])
return(crc)
def convertto24bit(binarydata):
if (binarydata[14]==2):
print("16 bit detected")
binarydata[14]=4
elif (binarydata[14]==4):
print("24 bit detected")
return(1)
else:
print("unknown config")
return(0)
ilist = [16,18,20]
for i in ilist:
if (binarydata[i]==2):
binarydata[i]=4
elif (binarydata[14]==4):
print("unknown config 4")
return(0)
else:
print("unknown config")
return(0)
for i in range(21,len(binarydata)-1):
if (binarydata[i]==17):
if (binarydata[i+1]==0):
binarydata[i]=53
if (binarydata[i+1]==1):
binarydata[i]=53
if (binarydata[i+1]==2):
binarydata[i]=53
if (binarydata[i+1]==3):
binarydata[i]=53
if (binarydata[i]==16):
if (binarydata[i+1]==5):
binarydata[i]=52
if (binarydata[i+1]==4):
binarydata[i]=52
crc=Generate_CRC(binarydata)
binarydata[len(binarydata)-1]=crc
return(1)
def detectbitpersample(binarydata):
if (binarydata[14]==4):
print("24 bit detected")
elif (binarydata[14]==2):
print("16 bit detected")
else:
print("unknown config")
def convertto16bit(binarydata):
if (binarydata[14]==4):
print("24 bit detected")
binarydata[14]=2
elif (binarydata[14]==2):
print("16 bit detected")
return(1)
else:
print("unknown config")
return(0)
ilist = [16,18,20]
for i in ilist:
if (binarydata[i]==4):
binarydata[i]=2
elif (binarydata[14]==2):
print("unknown config 4")
return(0)
else:
print("unknown config")
return(0)
for i in range(21,len(binarydata)-1):
if (binarydata[i]==53):
if (binarydata[i+1]==0):
binarydata[i]=17
if (binarydata[i+1]==1):
binarydata[i]=17
if (binarydata[i+1]==2):
binarydata[i]=17
if (binarydata[i+1]==3):
binarydata[i]=17
if (binarydata[i]==52):
if (binarydata[i+1]==5):
binarydata[i]=16
if (binarydata[i+1]==4):
binarydata[i]=16
crc=Generate_CRC(binarydata)
binarydata[len(binarydata)-1]=crc
return(1)
def binary2header(fileinput,fileinput1,fileoutput,to24bit,fileoutput1,fileoutput2):
binarydata=array.array(arrayelementsize)
file=open(fileinput,'rb')
if file==-1:
print('error cannot open file for reading:',fileinput)
return
file.seek(0,2)
arraysize=int(file.tell()/4)
print('length of config string RX:', arraysize)
file.seek(0,0)
binarydata.fromfile(file,arraysize)
file.close()
binarydata1=array.array(arrayelementsize)
file1=open(fileinput1,'rb')
if file1==-1:
print('error cannot open file for reading:',fileinput)
return
file1.seek(0,2)
arraysize1=int(file1.tell()/4)
print('length of config string TX:', arraysize1)
file1.seek(0,0)
binarydata1.fromfile(file1,arraysize1)
file1.close()
if (to24bit==0):
detectbitpersample(binarydata)
elif (to24bit==1):
result=convertto16bit(binarydata)
if (result==0):
print("Problem converting to 16bit")
exit(0)
elif (to24bit==2):
result=convertto24bit(binarydata)
if (result==0):
print("Problem converting to 24bit")
exit(0)
fileo=open(fileoutput,'wt')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput)
return
fileo.write('\n\n\n#define CSPL_CONFIG_RX ')
for i in range(len(binarydata)-1):
fileo.write(str(binarydata[i])+', ')
fileo.write(str(binarydata[len(binarydata)-1])+'\n\n\n\n')
fileo.write('\n\n\n#define CSPL_CONFIG_TX ')
for i in range(len(binarydata1)-1):
fileo.write(str(binarydata1[i])+', ')
fileo.write(str(binarydata1[len(binarydata1)-1])+'\n\n\n\n')
fileo.close()
print('wrote file:',fileoutput)
if (fileoutput1!=None):
fileo=open(fileoutput1,'wb')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput1)
return
binarydata.tofile(fileo)
fileo.close()
print('wrote file:',fileoutput1)
if (fileoutput2!=None):
fileo=open(fileoutput2,'wb')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput2)
return
binarydata1.tofile(fileo)
fileo.close()
print('wrote file:',fileoutput2)
def header2binary(fileinput,fileoutput,to24bit,fileoutput1,fileoutput2):
RX=array.array(arrayelementsize)
TX=array.array(arrayelementsize)
file=open(fileinput,'rt')
if file==-1:
print('error cannot open file for reading:',fileinput)
return
while True:
line=file.readline()
sline=line.split()
if (len(sline)>1):
if (sline[1]=='CSPL_CONFIG_RX'):
for r in range(2,len(sline)-1,1):
RX.append(int(sline[r][0:len(sline[r])-1]))
RX.append(int(sline[len(sline)-1]))
if (sline[1]=='CSPL_CONFIG_TX'):
for r in range(2,len(sline)-1,1):
TX.append(int(sline[r][0:len(sline[r])-1]))
TX.append(int(sline[len(sline)-1]))
if (line == ''):
break
file.close()
if (to24bit==0):
detectbitpersample(RX)
elif (to24bit==1):
result=convertto16bit(RX)
if (result==0):
print("Problem converting to 16bit")
exit(0)
elif (to24bit==2):
result=convertto24bit(RX)
if (result==0):
print("Problem converting to 24bit")
exit(0)
if (fileoutput!=None):
fileo=open(fileoutput,'wt')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput)
return
if (len(RX)>0):
fileo.write('\n\n\n#define CSPL_CONFIG_RX ')
for i in range(len(RX)-1):
fileo.write(str(RX[i])+', ')
fileo.write(str(RX[len(RX)-1])+'\n\n\n\n')
if (len(TX)>0):
fileo.write('\n\n\n#define CSPL_CONFIG_TX ')
for i in range(len(TX)-1):
fileo.write(str(TX[i])+', ')
fileo.write(str(TX[len(TX)-1])+'\n\n\n\n')
fileo.close()
print('wrote file:',fileoutput)
if (len(RX)>0):
if (fileoutput1!=None):
fileo=open(fileoutput1,'wb')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput1)
return
RX.tofile(fileo)
fileo.close()
print('wrote file:',fileoutput1)
if (len(TX)>0):
if (fileoutput2!=None):
fileo=open(fileoutput2,'wb')
if (fileo==-1):
print('error cannot open file for writing:',fileoutput2)
return
TX.tofile(fileo)
fileo.close()
print('wrote file:',fileoutput2)
pass
def usage():
print('Possible usages: ')
print('1. Convert from binary to text header file:')
print('\t\targs: bin <binary file RX> <binary file TX> <output text file>')
print('2. Convert from binary from 16bit to 24bit then output to text header file:')
print('\t\targs: bin16 <binary file RX> <binary file TX> <output text file>')
print('3. Convert from binary from 16bit to 24bit then output to text header file and binary file')
print('\t\targs: bin16 <binary file RX> <binary file TX> <output text file> <binary rx file> <binary tx file>')
print('4. Convert from binary from 24bit to 16bit then output to text header file:')
print('\t\targs: bin24 <binary file RX> <binary file TX> <output text file>')
print('5. Convert from binary from 24bit to 16bit then output to text header file and binary file')
print('\t\targs: bin24 <binary file RX> <binary file TX> <output text file> <binary rx file> <binary tx file>')
print('6. Convert from text to binary file')
print('\t\targs: txt <text file> <output binary file RX> <output binary file TX>')
print('7. Convert from text 16bit to 24bit to text file')
print('\t\targs: txt16 <text file> <text output file>')
print('8. Convert from text 16bit to 24bit to text file and binary files')
print('\t\targs: txt16 <text file> <text output file> <output binary file RX> <output binary file TX>')
print('9. Convert from text 24bit to 16bit to text file')
print('\t\targs: txt24 <text file> <text output file>')
print('10. Convert from text 24bit to 16bit to text file and binary files')
print('\t\targs: txt24 <text file> <text output file> <output binary file RX> <output binary file TX>')
return
def main(argv):
print('CSPL config string conversion used for android system')
if (len(argv)<4):
usage()
return
global arrayelementsize
print("python version: ",sys.version_info)
print("Current Os name: ",os.name)
validsize=0
for r in ['l','i']:
arrayelementsize=r
t=array.array(arrayelementsize)
if (t.itemsize==4):
validsize=1
break
if (validsize!=1):
print("Expected element size donot match firmware requirement")
if (argv[1]=='bin'):
binary2header(argv[2],argv[3],argv[4],0)
elif (argv[1]=='txt'):
header2binary(argv[2],None,0,argv[3],argv[4])
elif (argv[1]=='bin16'):
if (len(argv)==5):
binary2header(argv[2],argv[3],argv[4],1,None,None)
elif (len(argv)==7):
binary2header(argv[2],argv[3],argv[4],1,argv[5],argv[6])
elif (argv[1]=='bin24'):
if (len(argv)==5):
binary2header(argv[2],argv[3],argv[4],2,None,None)
elif (len(argv)==7):
binary2header(argv[2],argv[3],argv[4],2,argv[5],argv[6])
elif (argv[1]=='txt16'):
if (len(argv)==4):
header2binary(argv[2],argv[3],1,None,None)
elif (len(argv)==6):
header2binary(argv[2],argv[3],1,argv[4],argv[5])
elif (argv[1]=='txt24'):
if (len(argv)==4):
header2binary(argv[2],argv[3],2,None,None)
elif (len(argv)==6):
header2binary(argv[2],argv[3],2,argv[4],argv[5])
else :
usage()
return
if __name__ == "__main__":
main(sys.argv)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

7
audio/generate_bin.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
# B1
python3.5 convert_config_string.py txt 20180509_100_Sargo_Stereo_Protect.h crus_sp_config_b1_rx.bin crus_sp_config_b1_tx.bin
# C1
python3.5 convert_config_string.py txt 20180509_Bonito_Protect_24bit.h crus_sp_config_c1_rx.bin crus_sp_config_c1_tx.bin

BIN
audio/rt5514_dsp_fw1.bin Normal file

Binary file not shown.

BIN
audio/rt5514_dsp_fw2.bin Normal file

Binary file not shown.

BIN
audio/rt5514_dsp_fw3.bin Normal file

Binary file not shown.

BIN
audio/rt5514_dsp_fw4.bin Normal file

Binary file not shown.

84
audio_effects.xml Normal file
View File

@@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0">
<libraries>
<library name="bundle" path="libbundlewrapper.so"/>
<library name="reverb" path="libreverbwrapper.so"/>
<library name="visualizer_sw" path="libvisualizer.so"/>
<library name="visualizer_hw" path="libqcomvisualizer.so"/>
<library name="downmix" path="libdownmix.so"/>
<library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="proxy" path="libeffectproxy.so"/>
<library name="offload_bundle" path="libqcompostprocbundle.so"/>
<library name="audio_pre_processing" path="libqcomvoiceprocessing.so"/>
<library name="volume_listener" path="libvolumelistener.so"/>
</libraries>
<effects>
<effectProxy name="bassboost" library="proxy" uuid="14804144-a5ee-4d24-aa88-0002a5d5c51b">
<libsw library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="2c4a8c24-1581-487f-94f6-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="virtualizer" library="proxy" uuid="d3467faa-acc7-4d34-acaf-0002a5d5c51b">
<libsw library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="509a4498-561a-4bea-b3b1-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="equalizer" library="proxy" uuid="c8e70ecd-48ca-456e-8a4f-0002a5d5c51b">
<libsw library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="a0dac280-401c-11e3-9379-0002a5d5c51b"/>
</effectProxy>
<effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/>
<effectProxy name="reverb_env_aux" library="proxy" uuid="48404ac9-d202-4ccc-bf84-0002a5d5c51b">
<libsw library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="79a18026-18fd-4185-8233-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="reverb_env_ins" library="proxy" uuid="b707403a-a1c1-4291-9573-0002a5d5c51b">
<libsw library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="eb64ea04-973b-43d2-8f5e-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="reverb_pre_aux" library="proxy" uuid="1b78f587-6d1c-422e-8b84-0002a5d5c51b">
<libsw library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="6987be09-b142-4b41-9056-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="reverb_pre_ins" library="proxy" uuid="f3e178d2-ebcb-408e-8357-0002a5d5c51b">
<libsw library="reverb" uuid="172cdf00-a3bc-11df-a72f-0002a5d5c51b"/>
<libhw library="offload_bundle" uuid="aa2bebf6-47cf-4613-9bca-0002a5d5c51b"/>
</effectProxy>
<effectProxy name="visualizer" library="proxy" uuid="1d0a1a53-7d5d-48f2-8e71-27fbd10d842c">
<libsw library="visualizer_sw" uuid="d069d9e0-8329-11df-9168-0002a5d5c51b"/>
<libhw library="visualizer_hw" uuid="7a8044a0-1a71-11e3-a184-0002a5d5c51b"/>
</effectProxy>
<effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/>
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effect name="aec" library="audio_pre_processing" uuid="27dab416-23f8-11e8-b467-0ed5f89f718b"/>
<effect name="ns" library="audio_pre_processing" uuid="27dab6d2-23f8-11e8-b467-0ed5f89f718b"/>
<effect name="music_helper" library="volume_listener" uuid="08b8b058-0590-11e5-ac71-0025b32654a0"/>
<effect name="ring_helper" library="volume_listener" uuid="0956df94-0590-11e5-bdbe-0025b32654a0"/>
<effect name="alarm_helper" library="volume_listener" uuid="09f303e2-0590-11e5-8fdb-0025b32654a0"/>
<effect name="voice_helper" library="volume_listener" uuid="0ace5c08-0590-11e5-ae9e-0025b32654a0"/>
<effect name="notification_helper" library="volume_listener" uuid="0b776dde-0590-11e5-81ba-0025b32654a0"/>
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
</effects>
<postprocess>
<stream type="music">
<apply effect="music_helper"/>
</stream>
<stream type="ring">
<apply effect="ring_helper"/>
</stream>
<stream type="alarm">
<apply effect="alarm_helper"/>
</stream>
<stream type="voice_call">
<apply effect="voice_helper"/>
</stream>
<stream type="notification">
<apply effect="notification_helper"/>
</stream>
</postprocess>
<preprocess>
<stream type="voice_communication">
<apply effect="aec"/>
<apply effect="ns"/>
</stream>
</preprocess>
</audio_effects_conf>

View File

@@ -0,0 +1,425 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2014, 2016-2017, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_info>
<acdb_ids>
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" acdb_id="514"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="513"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="512"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" acdb_id="45"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" acdb_id="514"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" acdb_id="147"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="4"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="34"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" acdb_id="7"/>
<device name="SND_DEVICE_IN_VOICE_DMIC" acdb_id="41"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" acdb_id="8"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC" acdb_id="117"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" acdb_id="201"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="8"/>
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" acdb_id="99"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" acdb_id="98"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" acdb_id="111"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="117"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" acdb_id="8"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" acdb_id="10"/>
<device name="SND_DEVICE_OUT_VOICE_USB_HEADSET" acdb_id="77"/>
<device name="SND_DEVICE_OUT_VOICE_USB_HEADPHONES" acdb_id="77"/>
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC" acdb_id="78"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" acdb_id="78"/>
<device name="SND_DEVICE_IN_CAMCORDER_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_PORTRAIT" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT" acdb_id="61"/>
<device name="SND_DEVICE_OUT_VOICE_HEARING_AID" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" acdb_id="19"/>
<!-- TTY -->
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" acdb_id="16"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_SPEAKER_MIC" acdb_id="19"/>
</acdb_ids>
<bit_width_configs>
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
</bit_width_configs>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17"/>
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="5"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="59"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="out" id="-1"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="27"/>
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
</pcm_ids>
<config_params>
<param key="input_mic_max_count" value="3"/>
<param key="snd_card_name" value="sdm670-intcodec-b4-snd-card"/>
<param key="operator_info" value="tmus;310260"/>
<param key="operator_info" value="tmus;310490"/>
<param key="operator_info" value="tmus;310026"/>
<param key="operator_info" value="tmus;310800"/>
<param key="operator_info" value="tmus;310660"/>
<param key="operator_info" value="tmus;310580"/>
<param key="operator_info" value="tmus;310310"/>
<param key="operator_info" value="tmus;310270"/>
<param key="operator_info" value="tmus;310250"/>
<param key="operator_info" value="tmus;310240"/>
<param key="operator_info" value="tmus;310230"/>
<param key="operator_info" value="tmus;310220"/>
<param key="operator_info" value="tmus;310210"/>
<param key="operator_info" value="tmus;310200"/>
<param key="operator_info" value="tmus;310160"/>
<param key="operator_info" value="tmus;20404"/>
<param key="operator_info" value="tmus;311220"/>
<param key="operator_info" value="tmus;310066"/>
<param key="operator_info" value="tmus;310730"/>
<param key="operator_info" value="tmus;00101"/>
</config_params>
<operator_specific>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" operator="tmus" mixer_path="voice-headset-mic-tmus" acdb_id="55"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" operator="tmus" mixer_path="voice-headphones-tmus" acdb_id="66"/>
</operator_specific>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<backend_names>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" backend="speaker" interface="SEC_TDM_RX-and-HDMI_RX"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_PORTRAIT" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headphones" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" backend="vi-feedback" interface="SEC_TDM_TX_0"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_REC_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
</backend_names>
<app_types>
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
<app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69946" max_rate="48000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="16" id="69938" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69946" max_rate="48000" />
</app_types>
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<snd_devices>
<input_snd_device>
<input_snd_device_mic_mapping>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_PORTRAIT">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_SPEAKER_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_THREE_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
</input_snd_device_mic_mapping>
</input_snd_device>
</snd_devices>
</audio_platform_info>

View File

@@ -0,0 +1,320 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2014, 2016-2017, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_info>
<acdb_ids>
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="15"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="101"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="512"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" acdb_id="45"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" acdb_id="147"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="41"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" acdb_id="19"/>
<device name="SND_DEVICE_OUT_VOICE_HEARING_AID" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" acdb_id="19"/>
<!-- TTY -->
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="19"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_SPEAKER" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_SPEAKER_MIC" acdb_id="19"/>
</acdb_ids>
<bit_width_configs>
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
</bit_width_configs>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17"/>
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="5"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="59"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="out" id="-1"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="27"/>
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
</pcm_ids>
<config_params>
<param key="input_mic_max_count" value="3"/>
<param key="snd_card_name" value="sdm670-intcodec-b4dev-snd-card"/>
</config_params>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<backend_names>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" backend="speaker" interface="SEC_TDM_RX-and-HDMI_RX"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headphones" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" backend="vi-feedback" interface="SEC_TDM_TX_0"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_REC_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
</backend_names>
<app_types>
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
<app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69946" max_rate="48000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="16" id="69938" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69946" max_rate="48000" />
</app_types>
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<snd_devices>
<input_snd_device>
<input_snd_device_mic_mapping>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_SPEAKER_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_THREE_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
</input_snd_device_mic_mapping>
</input_snd_device>
</snd_devices>
</audio_platform_info>

View File

@@ -0,0 +1,425 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2014, 2016-2017, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_info>
<acdb_ids>
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" acdb_id="514"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="513"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="512"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" acdb_id="45"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" acdb_id="514"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC" acdb_id="143"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" acdb_id="147"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="4"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="34"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" acdb_id="7"/>
<device name="SND_DEVICE_IN_VOICE_DMIC" acdb_id="41"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" acdb_id="8"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC" acdb_id="117"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" acdb_id="201"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="8"/>
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" acdb_id="99"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" acdb_id="98"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" acdb_id="111"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="117"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" acdb_id="8"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" acdb_id="10"/>
<device name="SND_DEVICE_OUT_VOICE_USB_HEADSET" acdb_id="77"/>
<device name="SND_DEVICE_OUT_VOICE_USB_HEADPHONES" acdb_id="77"/>
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC" acdb_id="78"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" acdb_id="78"/>
<device name="SND_DEVICE_IN_CAMCORDER_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_PORTRAIT" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" acdb_id="61"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT" acdb_id="61"/>
<device name="SND_DEVICE_OUT_VOICE_HEARING_AID" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" acdb_id="19"/>
<!-- TTY -->
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" acdb_id="16"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="19"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_SPEAKER_MIC" acdb_id="19"/>
</acdb_ids>
<bit_width_configs>
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
</bit_width_configs>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17"/>
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="5"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="59"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="out" id="-1"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="27"/>
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
</pcm_ids>
<config_params>
<param key="input_mic_max_count" value="3"/>
<param key="snd_card_name" value="sdm670-intcodec-s4-snd-card"/>
<param key="operator_info" value="tmus;310260"/>
<param key="operator_info" value="tmus;310490"/>
<param key="operator_info" value="tmus;310026"/>
<param key="operator_info" value="tmus;310800"/>
<param key="operator_info" value="tmus;310660"/>
<param key="operator_info" value="tmus;310580"/>
<param key="operator_info" value="tmus;310310"/>
<param key="operator_info" value="tmus;310270"/>
<param key="operator_info" value="tmus;310250"/>
<param key="operator_info" value="tmus;310240"/>
<param key="operator_info" value="tmus;310230"/>
<param key="operator_info" value="tmus;310220"/>
<param key="operator_info" value="tmus;310210"/>
<param key="operator_info" value="tmus;310200"/>
<param key="operator_info" value="tmus;310160"/>
<param key="operator_info" value="tmus;20404"/>
<param key="operator_info" value="tmus;311220"/>
<param key="operator_info" value="tmus;310066"/>
<param key="operator_info" value="tmus;310730"/>
<param key="operator_info" value="tmus;00101"/>
</config_params>
<operator_specific>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" operator="tmus" mixer_path="voice-headset-mic-tmus" acdb_id="55"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" operator="tmus" mixer_path="voice-headphones-tmus" acdb_id="66"/>
</operator_specific>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<backend_names>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" backend="speaker" interface="SEC_TDM_RX-and-HDMI_RX"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_PORTRAIT" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headphones" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" backend="vi-feedback" interface="SEC_TDM_TX_0"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" backend="handset-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_REC_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
</backend_names>
<app_types>
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
<app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69946" max_rate="48000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="16" id="69938" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69946" max_rate="48000" />
</app_types>
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<snd_devices>
<input_snd_device>
<input_snd_device_mic_mapping>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_PORTRAIT">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_SELFIE_PORTRAIT">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_SPEAKER_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_THREE_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
</input_snd_device_mic_mapping>
</input_snd_device>
</snd_devices>
</audio_platform_info>

View File

@@ -0,0 +1,320 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2014, 2016-2017, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_info>
<acdb_ids>
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="15"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="15"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="101"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="512"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" acdb_id="45"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" acdb_id="147"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="41"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" acdb_id="19"/>
<device name="SND_DEVICE_OUT_VOICE_HEARING_AID" acdb_id="10"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" acdb_id="19"/>
<!-- TTY -->
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="19"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_SPEAKER" acdb_id="14"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_SPEAKER_MIC" acdb_id="19"/>
</acdb_ids>
<bit_width_configs>
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
</bit_width_configs>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17"/>
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="5"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="59"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="33"/>
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="in" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16"/>
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="out" id="-1"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27"/>
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="27"/>
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
</pcm_ids>
<config_params>
<param key="input_mic_max_count" value="3"/>
<param key="snd_card_name" value="sdm670-intcodec-s4dev-snd-card"/>
</config_params>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<backend_names>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="SEC_TDM_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" backend="speaker" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" backend="speaker" interface="SEC_TDM_RX-and-HDMI_RX"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="SEC_TDM_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headphones" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" backend="vi-feedback" interface="SEC_TDM_TX_0"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" backend="bt-sco" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" backend="bt-sco-wb" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="SEC_TDM_RX_0-and-INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="INT0_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" backend="speaker-and-bt-a2dp" interface="SEC_TDM_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_REC_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" backend="headset-mic" interface="INT3_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" backend="speaker-mic" interface="PRI_TDM_TX_0"/>
</backend_names>
<app_types>
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
<app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69946" max_rate="48000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="16" id="69938" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69946" max_rate="48000" />
</app_types>
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<snd_devices>
<input_snd_device>
<input_snd_device_mic_mapping>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_SPEAKER_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_THREE_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
</input_snd_device_mic_mapping>
</input_snd_device>
</snd_devices>
</audio_platform_info>

View File

@@ -0,0 +1,245 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (C) 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
<globalConfiguration speaker_drc_enabled="true"/>
<modules>
<module name="primary" halVersion="2.0">
<attachedDevices>
<item>Speaker</item>
<item>Speaker Safe</item>
<item>Earpiece</item>
<item>Telephony Tx</item>
<item>Built-In Mic</item>
<item>Built-In Back Mic</item>
<item>Telephony Rx</item>
</attachedDevices>
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="hifi_playback" role="source" />
<mixPort name="deep_buffer" role="source"
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
samplingRates="44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="compressed_offload" role="source"
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
<profile name="" format="AUDIO_FORMAT_MP3"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_LC"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
</mixPort>
<mixPort name="voice_tx" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="voip_rx" role="source"
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall_music_uplink" role="source"
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="primary input" role="sink" maxActiveCount="0">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="hifi_input" role="sink" />
<mixPort name="voice_rx" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="voip_tx" role="sink"
flags="AUDIO_INPUT_FLAG_VOIP_TX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
</devicePort>
<devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
</devicePort>
<devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
</devicePort>
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
</devicePort>
<devicePort tagName="Line Out" type="AUDIO_DEVICE_OUT_LINE" role="sink">
</devicePort>
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
</devicePort>
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
</devicePort>
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
</devicePort>
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
</devicePort>
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
</devicePort>
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
</devicePort>
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
</devicePort>
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
</devicePort>
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
</devicePort>
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
</devicePort>
<devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">
</devicePort>
<!-- TODO: Enable multi-channel recording -->
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="Earpiece"
sources="primary output,raw,deep_buffer,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headset"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headphones"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Line Out"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx"
sources="voice_tx,incall_music_uplink"/>
<route type="mix" sink="primary input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="fast input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voice_rx"
sources="Telephony Rx"/>
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
<route type="mix" sink="mmap_no_irq_in"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voip_tx"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep_buffer,compressed_offload"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep_buffer,compressed_offload"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep_buffer,compressed_offload"/>
</routes>
</module>
<!-- A2DP Input Audio HAL -->
<xi:include href="a2dp_in_audio_policy_configuration.xml"/>
<!-- Usb Audio HAL -->
<module name="usb" halVersion="2.0">
<mixPorts>
<mixPort name="usb_accessory output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="USB Host Out"
sources="usb_accessory output"/>
</routes>
</module>
<!-- Remote Submix Audio HAL -->
<xi:include href="r_submix_audio_policy_configuration.xml"/>
<!-- Bluetooth Audio HAL for Hearing aid -->
<xi:include href="bluetooth_hearing_aid_audio_policy_configuration.xml"/>
</modules>
<!-- Volume section -->
<xi:include href="audio_policy_volumes.xml"/>
<xi:include href="default_volume_tables.xml"/>
</audioPolicyConfiguration>

View File

@@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (C) 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
<globalConfiguration speaker_drc_enabled="true"/>
<modules>
<module name="primary" halVersion="2.0">
<attachedDevices>
<item>Speaker</item>
<item>Speaker Safe</item>
<item>Earpiece</item>
<item>Telephony Tx</item>
<item>Built-In Mic</item>
<item>Built-In Back Mic</item>
<item>Telephony Rx</item>
</attachedDevices>
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="hifi_playback" role="source" />
<mixPort name="deep_buffer" role="source"
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
samplingRates="44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="compressed_offload" role="source"
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
<profile name="" format="AUDIO_FORMAT_MP3"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_LC"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
</mixPort>
<mixPort name="voice_tx" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="voip_rx" role="source"
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall_music_uplink" role="source"
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="hifi_input" role="sink" />
<mixPort name="voice_rx" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="voip_tx" role="sink"
flags="AUDIO_INPUT_FLAG_VOIP_TX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
</devicePort>
<devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
</devicePort>
<devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
</devicePort>
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
</devicePort>
<devicePort tagName="Line Out" type="AUDIO_DEVICE_OUT_LINE" role="sink">
</devicePort>
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
</devicePort>
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
</devicePort>
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
</devicePort>
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
</devicePort>
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
</devicePort>
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
</devicePort>
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
</devicePort>
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
</devicePort>
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
</devicePort>
<devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">
</devicePort>
<!-- TODO: Enable multi-channel recording -->
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="Earpiece"
sources="primary output,raw,deep_buffer,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headset"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headphones"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Line Out"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx"
sources="voice_tx,incall_music_uplink"/>
<route type="mix" sink="primary input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="fast input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voice_rx"
sources="Telephony Rx"/>
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
<route type="mix" sink="mmap_no_irq_in"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voip_tx"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
</routes>
</module>
<!-- A2DP Input Audio HAL -->
<xi:include href="a2dp_in_audio_policy_configuration.xml"/>
<!-- Usb Audio HAL -->
<module name="usb" halVersion="2.0">
<mixPorts>
<mixPort name="usb_accessory output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="USB Host Out"
sources="usb_accessory output"/>
</routes>
</module>
<!-- Remote Submix Audio HAL -->
<xi:include href="r_submix_audio_policy_configuration.xml"/>
<!-- Bluetooth Audio HAL -->
<xi:include href="bluetooth_audio_policy_configuration.xml"/>
</modules>
<!-- Volume section -->
<xi:include href="audio_policy_volumes.xml"/>
<xi:include href="default_volume_tables.xml"/>
</audioPolicyConfiguration>

View File

@@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (C) 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
<globalConfiguration speaker_drc_enabled="true"/>
<modules>
<module name="primary" halVersion="2.0">
<attachedDevices>
<item>Speaker</item>
<item>Speaker Safe</item>
<item>Earpiece</item>
<item>Telephony Tx</item>
<item>Built-In Mic</item>
<item>Built-In Back Mic</item>
<item>Telephony Rx</item>
</attachedDevices>
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW|AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="hifi_playback" role="source" />
<mixPort name="deep_buffer" role="source"
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
samplingRates="44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="compressed_offload" role="source"
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
<profile name="" format="AUDIO_FORMAT_MP3"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_LC"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
</mixPort>
<mixPort name="voice_tx" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="voip_rx" role="source"
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall_music_uplink" role="source"
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="hifi_input" role="sink" />
<mixPort name="voice_rx" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
</mixPort>
<mixPort name="voip_tx" role="sink"
flags="AUDIO_INPUT_FLAG_VOIP_TX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
</devicePort>
<devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
</devicePort>
<devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
</devicePort>
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
</devicePort>
<devicePort tagName="Line Out" type="AUDIO_DEVICE_OUT_LINE" role="sink">
</devicePort>
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
</devicePort>
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
</devicePort>
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
</devicePort>
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
</devicePort>
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
</devicePort>
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
</devicePort>
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
</devicePort>
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
</devicePort>
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
</devicePort>
<devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">
</devicePort>
<!-- TODO: Enable multi-channel recording -->
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="Earpiece"
sources="primary output,raw,deep_buffer,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headset"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Wired Headphones"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Line Out"
sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT SCO"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,raw,deep_buffer,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Telephony Tx"
sources="voice_tx,incall_music_uplink"/>
<route type="mix" sink="primary input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="fast input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voice_rx"
sources="Telephony Rx"/>
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
<route type="mix" sink="mmap_no_irq_in"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,USB Device In,USB Headset In"/>
<route type="mix" sink="voip_tx"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
</routes>
</module>
<!-- A2DP Audio HAL -->
<xi:include href="a2dp_audio_policy_configuration.xml"/>
<!-- Usb Audio HAL -->
<module name="usb" halVersion="2.0">
<mixPorts>
<mixPort name="usb_accessory output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="USB Host Out"
sources="usb_accessory output"/>
</routes>
</module>
<!-- Remote Submix Audio HAL -->
<xi:include href="r_submix_audio_policy_configuration.xml"/>
<!-- Hearing aid Audio HAL -->
<xi:include href="hearing_aid_audio_policy_configuration.xml"/>
</modules>
<!-- Volume section -->
<xi:include href="audio_policy_volumes.xml"/>
<xi:include href="default_volume_tables.xml"/>
</audioPolicyConfiguration>

213
audio_policy_volumes.xml Normal file
View File

@@ -0,0 +1,213 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (C) 2015 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Volume section defines a volume curve for a given use case and device category.
It contains a list of points of this curve expressing the attenuation in Millibels for a given
volume index from 0 to 100.
<volume stream=”AUDIO_STREAM_MUSIC” deviceCategory=””>
<point>0,-9600</point>
<point>100,0</point>
</volume>
-->
<volumes>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4880</point>
<point>42,-2870</point>
<point>88,-1140</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-6000</point>
<point>19,-4400</point>
<point>71,-2000</point>
<point>91,-900</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_NON_MUTABLE_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-4880</point>
<point>42,-2870</point>
<point>88,-1140</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_NON_MUTABLE_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_NON_MUTABLE_EXT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-4880</point>
<point>42,-2870</point>
<point>88,-1140</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>0,-4200</point>
<point>33,-2800</point>
<point>66,-1400</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-3100</point>
<point>71,-2100</point>
<point>100,-1700</point>
</volume>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-3000</point>
<point>33,-2600</point>
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="SILENT_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_NON_MUTABLE_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="FULL_SCALE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEARING_AID"
ref="FULL_SCALE_VOLUME_CURVE"/>
</volumes>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Bluetooth Audio HAL Audio Policy Configuration file -->
<module name="bluetooth" halVersion="2.0">
<mixPorts>
<!-- Hearing AIDs Audio Ports -->
<mixPort name="hearing aid output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="24000,16000"
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
</mixPorts>
<devicePorts>
<!-- Hearing AIDs Audio Ports -->
<devicePort tagName="BT Hearing Aid Out" type="AUDIO_DEVICE_OUT_HEARING_AID" role="sink"/>
</devicePorts>
<routes>
<route type="mix" sink="BT Hearing Aid Out"
sources="hearing aid output"/>
</routes>
</module>

View File

@@ -21,3 +21,18 @@ include device/google/bramble/device-common.mk
DEVICE_PACKAGE_OVERLAYS += device/google/bramble/bramble/overlay
# Audio XMLs for bramble
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
$(LOCAL_PATH)/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
$(LOCAL_PATH)/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
$(LOCAL_PATH)/bluetooth_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_hearing_aid_audio_policy_configuration.xml \
$(LOCAL_PATH)/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/hearing_aid_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml