taiko_codec.txt 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. taiko audio CODEC
  2. Required properties:
  3. - compatible : "qcom,taiko-slim-pgd"
  4. - elemental-addr: codec slimbus slave PGD enumeration address.(48 bits)
  5. - qcom,cdc-reset-gpio: gpio used for codec SOC reset.
  6. - cdc-vdd-buck-supply: phandle of buck supply's regulator device tree node.
  7. - qcom,cdc-vdd-buck-voltage: buck supply's voltage level min and max in mV.
  8. - qcom,cdc-vdd-buck-current: buck supply's max current in mA.
  9. - cdc-vdd-tx-h-supply: phandle of tx-h supply's regulator device tree node.
  10. - qcom,cdc-vdd-tx-h-voltage: tx-h supply's voltage level min and max in mV.
  11. - qcom,cdc-vdd-tx-h-current: tx-h supply's max current in mA.
  12. - cdc-vdd-rx-h-supply: phandle of rx-h supply's regulator device tree node.
  13. - qcom,cdc-vdd-rx-h-voltage: rx-h supply's voltage level min and max in mV.
  14. - qcom,cdc-vdd-rx-h-current: rx-h supply's max current in mA.
  15. - cdc-vddpx-1-supply: phandle of px-1 supply's regulator device tree node.
  16. - qcom,cdc-vddpx-1-voltage: px-1 supply's voltage level min and max in mV.
  17. - qcom,cdc-vddpx-1-current: px-1 supply's max current in mA.
  18. - cdc-vdd-a-1p2v-supply: phandle of 1.2v supply's regulator device tree node.
  19. - qcom,cdc-vdd-a-1p2v-voltage: 1.2v supply's voltage level min and max in mV.
  20. - qcom,cdc-vdd-a-1p2v-current: 1.2v supply's max current in mA.
  21. - cdc-vddcx-1-supply: phandle of cx-1 supply's regulator device tree node.
  22. - qcom,cdc-vddcx-1-voltage: cx-1 supply's voltage level min and max in mV.
  23. - qcom,cdc-vddcx-1-current: cx-1 supply's max current in mA.
  24. - cdc-vddcx-2-supply: phandle of cx-2 supply's regulator device tree node.
  25. - qcom,cdc-vddcx-2-voltage: cx-2 supply's voltage level min and max in mV.
  26. - qcom,cdc-vddcx-2-current: cx-2 supply's max current in mA.
  27. - cdc-vdd-buckhelper-supply: phandle of helper regulator supply's
  28. device tree node. This supply is a helper regulator for
  29. cdc-vdd-buck-supply regulator.
  30. - cdc-vdd-buckhelper-voltage: helper supply's voltage level min and max in mV.
  31. - qcom,cdc-vdd-buckhelper-current: helper supply's max current in mA.
  32. - qcom,cdc-static-supplies: List of supplies to be enabled prior to codec
  33. hardware probe. Supplies in this list will be
  34. stay enabled.
  35. - qcom,cdc-micbias-ldoh-v - LDOH output in volts (should be 1.95 V and 3.00 V).
  36. - qcom,cdc-micbias-cfilt1-mv - cfilt1 output voltage in milli volts.
  37. - qcom,cdc-micbias-cfilt2-mv - cfilt2 output voltage in milli volts.
  38. - qcom,cdc-micbias-cfilt3-mv - cfilt3 output voltage in milli volts.
  39. cfilt voltage can be set to max of qcom,cdc-micbias-ldoh-v - 0.15V.
  40. - qcom,cdc-micbias1-cfilt-sel = cfilt to use for micbias1
  41. (should be from 1 to 3).
  42. - qcom,cdc-micbias2-cfilt-sel = cfilt to use for micbias2
  43. (should be from 1 to 3).
  44. - qcom,cdc-micbias3-cfilt-sel = cfilt to use for micbias3
  45. (should be from 1 to 3).
  46. - qcom,cdc-micbias4-cfilt-sel = cfilt to use for micbias4
  47. (should be from 1 to 3).
  48. This value represents the connected CFLIT to MIC Bias.
  49. - qcom,cdc-micbias1-ext-cap: Boolean. Enable micbias 1 external capacitor mode.
  50. - qcom,cdc-micbias2-ext-cap: Boolean. Enable micbias 2 external capacitor mode.
  51. - qcom,cdc-micbias3-ext-cap: Boolean. Enable micbias 3 external capacitor mode.
  52. - qcom,cdc-micbias4-ext-cap: Boolean. Enable micbias 4 external capacitor mode.
  53. - qcom,cdc-mclk-clk-rate - Specifies the master clock rate in Hz required for
  54. codec.
  55. - qcom,cdc-slim-ifd-dev - namme of the codec slim interface device.
  56. - qcom,cdc-slim-ifd-elemental-addr - codec slimbus slave interface device
  57. enumeration address.
  58. Optional properties:
  59. - cdc-dmic-sample-rate: Specifies the sample rate of digital mic in HZ. The
  60. values for 9.6MHZ mclk can be 2400000 Hz, 3200000 Hz
  61. and 4800000 Hz. The values for 12.288MHz mclk can be
  62. 3072200 Hz, 4096000 Hz and 6144000 Hz.
  63. - qcom,cdc-on-demand-supplies: List of supplies which can be enabled
  64. dynamically.
  65. Supplies in this list are off by default.
  66. - qcom,cdc-cp-supplies: List of supplies required for codec chargepump enable
  67. Supplies in this list can be enabled/disabled dynamically and
  68. are off by default.
  69. - qcom,cdc-micbias2-headset-only: Boolean. Allow micbias 2 only to headset mic.
  70. Example:
  71. taiko_codec {
  72. compatible = "qcom,taiko-slim-pgd";
  73. elemental-addr = [00 01 A0 00 17 02];
  74. qcom,cdc-reset-gpio = <&msmgpio 63 0>;
  75. cdc-vdd-buck-supply = <&pm8941_s2>;
  76. qcom,cdc-vdd-buck-voltage = <2150000 2150000>;
  77. qcom,cdc-vdd-buck-current = <500000>;
  78. cdc-vdd-tx-h-supply = <&pm8941_s3>;
  79. qcom,cdc-vdd-tx-h-voltage = <1800000 1800000>;
  80. qcom,cdc-vdd-tx-h-current = <200000>;
  81. cdc-vdd-rx-h-supply = <&pm8941_s3>;
  82. qcom,cdc-vdd-rx-h-voltage = <1800000 1800000>;
  83. qcom,cdc-vdd-rx-h-current = <200000>;
  84. cdc-vddpx-1-supply = <&pm8941_s3>;
  85. qcom,cdc-vddpx-1-voltage = <1800000 1800000>;
  86. qcom,cdc-vddpx-1-current = <5000>;
  87. cdc-vdd-a-1p2v-supply = <&pm8941_l1>;
  88. qcom,cdc-vdd-a-1p2v-voltage = <1225000 1225000>;
  89. qcom,cdc-vdd-a-1p2v-current = <5000>;
  90. cdc-vddcx-1-supply = <&pm8941_l1>;
  91. qcom,cdc-vddcx-1-voltage = <1225000 1225000>;
  92. qcom,cdc-vddcx-1-current = <5000>;
  93. cdc-vddcx-2-supply = <&pm8941_l1>;
  94. qcom,cdc-vddcx-2-voltage = <1225000 1225000>;
  95. qcom,cdc-vddcx-2-current = <5000>;
  96. qcom,cdc-static-supplies = "cdc-vdd-buck",
  97. "cdc-vdd-tx-h",
  98. "cdc-vdd-rx-h",
  99. "cdc-vddpx-1",
  100. "cdc-vdd-a-1p2v",
  101. "cdc-vddcx-1",
  102. "cdc-vddcx-2";
  103. com,cdc-on-demand-supplies = "cdc-vdd-spkdrv";
  104. qcom,cdc-micbias-ldoh-v = <0x3>;
  105. qcom,cdc-micbias-cfilt1-mv = <1800>;
  106. qcom,cdc-micbias-cfilt2-mv = <2700>;
  107. qcom,cdc-micbias-cfilt3-mv = <1800>;
  108. qcom,cdc-micbias1-cfilt-sel = <0x0>;
  109. qcom,cdc-micbias2-cfilt-sel = <0x1>;
  110. qcom,cdc-micbias3-cfilt-sel = <0x2>;
  111. qcom,cdc-micbias4-cfilt-sel = <0x2>;
  112. qcom,cdc-micbias1-ext-cap;
  113. qcom,cdc-micbias2-ext-cap;
  114. qcom,cdc-micbias3-ext-cap;
  115. qcom,cdc-micbias4-ext-cap;
  116. qcom,cdc-mclk-clk-rate = <9600000>;
  117. qcom,cdc-slim-ifd = "taiko-slim-ifd";
  118. qcom,cdc-slim-ifd-elemental-addr = [00 00 A0 00 17 02];
  119. qcom,cdc-dmic-sample-rate = <4800000>;
  120. qcom,cdc-micbias2-headset-only;
  121. };
  122. Wcd9xxx audio CODEC in I2C mode
  123. - compatible = "qcom,wcd9xxx-i2c-device";
  124. - reg: represents the slave address provided to the I2C driver.
  125. - qcom,cdc-reset-gpio: gpio used for codec SOC reset.
  126. - cdc-vdd-buck-supply: phandle of buck supply's regulator device tree node.
  127. - qcom,cdc-vdd-buck-voltage: buck supply's voltage level min and max in mV.
  128. - qcom,cdc-vdd-buck-current: buck supply's max current in mA.
  129. - cdc-vdd-tx-h-supply: phandle of tx-h supply's regulator device tree node.
  130. - qcom,cdc-vdd-tx-h-voltage: tx-h supply's voltage level min and max in mV.
  131. - qcom,cdc-vdd-tx-h-current: tx-h supply's max current in mA.
  132. - cdc-vdd-rx-h-supply: phandle of rx-h supply's regulator device tree node.
  133. - qcom,cdc-vdd-rx-h-voltage: rx-h supply's voltage level min and max in mV.
  134. - qcom,cdc-vdd-rx-h-current: rx-h supply's max current in mA.
  135. - cdc-vddpx-1-supply: phandle of px-1 supply's regulator device tree node.
  136. - qcom,cdc-vddpx-1-voltage: px-1 supply's voltage level min and max in mV.
  137. - qcom,cdc-vddpx-1-current: px-1 supply's max current in mA.
  138. - cdc-vdd-a-1p2v-supply: phandle of 1.2v supply's regulator device tree node.
  139. - qcom,cdc-vdd-a-1p2v-voltage: 1.2v supply's voltage level min and max in mV.
  140. - qcom,cdc-vdd-a-1p2v-current: 1.2v supply's max current in mA.
  141. - cdc-vddcx-1-supply: phandle of cx-1 supply's regulator device tree node.
  142. - qcom,cdc-vddcx-1-voltage: cx-1 supply's voltage level min and max in mV.
  143. - qcom,cdc-vddcx-1-current: cx-1 supply's max current in mA.
  144. - cdc-vddcx-2-supply: phandle of cx-2 supply's regulator device tree node.
  145. - qcom,cdc-vddcx-2-voltage: cx-2 supply's voltage level min and max in mV.
  146. - qcom,cdc-vddcx-2-current: cx-2 supply's max current in mA.
  147. - qcom,cdc-static-supplies: List of supplies to be enabled prior to codec
  148. hardware probe. Supplies in this list will be
  149. stay enabled.
  150. - qcom,cdc-micbias-ldoh-v - LDOH output in volts (should be 1.95 V and 3.00 V).
  151. - qcom,cdc-micbias-cfilt1-mv - cfilt1 output voltage in milli volts.
  152. - qcom,cdc-micbias-cfilt2-mv - cfilt2 output voltage in milli volts.
  153. - qcom,cdc-micbias-cfilt3-mv - cfilt3 output voltage in milli volts.
  154. cfilt voltage can be set to max of qcom,cdc-micbias-ldoh-v - 0.15V.
  155. - qcom,cdc-micbias1-cfilt-sel = cfilt to use for micbias1
  156. (should be from 1 to 3).
  157. - qcom,cdc-micbias2-cfilt-sel = cfilt to use for micbias2
  158. (should be from 1 to 3).
  159. - qcom,cdc-micbias3-cfilt-sel = cfilt to use for micbias3
  160. (should be from 1 to 3).
  161. - qcom,cdc-micbias4-cfilt-sel = cfilt to use for micbias4
  162. (should be from 1 to 3).
  163. This value represents the connected CFLIT to MIC Bias.
  164. - qcom,cdc-micbias1-ext-cap: Boolean. Enable micbias 1 external capacitor mode.
  165. - qcom,cdc-micbias2-ext-cap: Boolean. Enable micbias 2 external capacitor mode.
  166. - qcom,cdc-micbias3-ext-cap: Boolean. Enable micbias 3 external capacitor mode.
  167. - qcom,cdc-micbias4-ext-cap: Boolean. Enable micbias 4 external capacitor mode.
  168. - qcom,cdc-mclk-clk-rate - Specifies the master clock rate in Hz required for
  169. codec.
  170. Optional properties:
  171. - cdc-vdd-spkdrv-supply: phandle of spkdrv supply's regulator device tree node.
  172. - qcom,cdc-vdd-spkdrv-voltage: spkdrv supply voltage level min and max in mV.
  173. - qcom,cdc-vdd-spkdrv-current: spkdrv supply max current in mA.
  174. - cdc-vdd-spkdrv-supply: phandle of spkdrv supply's regulator device tree node.
  175. - qcom,cdc-vdd-spkdrv-voltage: spkdrv supply voltage level min and max in mV.
  176. - qcom,cdc-vdd-spkdrv-current: spkdrv supply max current in mA.
  177. - qcom,cdc-on-demand-supplies: List of supplies which can be enabled
  178. dynamically.
  179. Supplies in this list are off by default.
  180. Example:
  181. i2c@f9925000 {
  182. cell-index = <3>;
  183. compatible = "qcom,i2c-qup";
  184. reg = <0xf9925000 0x1000>;
  185. #address-cells = <1>;
  186. #size-cells = <0>;
  187. reg-names = "qup_phys_addr";
  188. interrupts = <0 97 0>;
  189. interrupt-names = "qup_err_intr";
  190. qcom,i2c-bus-freq = <100000>;
  191. qcom,i2c-src-freq = <24000000>;
  192. wcd9xxx_codec@0d{
  193. compatible = "qcom,wcd9xxx-i2c";
  194. reg = <0x0d>;
  195. qcom,cdc-reset-gpio = <&msmgpio 22 0>;
  196. interrupt-parent = <&wcd9xxx_intc>;
  197. interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
  198. 20 21 22 23 24 25 26 27 28>;
  199. cdc-vdd-buck-supply = <&pm8019_l11>;
  200. qcom,cdc-vdd-buck-voltage = <1800000 1800000>;
  201. qcom,cdc-vdd-buck-current = <25000>;
  202. cdc-vdd-tx-h-supply = <&pm8019_l11>;
  203. qcom,cdc-vdd-tx-h-voltage = <1800000 1800000>;
  204. qcom,cdc-vdd-tx-h-current = <25000>;
  205. cdc-vdd-rx-h-supply = <&pm8019_l11>;
  206. qcom,cdc-vdd-rx-h-voltage = <1800000 1800000>;
  207. qcom,cdc-vdd-rx-h-current = <25000>;
  208. cdc-vddpx-1-supply = <&pm8019_l11>;
  209. qcom,cdc-vddpx-1-voltage = <1800000 1800000>;
  210. qcom,cdc-vddpx-1-current = <10000>;
  211. cdc-vdd-a-1p2v-supply = <&pm8019_l9>;
  212. qcom,cdc-vdd-a-1p2v-voltage = <1200000 1200000>;
  213. qcom,cdc-vdd-a-1p2v-current = <10000>;
  214. cdc-vddcx-1-supply = <&pm8019_l9>;
  215. qcom,cdc-vddcx-1-voltage = <1200000 1200000>;
  216. qcom,cdc-vddcx-1-current = <10000>;
  217. cdc-vddcx-2-supply = <&pm8019_l9>;
  218. qcom,cdc-vddcx-2-voltage = <1200000 1200000>;
  219. qcom,cdc-vddcx-2-current = <10000>;
  220. qcom,cdc-static-supplies = "cdc-vdd-buck",
  221. "cdc-vdd-tx-h",
  222. "cdc-vdd-rx-h",
  223. "cdc-vddpx-1",
  224. "cdc-vdd-a-1p2v",
  225. "cdc-vddcx-1",
  226. "cdc-vddcx-2";
  227. com,cdc-on-demand-supplies = "cdc-vdd-spkdrv";
  228. qcom,cdc-micbias-ldoh-v = <0x3>;
  229. qcom,cdc-micbias-cfilt1-mv = <1800>;
  230. qcom,cdc-micbias-cfilt2-mv = <2700>;
  231. qcom,cdc-micbias-cfilt3-mv = <1800>;
  232. qcom,cdc-micbias1-cfilt-sel = <0x0>;
  233. qcom,cdc-micbias2-cfilt-sel = <0x1>;
  234. qcom,cdc-micbias3-cfilt-sel = <0x2>;
  235. qcom,cdc-micbias4-cfilt-sel = <0x2>;
  236. qcom,cdc-mclk-clk-rate = <12288000>;
  237. };
  238. wcd9xxx_codec@77{
  239. compatible = "qcom,wcd9xxx-i2c";
  240. reg = <0x77>;
  241. };
  242. wcd9xxx_codec@66{
  243. compatible = "qcom,wcd9xxx-i2c";
  244. reg = <0x66>;
  245. };
  246. wcd9xxx_codec@55{
  247. compatible = "qcom,wcd9xxx-i2c";
  248. reg = <0x55>;
  249. };
  250. };