msm8926-camera-sensor-qrd.dtsi 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. /*
  2. * Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License version 2 and
  6. * only version 2 as published by the Free Software Foundation.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. */
  13. &soc {
  14. led_flash0: qcom,camera-led-flash {
  15. cell-index = <0>;
  16. compatible = "qcom,camera-led-flash";
  17. qcom,flash-type = <1>;
  18. qcom,flash-source = <&pm8226_flash0>;
  19. qcom,torch-source = <&pm8226_torch>;
  20. };
  21. };
  22. &cci {
  23. actuator0: qcom,actuator@6e {
  24. cell-index = <5>;
  25. reg = <0x18>;
  26. compatible = "qcom,actuator";
  27. qcom,cci-master = <0>;
  28. };
  29. eeprom2: qcom,eeprom@6b{
  30. cell-index = <2>;
  31. reg = <0x6b>;
  32. qcom,eeprom-name = "ofilm_oty5f03";
  33. compatible = "qcom,eeprom";
  34. qcom,slave-addr = <0x6c>;
  35. qcom,cci-master = <0>;
  36. qcom,num-blocks = <7>;
  37. qcom,page0 = <1 0x0100 2 0x01 1 1>;
  38. qcom,poll0 = <0 0x0 2 0 1 1>;
  39. qcom,mem0 = <0 0x0 2 0 1 0>;
  40. qcom,page1 = <1 0x3d84 2 0xc0 1 1>;
  41. qcom,poll1 = <0 0x0 2 0 1 1>;
  42. qcom,mem1 = <0 0x0 2 0 1 0>;
  43. qcom,page2 = <1 0x3d85 2 0x00 1 1>;
  44. qcom,poll2 = <0 0x0 2 0 1 1>;
  45. qcom,mem2 = <0 0x0 2 0 1 0>;
  46. qcom,page3 = <1 0x3d86 2 0x0f 1 1>;
  47. qcom,pageen3 = <1 0x3d81 2 0x01 1 10>;
  48. qcom,poll3 = <0 0x0 2 0 1 1>;
  49. qcom,mem3 = <16 0x3d00 2 0 1 0>;
  50. qcom,page4 = <1 0x3d84 2 0xc0 1 1>;
  51. qcom,poll4 = <0 0x0 2 0 1 1>;
  52. qcom,mem4 = <0 0x0 2 0 1 0>;
  53. qcom,page5 = <1 0x3d85 2 0x10 1 1>;
  54. qcom,poll5 = <0 0x0 2 0 1 1>;
  55. qcom,mem5 = <0 0x0 2 0 1 0>;
  56. qcom,page6 = <1 0x3d86 2 0x1f 1 1>;
  57. qcom,pageen6 = <1 0x3d81 2 0x01 1 10>;
  58. qcom,poll6 = <0 0x0 2 0 1 1>;
  59. qcom,mem6 = <16 0x3d00 2 0 1 0>;
  60. cam_vio-supply = <&pm8226_lvs1>;
  61. cam_vana-supply = <&pm8226_l19>;
  62. qcom,cam-vreg-name = "cam_vio", "cam_vana";
  63. qcom,cam-vreg-type = <1 0>;
  64. qcom,cam-vreg-min-voltage = <0 2850000>;
  65. qcom,cam-vreg-max-voltage = <0 2850000>;
  66. qcom,cam-vreg-op-mode = <0 80000>;
  67. qcom,gpio-no-mux = <0>;
  68. gpios = <&msmgpio 26 0>,
  69. <&msmgpio 28 0>,
  70. <&msmgpio 35 0>,
  71. <&msmgpio 21 0>;
  72. qcom,gpio-reset = <1>;
  73. qcom,gpio-standby = <2>;
  74. qcom,gpio-vdig = <3>;
  75. qcom,gpio-req-tbl-num = <0 1 2 3>;
  76. qcom,gpio-req-tbl-flags = <1 0 0 0>;
  77. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  78. "CAM_RESET",
  79. "CAM_STANDBY",
  80. "CAM_VDIG";
  81. qcom,cam-power-seq-type = "sensor_vreg",
  82. "sensor_vreg", "sensor_gpio",
  83. "sensor_gpio", "sensor_gpio" , "sensor_clk";
  84. qcom,cam-power-seq-val = "cam_vio", "cam_vana","sensor_gpio_vdig",
  85. "sensor_gpio_reset",
  86. "sensor_gpio_standby","sensor_cam_mclk" ;
  87. qcom,cam-power-seq-cfg-val = <1 1 1 1 1 24000000>;
  88. qcom,cam-power-seq-delay = <1 1 10 10 10 5>;
  89. };
  90. eeprom3: qcom,eeprom@6c {
  91. cell-index = <3>;
  92. reg = <0x6c>;
  93. qcom,eeprom-name = "sunny_q8v18a";
  94. compatible = "qcom,eeprom";
  95. qcom,slave-addr = <0x20>;
  96. qcom,cci-master = <0>;
  97. qcom,num-blocks = <4>;
  98. qcom,page0 = <1 0x0100 2 0x01 1 1>;
  99. qcom,poll0 = <0 0x0 2 0 1 1>;
  100. qcom,mem0 = <0 0x0 2 0 1 0>;
  101. qcom,page1 = <1 0x3d84 2 0xc0 1 1>;
  102. qcom,poll1 = <0 0x0 2 0 1 1>;
  103. qcom,mem1 = <0 0x3d00 2 0 1 0>;
  104. qcom,page2 = <1 0x3d88 2 0x7010 2 1>;
  105. qcom,poll2 = <0 0x0 2 0 1 1>;
  106. qcom,mem2 = <0 0x3d00 2 0 1 0>;
  107. qcom,page3 = <1 0x3d8A 2 0x70F4 2 1>;
  108. qcom,pageen3 = <1 0x3d81 2 0x01 1 10>;
  109. qcom,poll3 = <0 0x0 2 0 1 1>;
  110. qcom,mem3 = <228 0x7010 2 0 1 1>;
  111. cam_vdig-supply = <&pm8226_l5>;
  112. cam_vana-supply = <&pm8226_l19>;
  113. cam_vio-supply = <&pm8226_lvs1>;
  114. qcom,cam-vreg-name = "cam_vdig","cam_vana", "cam_vio";
  115. qcom,cam-vreg-type = <0 1 2>;
  116. qcom,cam-vreg-min-voltage = <1200000 2850000 0>;
  117. qcom,cam-vreg-max-voltage = <1200000 2850000 0>;
  118. qcom,cam-vreg-op-mode = <200000 80000 0>;
  119. qcom,gpio-no-mux = <0>;
  120. gpios = <&msmgpio 26 0>,
  121. <&msmgpio 37 0>,
  122. <&msmgpio 36 0>;
  123. qcom,gpio-reset = <1>;
  124. qcom,gpio-standby = <2>;
  125. qcom,gpio-req-tbl-num = <0 1 2>;
  126. qcom,gpio-req-tbl-flags = <1 0 0>;
  127. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  128. "CAM_RESET1",
  129. "CAM_STANDBY";
  130. qcom,cam-power-seq-type = "sensor_vreg","sensor_vreg",
  131. "sensor_vreg", "sensor_clk",
  132. "sensor_gpio", "sensor_gpio";
  133. qcom,cam-power-seq-val = "cam_vdig","cam_vana",
  134. "cam_vio", "sensor_cam_mclk",
  135. "sensor_gpio_reset",
  136. "sensor_gpio_standby";
  137. qcom,cam-power-seq-cfg-val = <1 1 1 24000000 1 1>;
  138. qcom,cam-power-seq-delay = <1 1 1 5 5 10>;
  139. };
  140. qcom,camera@20 {
  141. compatible = "ovti,ov8865";
  142. reg = <0x20>;
  143. qcom,slave-id = <0x20 0x300b 0x8865>;
  144. qcom,csiphy-sd-index = <0>;
  145. qcom,csid-sd-index = <0>;
  146. qcom,actuator-src = <&actuator0>;
  147. qcom,led-flash-src = <&led_flash0>;
  148. qcom,eeprom-src = <&eeprom3>;
  149. qcom,mount-angle = <90>;
  150. qcom,sensor-name = "ov8865_q8v18a";
  151. cam_vdig-supply = <&pm8226_l5>;
  152. cam_vana-supply = <&pm8226_l19>;
  153. cam_vio-supply = <&pm8226_lvs1>;
  154. cam_vaf-supply = <&pm8226_l15>;
  155. qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
  156. "cam_vaf";
  157. qcom,cam-vreg-type = <0 1 0 0>;
  158. qcom,cam-vreg-min-voltage = <1200000 0 2850000 2800000>;
  159. qcom,cam-vreg-max-voltage = <1200000 0 2850000 2800000>;
  160. qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
  161. qcom,gpio-no-mux = <0>;
  162. gpios = <&msmgpio 26 0>,
  163. <&msmgpio 37 0>,
  164. <&msmgpio 36 0>,
  165. <&msmgpio 15 0>;
  166. qcom,gpio-reset = <1>;
  167. qcom,gpio-standby = <2>;
  168. qcom,gpio-af-pwdm = <3>;
  169. qcom,gpio-req-tbl-num = <0 1 2 3>;
  170. qcom,gpio-req-tbl-flags = <1 0 0 0>;
  171. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  172. "CAM_RESET1",
  173. "CAM_STANDBY",
  174. "CAM_AF_PWDM";
  175. qcom,csi-lane-assign = <0x4320>;
  176. qcom,csi-lane-mask = <0x1F>;
  177. qcom,sensor-position = <0>;
  178. qcom,sensor-mode = <1>;
  179. qcom,cci-master = <0>;
  180. };
  181. qcom,camera@6a {
  182. compatible = "ovti,ov5648";
  183. reg = <0x6a>;
  184. qcom,slave-id = <0x6c 0x300a 0x5648>;
  185. qcom,csiphy-sd-index = <1>;
  186. qcom,csid-sd-index = <1>;
  187. qcom,eeprom-src = <&eeprom2>;
  188. qcom,mount-angle = <270>;
  189. qcom,sensor-name = "ov5648_oty5f03";
  190. cam_vana-supply = <&pm8226_l19>;
  191. cam_vio-supply = <&pm8226_lvs1>;
  192. qcom,cam-vreg-name = "cam_vio", "cam_vana";
  193. qcom,cam-vreg-type = <1 0>;
  194. qcom,cam-vreg-min-voltage = <0 2850000>;
  195. qcom,cam-vreg-max-voltage = <0 2850000>;
  196. qcom,cam-vreg-op-mode = <0 80000>;
  197. qcom,gpio-no-mux = <0>;
  198. gpios = <&msmgpio 26 0>,
  199. <&msmgpio 28 0>,
  200. <&msmgpio 35 0>,
  201. <&msmgpio 23 0>;
  202. qcom,gpio-reset = <1>;
  203. qcom,gpio-standby = <2>;
  204. qcom,gpio-vdig = <3>;
  205. qcom,gpio-req-tbl-num = <0 1 2 3>;
  206. qcom,gpio-req-tbl-flags = <1 0 0 0>;
  207. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  208. "CAM_RESET",
  209. "CAM_STANDBY",
  210. "CAM_VDIG";
  211. qcom,gpio-set-tbl-num = <1 1>;
  212. qcom,gpio-set-tbl-flags = <0 2>;
  213. qcom,gpio-set-tbl-delay = <1000 4000>;
  214. qcom,csi-lane-assign = <0x4320>;
  215. qcom,csi-lane-mask = <0x3>;
  216. qcom,sensor-position = <1>;
  217. qcom,sensor-mode = <1>;
  218. qcom,cci-master = <0>;
  219. status = "ok";
  220. };
  221. qcom,camera@0 {
  222. cell-index = <0>;
  223. compatible = "qcom,camera";
  224. reg = <0x00>;
  225. qcom,csiphy-sd-index = <0>;
  226. qcom,csid-sd-index = <0>;
  227. qcom,actuator-src = <&actuator0>;
  228. qcom,led-flash-src = <&led_flash0>;
  229. qcom,mount-angle = <90>;
  230. cam_vdig-supply = <&pm8226_l5>;
  231. cam_vana-supply = <&pm8226_l19>;
  232. cam_vio-supply = <&pm8226_lvs1>;
  233. cam_vaf-supply = <&pm8226_l15>;
  234. qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
  235. "cam_vaf";
  236. qcom,cam-vreg-type = <0 1 0 0>;
  237. qcom,cam-vreg-min-voltage = <1200000 0 2850000 2800000>;
  238. qcom,cam-vreg-max-voltage = <1200000 0 2850000 2800000>;
  239. qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
  240. qcom,gpio-no-mux = <0>;
  241. gpios = <&msmgpio 26 0>,
  242. <&msmgpio 37 0>,
  243. <&msmgpio 36 0>,
  244. <&msmgpio 15 0>;
  245. qcom,gpio-reset = <1>;
  246. qcom,gpio-standby = <2>;
  247. qcom,gpio-af-pwdm = <3>;
  248. qcom,gpio-req-tbl-num = <0 1 2 3>;
  249. qcom,gpio-req-tbl-flags = <1 0 0 0>;
  250. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  251. "CAM_RESET1",
  252. "CAM_STANDBY",
  253. "CAM_AF_PWDM";
  254. qcom,sensor-position = <0>;
  255. qcom,sensor-mode = <0>;
  256. qcom,cci-master = <0>;
  257. status = "ok";
  258. };
  259. qcom,camera@1 {
  260. cell-index = <1>;
  261. compatible = "qcom,camera";
  262. reg = <0x01>;
  263. qcom,csiphy-sd-index = <1>;
  264. qcom,csid-sd-index = <1>;
  265. qcom,mount-angle = <270>;
  266. cam_vdig-supply = <&pm8226_l5>;
  267. cam_vana-supply = <&pm8226_l19>;
  268. cam_vio-supply = <&pm8226_lvs1>;
  269. qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
  270. qcom,cam-vreg-type = <0 1 0>;
  271. qcom,cam-vreg-min-voltage = <1200000 0 2850000>;
  272. qcom,cam-vreg-max-voltage = <1200000 0 2850000>;
  273. qcom,cam-vreg-op-mode = <200000 0 80000>;
  274. qcom,gpio-no-mux = <0>;
  275. gpios = <&msmgpio 26 0>,
  276. <&msmgpio 28 0>,
  277. <&msmgpio 35 0>,
  278. <&msmgpio 23 0>;
  279. qcom,gpio-reset = <1>;
  280. qcom,gpio-standby = <2>;
  281. qcom,gpio-vdig = <3>;
  282. qcom,gpio-req-tbl-num = <0 1 2 3>;
  283. qcom,gpio-req-tbl-flags = <1 0 0 0>;
  284. qcom,gpio-req-tbl-label = "CAMIF_MCLK",
  285. "CAM_RESET",
  286. "CAM_STANDBY",
  287. "CAM_VDIG";
  288. qcom,sensor-position = <1>;
  289. qcom,sensor-mode = <0>;
  290. qcom,cci-master = <0>;
  291. status = "ok";
  292. };
  293. };