exynos4412-midas.dtsi 33 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Samsung's Exynos4412 based Trats 2 board device tree source
  4. *
  5. * Copyright (c) 2013 Samsung Electronics Co., Ltd.
  6. * http://www.samsung.com
  7. *
  8. * Device tree source file for Samsung's Trats 2 board which is based on
  9. * Samsung's Exynos4412 SoC.
  10. */
  11. /dts-v1/;
  12. #include "exynos4412.dtsi"
  13. #include "exynos4412-ppmu-common.dtsi"
  14. #include <dt-bindings/gpio/gpio.h>
  15. #include <dt-bindings/input/input.h>
  16. #include <dt-bindings/interrupt-controller/irq.h>
  17. #include <dt-bindings/clock/maxim,max77686.h>
  18. #include "exynos-pinctrl.h"
  19. / {
  20. compatible = "samsung,midas", "samsung,exynos4412", "samsung,exynos4";
  21. aliases {
  22. i2c11 = &i2c_max77693;
  23. i2c12 = &i2c_max77693_fuel;
  24. };
  25. chosen {
  26. stdout-path = &serial_2;
  27. };
  28. firmware@204f000 {
  29. compatible = "samsung,secure-firmware";
  30. reg = <0x0204F000 0x1000>;
  31. };
  32. fixed-rate-clocks {
  33. xxti {
  34. compatible = "samsung,clock-xxti";
  35. clock-frequency = <0>;
  36. };
  37. xusbxti {
  38. compatible = "samsung,clock-xusbxti";
  39. clock-frequency = <24000000>;
  40. };
  41. };
  42. cam_io_reg: voltage-regulator-1 {
  43. compatible = "regulator-fixed";
  44. regulator-name = "CAM_SENSOR_A";
  45. regulator-min-microvolt = <2800000>;
  46. regulator-max-microvolt = <2800000>;
  47. enable-active-high;
  48. status = "disabled";
  49. };
  50. cam_af_reg: voltage-regulator-2 {
  51. compatible = "regulator-fixed";
  52. regulator-name = "CAM_AF";
  53. regulator-min-microvolt = <2800000>;
  54. regulator-max-microvolt = <2800000>;
  55. enable-active-high;
  56. status = "disabled";
  57. };
  58. vsil12: voltage-regulator-3 {
  59. compatible = "regulator-fixed";
  60. regulator-name = "VSIL_1.2V";
  61. regulator-min-microvolt = <1200000>;
  62. regulator-max-microvolt = <1200000>;
  63. gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
  64. enable-active-high;
  65. vin-supply = <&buck7_reg>;
  66. };
  67. vcc33mhl: voltage-regulator-4 {
  68. compatible = "regulator-fixed";
  69. regulator-name = "VCC_3.3_MHL";
  70. regulator-min-microvolt = <3300000>;
  71. regulator-max-microvolt = <3300000>;
  72. gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
  73. enable-active-high;
  74. };
  75. vcc18mhl: voltage-regulator-5 {
  76. compatible = "regulator-fixed";
  77. regulator-name = "VCC_1.8_MHL";
  78. regulator-min-microvolt = <1800000>;
  79. regulator-max-microvolt = <1800000>;
  80. gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
  81. enable-active-high;
  82. };
  83. touchkey_reg: voltage-regulator-6 {
  84. compatible = "regulator-fixed";
  85. regulator-name = "LED_VDD_3.3V";
  86. regulator-min-microvolt = <3300000>;
  87. regulator-max-microvolt = <3300000>;
  88. enable-active-high;
  89. status = "disabled";
  90. };
  91. vbatt_reg: voltage-regulator-7 {
  92. compatible = "regulator-fixed";
  93. regulator-name = "VBATT";
  94. regulator-min-microvolt = <5000000>;
  95. regulator-max-microvolt = <5000000>;
  96. regulator-always-on;
  97. };
  98. mic_bias_reg: voltage-regulator-8 {
  99. compatible = "regulator-fixed";
  100. regulator-name = "MICBIAS_LDO_2.8V";
  101. regulator-min-microvolt = <2800000>;
  102. regulator-max-microvolt = <2800000>;
  103. gpio = <&gpf1 7 GPIO_ACTIVE_HIGH>;
  104. enable-active-high;
  105. };
  106. submic_bias_reg: voltage-regulator-9 {
  107. compatible = "regulator-fixed";
  108. regulator-name = "SUB_MICBIAS_LDO_2.8V";
  109. regulator-min-microvolt = <2800000>;
  110. regulator-max-microvolt = <2800000>;
  111. };
  112. gpio-keys {
  113. compatible = "gpio-keys";
  114. pinctrl-names = "default";
  115. pinctrl-0 = <&gpio_keys>;
  116. key-down {
  117. gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
  118. linux,code = <114>;
  119. label = "volume down";
  120. debounce-interval = <10>;
  121. };
  122. key-up {
  123. gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
  124. linux,code = <115>;
  125. label = "volume up";
  126. debounce-interval = <10>;
  127. };
  128. key-power {
  129. gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
  130. linux,code = <116>;
  131. label = "power";
  132. debounce-interval = <10>;
  133. wakeup-source;
  134. };
  135. key-ok {
  136. gpios = <&gpx0 1 GPIO_ACTIVE_LOW>;
  137. linux,code = <139>;
  138. label = "ok";
  139. debounce-interval = <10>;
  140. wakeup-source;
  141. };
  142. };
  143. i2c_max77693: i2c-gpio-1 {
  144. compatible = "i2c-gpio";
  145. sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  146. scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  147. i2c-gpio,delay-us = <2>;
  148. #address-cells = <1>;
  149. #size-cells = <0>;
  150. pmic@66 {
  151. compatible = "maxim,max77693";
  152. interrupt-parent = <&gpx1>;
  153. interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
  154. pinctrl-names = "default";
  155. pinctrl-0 = <&max77693_irq>;
  156. reg = <0x66>;
  157. regulators {
  158. esafeout1_reg: ESAFEOUT1 {
  159. regulator-name = "ESAFEOUT1";
  160. };
  161. esafeout2_reg: ESAFEOUT2 {
  162. regulator-name = "ESAFEOUT2";
  163. };
  164. charger_reg: CHARGER {
  165. regulator-name = "CHARGER";
  166. regulator-min-microamp = <60000>;
  167. regulator-max-microamp = <2580000>;
  168. };
  169. };
  170. motor-driver {
  171. compatible = "maxim,max77693-haptic";
  172. haptic-supply = <&ldo26_reg>;
  173. pwms = <&pwm 0 38022 0>;
  174. };
  175. charger {
  176. compatible = "maxim,max77693-charger";
  177. maxim,constant-microvolt = <4350000>;
  178. maxim,min-system-microvolt = <3600000>;
  179. maxim,thermal-regulation-celsius = <100>;
  180. maxim,battery-overcurrent-microamp = <3500000>;
  181. maxim,charge-input-threshold-microvolt = <4300000>;
  182. };
  183. };
  184. };
  185. i2c_max77693_fuel: i2c-gpio-3 {
  186. compatible = "i2c-gpio";
  187. sda-gpios = <&gpf1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  188. scl-gpios = <&gpf1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  189. i2c-gpio,delay-us = <2>;
  190. #address-cells = <1>;
  191. #size-cells = <0>;
  192. fuel-gauge@36 {
  193. compatible = "maxim,max17047";
  194. interrupt-parent = <&gpx2>;
  195. interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
  196. pinctrl-names = "default";
  197. pinctrl-0 = <&max77693_fuel_irq>;
  198. reg = <0x36>;
  199. maxim,over-heat-temp = <700>;
  200. maxim,over-volt = <4500>;
  201. };
  202. };
  203. i2c-gpio-4 {
  204. compatible = "i2c-gpio";
  205. sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  206. scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  207. i2c-gpio,delay-us = <2>;
  208. #address-cells = <1>;
  209. #size-cells = <0>;
  210. touchkey@20 {
  211. compatible = "cypress,midas-touchkey";
  212. reg = <0x20>;
  213. vdd-supply = <&touchkey_reg>;
  214. vcc-supply = <&ldo5_reg>;
  215. interrupt-parent = <&gpj0>;
  216. interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
  217. linux,keycodes = <KEY_BACK KEY_MENU>;
  218. };
  219. };
  220. i2c-mhl {
  221. compatible = "i2c-gpio";
  222. sda-gpios = <&gpf0 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  223. scl-gpios = <&gpf0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
  224. i2c-gpio,delay-us = <100>;
  225. #address-cells = <1>;
  226. #size-cells = <0>;
  227. pinctrl-0 = <&i2c_mhl_bus>;
  228. pinctrl-names = "default";
  229. sii9234: hdmi-bridge@39 {
  230. compatible = "sil,sii9234";
  231. avcc33-supply = <&vcc33mhl>;
  232. iovcc18-supply = <&vcc18mhl>;
  233. avcc12-supply = <&vsil12>;
  234. cvcc12-supply = <&vsil12>;
  235. reset-gpios = <&gpf3 4 GPIO_ACTIVE_LOW>;
  236. interrupt-parent = <&gpf3>;
  237. interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
  238. reg = <0x39>;
  239. port {
  240. mhl_to_hdmi: endpoint {
  241. remote-endpoint = <&hdmi_to_mhl>;
  242. };
  243. };
  244. };
  245. };
  246. wlan_pwrseq: sdhci3-pwrseq {
  247. compatible = "mmc-pwrseq-simple";
  248. reset-gpios = <&gpj0 0 GPIO_ACTIVE_LOW>;
  249. clocks = <&max77686 MAX77686_CLK_PMIC>;
  250. clock-names = "ext_clock";
  251. };
  252. sound: sound {
  253. compatible = "samsung,midas-audio";
  254. model = "Midas";
  255. mic-bias-supply = <&mic_bias_reg>;
  256. submic-bias-supply = <&submic_bias_reg>;
  257. cpu {
  258. sound-dai = <&i2s0 0>;
  259. };
  260. codec {
  261. sound-dai = <&wm1811>;
  262. };
  263. };
  264. thermistor-ap {
  265. compatible = "murata,ncp15wb473";
  266. pullup-uv = <1800000>; /* VCC_1.8V_AP */
  267. pullup-ohm = <100000>; /* 100K */
  268. pulldown-ohm = <100000>; /* 100K */
  269. io-channels = <&adc 1>; /* AP temperature */
  270. };
  271. thermistor-battery {
  272. compatible = "murata,ncp15wb473";
  273. pullup-uv = <1800000>; /* VCC_1.8V_AP */
  274. pullup-ohm = <100000>; /* 100K */
  275. pulldown-ohm = <100000>; /* 100K */
  276. io-channels = <&adc 2>; /* Battery temperature */
  277. };
  278. };
  279. &adc {
  280. vdd-supply = <&ldo3_reg>;
  281. status = "okay";
  282. };
  283. &bus_dmc {
  284. devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
  285. vdd-supply = <&buck1_reg>;
  286. status = "okay";
  287. };
  288. &bus_acp {
  289. devfreq = <&bus_dmc>;
  290. status = "okay";
  291. };
  292. &bus_c2c {
  293. devfreq = <&bus_dmc>;
  294. status = "okay";
  295. };
  296. &bus_leftbus {
  297. devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
  298. vdd-supply = <&buck3_reg>;
  299. status = "okay";
  300. };
  301. &bus_rightbus {
  302. devfreq = <&bus_leftbus>;
  303. status = "okay";
  304. };
  305. &bus_display {
  306. devfreq = <&bus_leftbus>;
  307. status = "okay";
  308. };
  309. &bus_fsys {
  310. devfreq = <&bus_leftbus>;
  311. status = "okay";
  312. };
  313. &bus_peri {
  314. devfreq = <&bus_leftbus>;
  315. status = "okay";
  316. };
  317. &bus_mfc {
  318. devfreq = <&bus_leftbus>;
  319. status = "okay";
  320. };
  321. &camera {
  322. pinctrl-0 = <&cam_port_a_clk_active &cam_port_b_clk_active>;
  323. pinctrl-names = "default";
  324. status = "okay";
  325. assigned-clocks = <&clock CLK_MOUT_CAM0>,
  326. <&clock CLK_MOUT_CAM1>;
  327. assigned-clock-parents = <&clock CLK_XUSBXTI>,
  328. <&clock CLK_XUSBXTI>;
  329. };
  330. &cpu0 {
  331. cpu0-supply = <&buck2_reg>;
  332. };
  333. &cpu_thermal {
  334. cooling-maps {
  335. map0 {
  336. /* Corresponds to 800MHz at freq_table */
  337. cooling-device = <&cpu0 7 7>, <&cpu1 7 7>,
  338. <&cpu2 7 7>, <&cpu3 7 7>;
  339. };
  340. map1 {
  341. /* Corresponds to 200MHz at freq_table */
  342. cooling-device = <&cpu0 13 13>, <&cpu1 13 13>,
  343. <&cpu2 13 13>, <&cpu3 13 13>;
  344. };
  345. };
  346. };
  347. &csis_0 {
  348. status = "okay";
  349. vddcore-supply = <&ldo8_reg>;
  350. vddio-supply = <&ldo10_reg>;
  351. assigned-clocks = <&clock CLK_MOUT_CSIS0>,
  352. <&clock CLK_SCLK_CSIS0>;
  353. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  354. assigned-clock-rates = <0>, <176000000>;
  355. /* Camera C (3) MIPI CSI-2 (CSIS0) */
  356. port@3 {
  357. reg = <3>;
  358. csis0_ep: endpoint {
  359. remote-endpoint = <&s5c73m3_ep>;
  360. data-lanes = <1 2 3 4>;
  361. samsung,csis-hs-settle = <12>;
  362. };
  363. };
  364. };
  365. &csis_1 {
  366. status = "okay";
  367. vddcore-supply = <&ldo8_reg>;
  368. vddio-supply = <&ldo10_reg>;
  369. assigned-clocks = <&clock CLK_MOUT_CSIS1>,
  370. <&clock CLK_SCLK_CSIS1>;
  371. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  372. assigned-clock-rates = <0>, <176000000>;
  373. /* Camera D (4) MIPI CSI-2 (CSIS1) */
  374. port@4 {
  375. reg = <4>;
  376. csis1_ep: endpoint {
  377. remote-endpoint = <&is_s5k6a3_ep>;
  378. data-lanes = <1>;
  379. samsung,csis-hs-settle = <18>;
  380. samsung,csis-wclk;
  381. };
  382. };
  383. };
  384. &dsi_0 {
  385. vddcore-supply = <&ldo8_reg>;
  386. vddio-supply = <&ldo10_reg>;
  387. samsung,burst-clock-frequency = <500000000>;
  388. samsung,esc-clock-frequency = <20000000>;
  389. samsung,pll-clock-frequency = <24000000>;
  390. };
  391. &exynos_usbphy {
  392. vbus-supply = <&esafeout1_reg>;
  393. status = "okay";
  394. };
  395. &fimc_0 {
  396. status = "okay";
  397. assigned-clocks = <&clock CLK_MOUT_FIMC0>,
  398. <&clock CLK_SCLK_FIMC0>;
  399. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  400. assigned-clock-rates = <0>, <176000000>;
  401. };
  402. &fimc_1 {
  403. status = "okay";
  404. assigned-clocks = <&clock CLK_MOUT_FIMC1>,
  405. <&clock CLK_SCLK_FIMC1>;
  406. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  407. assigned-clock-rates = <0>, <176000000>;
  408. };
  409. &fimc_2 {
  410. status = "okay";
  411. assigned-clocks = <&clock CLK_MOUT_FIMC2>,
  412. <&clock CLK_SCLK_FIMC2>;
  413. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  414. assigned-clock-rates = <0>, <176000000>;
  415. };
  416. &fimc_3 {
  417. status = "okay";
  418. assigned-clocks = <&clock CLK_MOUT_FIMC3>,
  419. <&clock CLK_SCLK_FIMC3>;
  420. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  421. assigned-clock-rates = <0>, <176000000>;
  422. };
  423. &fimc_is {
  424. pinctrl-0 = <&fimc_is_uart>;
  425. pinctrl-names = "default";
  426. status = "okay";
  427. };
  428. &fimc_lite_0 {
  429. status = "okay";
  430. };
  431. &fimc_lite_1 {
  432. status = "okay";
  433. };
  434. &fimd {
  435. status = "okay";
  436. };
  437. &gpu {
  438. mali-supply = <&buck4_reg>;
  439. status = "okay";
  440. };
  441. &hdmi {
  442. hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
  443. pinctrl-names = "default";
  444. pinctrl-0 = <&hdmi_hpd>;
  445. vdd-supply = <&ldo3_reg>;
  446. vdd_osc-supply = <&ldo4_reg>;
  447. vdd_pll-supply = <&ldo3_reg>;
  448. ddc = <&i2c_5>;
  449. status = "okay";
  450. ports {
  451. #address-cells = <1>;
  452. #size-cells = <0>;
  453. port@1 {
  454. reg = <1>;
  455. hdmi_to_mhl: endpoint {
  456. remote-endpoint = <&mhl_to_hdmi>;
  457. };
  458. };
  459. };
  460. };
  461. &hsotg {
  462. vusb_d-supply = <&ldo15_reg>;
  463. vusb_a-supply = <&ldo12_reg>;
  464. dr_mode = "peripheral";
  465. status = "okay";
  466. };
  467. &i2c_0 {
  468. samsung,i2c-sda-delay = <100>;
  469. samsung,i2c-slave-addr = <0x10>;
  470. samsung,i2c-max-bus-freq = <400000>;
  471. pinctrl-0 = <&i2c0_bus>;
  472. pinctrl-names = "default";
  473. status = "okay";
  474. s5c73m3: image-sensor@3c {
  475. compatible = "samsung,s5c73m3";
  476. reg = <0x3c>;
  477. xshutdown-gpios = <&gpf1 3 GPIO_ACTIVE_LOW>; /* ISP_RESET */
  478. vdd-int-supply = <&buck9_reg>;
  479. vddio-cis-supply = <&ldo9_reg>;
  480. vddio-host-supply = <&ldo18_reg>;
  481. vdd-af-supply = <&cam_af_reg>;
  482. vdd-reg-supply = <&cam_io_reg>;
  483. clock-frequency = <24000000>;
  484. /* CAM_A_CLKOUT */
  485. clocks = <&camera 0>;
  486. clock-names = "cis_extclk";
  487. status = "disabled";
  488. port {
  489. s5c73m3_ep: endpoint {
  490. remote-endpoint = <&csis0_ep>;
  491. data-lanes = <1 2 3 4>;
  492. };
  493. };
  494. };
  495. };
  496. &i2c1_isp {
  497. pinctrl-0 = <&fimc_is_i2c1>;
  498. pinctrl-names = "default";
  499. image-sensor@10 {
  500. compatible = "samsung,s5k6a3";
  501. reg = <0x10>;
  502. svdda-supply = <&cam_io_reg>;
  503. svddio-supply = <&ldo19_reg>;
  504. afvdd-supply = <&ldo19_reg>;
  505. clock-frequency = <24000000>;
  506. /* CAM_B_CLKOUT */
  507. clocks = <&camera 1>;
  508. clock-names = "extclk";
  509. samsung,camclk-out = <1>;
  510. gpios = <&gpm1 6 GPIO_ACTIVE_LOW>;
  511. port {
  512. is_s5k6a3_ep: endpoint {
  513. remote-endpoint = <&csis1_ep>;
  514. data-lanes = <1>;
  515. };
  516. };
  517. };
  518. };
  519. &i2c_3 {
  520. samsung,i2c-sda-delay = <100>;
  521. samsung,i2c-slave-addr = <0x10>;
  522. samsung,i2c-max-bus-freq = <400000>;
  523. pinctrl-0 = <&i2c3_bus>;
  524. pinctrl-names = "default";
  525. status = "okay";
  526. };
  527. &i2c_4 {
  528. samsung,i2c-sda-delay = <100>;
  529. samsung,i2c-slave-addr = <0x10>;
  530. samsung,i2c-max-bus-freq = <100000>;
  531. pinctrl-0 = <&i2c4_bus>;
  532. pinctrl-names = "default";
  533. status = "okay";
  534. wm1811: audio-codec@1a {
  535. compatible = "wlf,wm1811";
  536. reg = <0x1a>;
  537. clocks = <&pmu_system_controller 0>,
  538. <&max77686 MAX77686_CLK_PMIC>;
  539. clock-names = "MCLK1", "MCLK2";
  540. interrupt-controller;
  541. #interrupt-cells = <2>;
  542. interrupt-parent = <&gpx3>;
  543. interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
  544. gpio-controller;
  545. #gpio-cells = <2>;
  546. #sound-dai-cells = <0>;
  547. wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
  548. 0x0 0x8000 0x0 0x0 0x0>;
  549. wlf,micbias-cfg = <0x2f 0x2b>;
  550. wlf,lineout1-feedback;
  551. wlf,lineout1-se;
  552. wlf,lineout2-se;
  553. wlf,ldoena-always-driven;
  554. AVDD2-supply = <&vbatt_reg>;
  555. DBVDD1-supply = <&ldo3_reg>;
  556. DBVDD2-supply = <&vbatt_reg>;
  557. DBVDD3-supply = <&vbatt_reg>;
  558. DCVDD-supply = <&ldo3_reg>;
  559. CPVDD-supply = <&vbatt_reg>;
  560. SPKVDD1-supply = <&vbatt_reg>;
  561. SPKVDD2-supply = <&vbatt_reg>;
  562. wlf,ldo1ena = <&gpj0 4 0>;
  563. wlf,ldo2ena = <&gpj0 4 0>;
  564. };
  565. };
  566. &i2c_5 {
  567. status = "okay";
  568. };
  569. &i2c_7 {
  570. samsung,i2c-sda-delay = <100>;
  571. samsung,i2c-slave-addr = <0x10>;
  572. samsung,i2c-max-bus-freq = <100000>;
  573. pinctrl-0 = <&i2c7_bus>;
  574. pinctrl-names = "default";
  575. status = "okay";
  576. max77686: pmic@9 {
  577. compatible = "maxim,max77686";
  578. interrupt-parent = <&gpx0>;
  579. interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
  580. pinctrl-0 = <&max77686_irq>;
  581. pinctrl-names = "default";
  582. wakeup-source;
  583. reg = <0x09>;
  584. #clock-cells = <1>;
  585. voltage-regulators {
  586. ldo1_reg: LDO1 {
  587. regulator-name = "VALIVE_1.0V_AP";
  588. regulator-min-microvolt = <1000000>;
  589. regulator-max-microvolt = <1000000>;
  590. regulator-always-on;
  591. };
  592. ldo2_reg: LDO2 {
  593. regulator-name = "VM1M2_1.2V_AP";
  594. regulator-min-microvolt = <1200000>;
  595. regulator-max-microvolt = <1200000>;
  596. regulator-always-on;
  597. regulator-state-mem {
  598. regulator-on-in-suspend;
  599. };
  600. };
  601. ldo3_reg: LDO3 {
  602. regulator-name = "VCC_1.8V_AP";
  603. regulator-min-microvolt = <1800000>;
  604. regulator-max-microvolt = <1800000>;
  605. regulator-always-on;
  606. };
  607. ldo4_reg: LDO4 {
  608. regulator-name = "VCC_2.8V_AP";
  609. regulator-min-microvolt = <2800000>;
  610. regulator-max-microvolt = <2800000>;
  611. regulator-always-on;
  612. };
  613. ldo5_reg: LDO5 {
  614. regulator-name = "VCC_1.8V_IO";
  615. regulator-min-microvolt = <1800000>;
  616. regulator-max-microvolt = <1800000>;
  617. regulator-always-on;
  618. };
  619. ldo6_reg: LDO6 {
  620. regulator-name = "VMPLL_1.0V_AP";
  621. regulator-min-microvolt = <1000000>;
  622. regulator-max-microvolt = <1000000>;
  623. regulator-always-on;
  624. regulator-state-mem {
  625. regulator-on-in-suspend;
  626. };
  627. };
  628. ldo7_reg: LDO7 {
  629. regulator-name = "VPLL_1.0V_AP";
  630. regulator-min-microvolt = <1000000>;
  631. regulator-max-microvolt = <1000000>;
  632. regulator-always-on;
  633. regulator-state-mem {
  634. regulator-on-in-suspend;
  635. };
  636. };
  637. ldo8_reg: LDO8 {
  638. regulator-name = "VMIPI_1.0V";
  639. regulator-min-microvolt = <1000000>;
  640. regulator-max-microvolt = <1000000>;
  641. regulator-state-mem {
  642. regulator-off-in-suspend;
  643. };
  644. };
  645. ldo9_reg: LDO9 {
  646. regulator-name = "CAM_ISP_MIPI_1.2V";
  647. regulator-min-microvolt = <1200000>;
  648. regulator-max-microvolt = <1200000>;
  649. };
  650. ldo10_reg: LDO10 {
  651. regulator-name = "VMIPI_1.8V";
  652. regulator-min-microvolt = <1800000>;
  653. regulator-max-microvolt = <1800000>;
  654. regulator-state-mem {
  655. regulator-off-in-suspend;
  656. };
  657. };
  658. ldo11_reg: LDO11 {
  659. regulator-name = "VABB1_1.95V";
  660. regulator-min-microvolt = <1950000>;
  661. regulator-max-microvolt = <1950000>;
  662. regulator-always-on;
  663. regulator-state-mem {
  664. regulator-off-in-suspend;
  665. };
  666. };
  667. ldo12_reg: LDO12 {
  668. regulator-name = "VUOTG_3.0V";
  669. regulator-min-microvolt = <3000000>;
  670. regulator-max-microvolt = <3000000>;
  671. regulator-state-mem {
  672. regulator-off-in-suspend;
  673. };
  674. };
  675. ldo13_reg: LDO13 {
  676. regulator-name = "NFC_AVDD_1.8V";
  677. regulator-min-microvolt = <1800000>;
  678. regulator-max-microvolt = <1800000>;
  679. };
  680. ldo14_reg: LDO14 {
  681. regulator-name = "VABB2_1.95V";
  682. regulator-min-microvolt = <1950000>;
  683. regulator-max-microvolt = <1950000>;
  684. regulator-always-on;
  685. regulator-state-mem {
  686. regulator-off-in-suspend;
  687. };
  688. };
  689. ldo15_reg: LDO15 {
  690. regulator-name = "VHSIC_1.0V";
  691. regulator-min-microvolt = <1000000>;
  692. regulator-max-microvolt = <1000000>;
  693. regulator-state-mem {
  694. regulator-on-in-suspend;
  695. };
  696. };
  697. ldo16_reg: LDO16 {
  698. regulator-name = "VHSIC_1.8V";
  699. regulator-min-microvolt = <1800000>;
  700. regulator-max-microvolt = <1800000>;
  701. regulator-state-mem {
  702. regulator-on-in-suspend;
  703. };
  704. };
  705. ldo17_reg: LDO17 {
  706. regulator-name = "CAM_SENSOR_CORE_1.2V";
  707. regulator-min-microvolt = <1200000>;
  708. regulator-max-microvolt = <1200000>;
  709. };
  710. ldo18_reg: LDO18 {
  711. regulator-name = "CAM_ISP_SEN_IO_1.8V";
  712. regulator-min-microvolt = <1800000>;
  713. regulator-max-microvolt = <1800000>;
  714. };
  715. ldo19_reg: LDO19 {
  716. regulator-name = "VT_CAM_1.8V";
  717. regulator-min-microvolt = <1800000>;
  718. regulator-max-microvolt = <1800000>;
  719. };
  720. ldo20_reg: LDO20 {
  721. regulator-name = "VDDQ_PRE_1.8V";
  722. regulator-min-microvolt = <1800000>;
  723. regulator-max-microvolt = <1800000>;
  724. };
  725. ldo21_reg: LDO21 {
  726. regulator-name = "VTF_2.8V";
  727. regulator-min-microvolt = <2800000>;
  728. regulator-max-microvolt = <2800000>;
  729. maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>;
  730. };
  731. ldo22_reg: LDO22 {
  732. regulator-name = "VMEM_VDD_2.8V";
  733. regulator-min-microvolt = <2800000>;
  734. regulator-max-microvolt = <2800000>;
  735. maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
  736. };
  737. ldo23_reg: LDO23 {
  738. regulator-name = "TSP_AVDD_3.3V";
  739. regulator-min-microvolt = <3300000>;
  740. regulator-max-microvolt = <3300000>;
  741. };
  742. ldo24_reg: LDO24 {
  743. regulator-name = "TSP_VDD_1.8V";
  744. regulator-min-microvolt = <1800000>;
  745. regulator-max-microvolt = <1800000>;
  746. };
  747. ldo25_reg: LDO25 {
  748. regulator-name = "LDO25";
  749. };
  750. ldo26_reg: LDO26 {
  751. regulator-name = "MOTOR_VCC_3.0V";
  752. regulator-min-microvolt = <3000000>;
  753. regulator-max-microvolt = <3000000>;
  754. };
  755. buck1_reg: BUCK1 {
  756. regulator-name = "VDD_MIF";
  757. regulator-min-microvolt = <850000>;
  758. regulator-max-microvolt = <1100000>;
  759. regulator-always-on;
  760. regulator-boot-on;
  761. regulator-state-mem {
  762. regulator-off-in-suspend;
  763. };
  764. };
  765. buck2_reg: BUCK2 {
  766. regulator-name = "VDD_ARM";
  767. regulator-min-microvolt = <850000>;
  768. regulator-max-microvolt = <1500000>;
  769. regulator-always-on;
  770. regulator-boot-on;
  771. regulator-state-mem {
  772. regulator-on-in-suspend;
  773. };
  774. };
  775. buck3_reg: BUCK3 {
  776. regulator-name = "VDD_INT";
  777. regulator-min-microvolt = <850000>;
  778. regulator-max-microvolt = <1150000>;
  779. regulator-always-on;
  780. regulator-boot-on;
  781. regulator-state-mem {
  782. regulator-off-in-suspend;
  783. };
  784. };
  785. buck4_reg: BUCK4 {
  786. regulator-name = "VDD_G3D";
  787. regulator-min-microvolt = <850000>;
  788. regulator-max-microvolt = <1150000>;
  789. regulator-boot-on;
  790. regulator-state-mem {
  791. regulator-off-in-suspend;
  792. };
  793. };
  794. buck5_reg: BUCK5 {
  795. regulator-name = "VMEM_1.2V_AP";
  796. regulator-min-microvolt = <1200000>;
  797. regulator-max-microvolt = <1200000>;
  798. regulator-always-on;
  799. };
  800. buck6_reg: BUCK6 {
  801. regulator-name = "VCC_SUB_1.35V";
  802. regulator-min-microvolt = <1350000>;
  803. regulator-max-microvolt = <1350000>;
  804. regulator-always-on;
  805. };
  806. buck7_reg: BUCK7 {
  807. regulator-name = "VCC_SUB_2.0V";
  808. regulator-min-microvolt = <2000000>;
  809. regulator-max-microvolt = <2000000>;
  810. regulator-always-on;
  811. };
  812. buck8_reg: BUCK8 {
  813. regulator-name = "VMEM_VDDF_3.0V";
  814. regulator-min-microvolt = <2850000>;
  815. regulator-max-microvolt = <2850000>;
  816. maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
  817. };
  818. buck9_reg: BUCK9 {
  819. regulator-name = "CAM_ISP_CORE_1.2V";
  820. regulator-min-microvolt = <1000000>;
  821. regulator-max-microvolt = <1200000>;
  822. };
  823. };
  824. };
  825. };
  826. &i2c_8 {
  827. status = "okay";
  828. };
  829. &i2s0 {
  830. pinctrl-0 = <&i2s0_bus>;
  831. pinctrl-names = "default";
  832. status = "okay";
  833. };
  834. &mixer {
  835. status = "okay";
  836. };
  837. &mshc_0 {
  838. broken-cd;
  839. non-removable;
  840. card-detect-delay = <200>;
  841. vmmc-supply = <&ldo22_reg>;
  842. clock-frequency = <400000000>;
  843. samsung,dw-mshc-ciu-div = <0>;
  844. samsung,dw-mshc-sdr-timing = <2 3>;
  845. samsung,dw-mshc-ddr-timing = <1 2>;
  846. pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
  847. pinctrl-names = "default";
  848. status = "okay";
  849. bus-width = <8>;
  850. cap-mmc-highspeed;
  851. };
  852. &pmu_system_controller {
  853. assigned-clocks = <&pmu_system_controller 0>;
  854. assigned-clock-parents = <&clock CLK_XUSBXTI>;
  855. };
  856. &pinctrl_0 {
  857. pinctrl-names = "default";
  858. pinctrl-0 = <&sleep0>;
  859. mhl_int: mhl-int-pins {
  860. samsung,pins = "gpf3-5";
  861. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  862. };
  863. i2c_mhl_bus: i2c-mhl-bus-pins {
  864. samsung,pins = "gpf0-4", "gpf0-6";
  865. samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
  866. samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
  867. samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
  868. };
  869. sleep0: sleep-state {
  870. PIN_SLP(gpa0-0, INPUT, NONE);
  871. PIN_SLP(gpa0-1, OUT0, NONE);
  872. PIN_SLP(gpa0-2, INPUT, NONE);
  873. PIN_SLP(gpa0-3, INPUT, UP);
  874. PIN_SLP(gpa0-4, INPUT, NONE);
  875. PIN_SLP(gpa0-5, INPUT, DOWN);
  876. PIN_SLP(gpa0-6, INPUT, DOWN);
  877. PIN_SLP(gpa0-7, INPUT, UP);
  878. PIN_SLP(gpa1-0, INPUT, DOWN);
  879. PIN_SLP(gpa1-1, INPUT, DOWN);
  880. PIN_SLP(gpa1-2, INPUT, DOWN);
  881. PIN_SLP(gpa1-3, INPUT, DOWN);
  882. PIN_SLP(gpa1-4, INPUT, DOWN);
  883. PIN_SLP(gpa1-5, INPUT, DOWN);
  884. PIN_SLP(gpb-0, INPUT, NONE);
  885. PIN_SLP(gpb-1, INPUT, NONE);
  886. PIN_SLP(gpb-2, INPUT, NONE);
  887. PIN_SLP(gpb-3, INPUT, NONE);
  888. PIN_SLP(gpb-4, INPUT, DOWN);
  889. PIN_SLP(gpb-5, INPUT, UP);
  890. PIN_SLP(gpb-6, INPUT, DOWN);
  891. PIN_SLP(gpb-7, INPUT, DOWN);
  892. PIN_SLP(gpc0-0, INPUT, DOWN);
  893. PIN_SLP(gpc0-1, INPUT, DOWN);
  894. PIN_SLP(gpc0-2, INPUT, DOWN);
  895. PIN_SLP(gpc0-3, INPUT, DOWN);
  896. PIN_SLP(gpc0-4, INPUT, DOWN);
  897. PIN_SLP(gpc1-0, INPUT, NONE);
  898. PIN_SLP(gpc1-1, PREV, NONE);
  899. PIN_SLP(gpc1-2, INPUT, NONE);
  900. PIN_SLP(gpc1-3, INPUT, NONE);
  901. PIN_SLP(gpc1-4, INPUT, NONE);
  902. PIN_SLP(gpd0-0, INPUT, DOWN);
  903. PIN_SLP(gpd0-1, INPUT, DOWN);
  904. PIN_SLP(gpd0-2, INPUT, NONE);
  905. PIN_SLP(gpd0-3, INPUT, NONE);
  906. PIN_SLP(gpd1-0, INPUT, DOWN);
  907. PIN_SLP(gpd1-1, INPUT, DOWN);
  908. PIN_SLP(gpd1-2, INPUT, NONE);
  909. PIN_SLP(gpd1-3, INPUT, NONE);
  910. PIN_SLP(gpf0-0, INPUT, NONE);
  911. PIN_SLP(gpf0-1, INPUT, NONE);
  912. PIN_SLP(gpf0-2, INPUT, DOWN);
  913. PIN_SLP(gpf0-3, INPUT, DOWN);
  914. PIN_SLP(gpf0-4, INPUT, NONE);
  915. PIN_SLP(gpf0-5, INPUT, DOWN);
  916. PIN_SLP(gpf0-6, INPUT, NONE);
  917. PIN_SLP(gpf0-7, INPUT, DOWN);
  918. PIN_SLP(gpf1-0, INPUT, DOWN);
  919. PIN_SLP(gpf1-1, INPUT, DOWN);
  920. PIN_SLP(gpf1-2, INPUT, DOWN);
  921. PIN_SLP(gpf1-3, INPUT, DOWN);
  922. PIN_SLP(gpf1-4, INPUT, NONE);
  923. PIN_SLP(gpf1-5, INPUT, NONE);
  924. PIN_SLP(gpf1-6, INPUT, DOWN);
  925. PIN_SLP(gpf1-7, PREV, NONE);
  926. PIN_SLP(gpf2-0, PREV, NONE);
  927. PIN_SLP(gpf2-1, INPUT, DOWN);
  928. PIN_SLP(gpf2-2, INPUT, DOWN);
  929. PIN_SLP(gpf2-3, INPUT, DOWN);
  930. PIN_SLP(gpf2-4, INPUT, DOWN);
  931. PIN_SLP(gpf2-5, INPUT, DOWN);
  932. PIN_SLP(gpf2-6, INPUT, NONE);
  933. PIN_SLP(gpf2-7, INPUT, NONE);
  934. PIN_SLP(gpf3-0, INPUT, NONE);
  935. PIN_SLP(gpf3-1, PREV, NONE);
  936. PIN_SLP(gpf3-2, PREV, NONE);
  937. PIN_SLP(gpf3-3, PREV, NONE);
  938. PIN_SLP(gpf3-4, OUT1, NONE);
  939. PIN_SLP(gpf3-5, INPUT, DOWN);
  940. PIN_SLP(gpj0-0, PREV, NONE);
  941. PIN_SLP(gpj0-1, PREV, NONE);
  942. PIN_SLP(gpj0-2, PREV, NONE);
  943. PIN_SLP(gpj0-3, INPUT, DOWN);
  944. PIN_SLP(gpj0-4, PREV, NONE);
  945. PIN_SLP(gpj0-5, PREV, NONE);
  946. PIN_SLP(gpj0-6, INPUT, DOWN);
  947. PIN_SLP(gpj0-7, INPUT, DOWN);
  948. PIN_SLP(gpj1-0, INPUT, DOWN);
  949. PIN_SLP(gpj1-1, PREV, NONE);
  950. PIN_SLP(gpj1-2, PREV, NONE);
  951. PIN_SLP(gpj1-3, INPUT, DOWN);
  952. PIN_SLP(gpj1-4, INPUT, DOWN);
  953. };
  954. };
  955. &pinctrl_1 {
  956. pinctrl-names = "default";
  957. pinctrl-0 = <&sleep1>;
  958. gpio_keys: gpio-keys-pins {
  959. samsung,pins = "gpx0-1", "gpx2-2", "gpx2-7", "gpx3-3";
  960. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  961. };
  962. bt_shutdown: bt-shutdown-pins {
  963. samsung,pins = "gpl0-6";
  964. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  965. };
  966. bt_host_wakeup: bt-host-wakeup-pins {
  967. samsung,pins = "gpx2-6";
  968. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  969. };
  970. bt_device_wakeup: bt-device-wakeup-pins {
  971. samsung,pins = "gpx3-1";
  972. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  973. };
  974. max77686_irq: max77686-irq-pins {
  975. samsung,pins = "gpx0-7";
  976. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  977. };
  978. max77693_irq: max77693-irq-pins {
  979. samsung,pins = "gpx1-5";
  980. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  981. };
  982. max77693_fuel_irq: max77693-fuel-irq-pins {
  983. samsung,pins = "gpx2-3";
  984. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  985. };
  986. sdhci2_cd: sdhci2-cd-irq-pins {
  987. samsung,pins = "gpx3-4";
  988. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  989. };
  990. hdmi_hpd: hdmi-hpd-pins {
  991. samsung,pins = "gpx3-7";
  992. samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
  993. };
  994. sleep1: sleep-state {
  995. PIN_SLP(gpk0-0, PREV, NONE);
  996. PIN_SLP(gpk0-1, PREV, NONE);
  997. PIN_SLP(gpk0-2, OUT0, NONE);
  998. PIN_SLP(gpk0-3, PREV, NONE);
  999. PIN_SLP(gpk0-4, PREV, NONE);
  1000. PIN_SLP(gpk0-5, PREV, NONE);
  1001. PIN_SLP(gpk0-6, PREV, NONE);
  1002. PIN_SLP(gpk1-0, INPUT, DOWN);
  1003. PIN_SLP(gpk1-1, INPUT, DOWN);
  1004. PIN_SLP(gpk1-2, INPUT, DOWN);
  1005. PIN_SLP(gpk1-3, PREV, NONE);
  1006. PIN_SLP(gpk1-4, PREV, NONE);
  1007. PIN_SLP(gpk1-5, PREV, NONE);
  1008. PIN_SLP(gpk1-6, PREV, NONE);
  1009. PIN_SLP(gpk2-0, INPUT, DOWN);
  1010. PIN_SLP(gpk2-1, INPUT, DOWN);
  1011. PIN_SLP(gpk2-2, INPUT, DOWN);
  1012. PIN_SLP(gpk2-3, INPUT, DOWN);
  1013. PIN_SLP(gpk2-4, INPUT, DOWN);
  1014. PIN_SLP(gpk2-5, INPUT, DOWN);
  1015. PIN_SLP(gpk2-6, INPUT, DOWN);
  1016. PIN_SLP(gpk3-0, OUT0, NONE);
  1017. PIN_SLP(gpk3-1, INPUT, NONE);
  1018. PIN_SLP(gpk3-2, INPUT, DOWN);
  1019. PIN_SLP(gpk3-3, INPUT, NONE);
  1020. PIN_SLP(gpk3-4, INPUT, NONE);
  1021. PIN_SLP(gpk3-5, INPUT, NONE);
  1022. PIN_SLP(gpk3-6, INPUT, NONE);
  1023. PIN_SLP(gpl0-0, INPUT, DOWN);
  1024. PIN_SLP(gpl0-1, INPUT, DOWN);
  1025. PIN_SLP(gpl0-2, INPUT, DOWN);
  1026. PIN_SLP(gpl0-3, INPUT, DOWN);
  1027. PIN_SLP(gpl0-4, PREV, NONE);
  1028. PIN_SLP(gpl0-6, PREV, NONE);
  1029. PIN_SLP(gpl1-0, INPUT, DOWN);
  1030. PIN_SLP(gpl1-1, INPUT, DOWN);
  1031. PIN_SLP(gpl2-0, INPUT, DOWN);
  1032. PIN_SLP(gpl2-1, INPUT, DOWN);
  1033. PIN_SLP(gpl2-2, INPUT, DOWN);
  1034. PIN_SLP(gpl2-3, INPUT, DOWN);
  1035. PIN_SLP(gpl2-4, INPUT, DOWN);
  1036. PIN_SLP(gpl2-5, INPUT, DOWN);
  1037. PIN_SLP(gpl2-6, PREV, NONE);
  1038. PIN_SLP(gpl2-7, INPUT, DOWN);
  1039. PIN_SLP(gpm0-0, INPUT, DOWN);
  1040. PIN_SLP(gpm0-1, INPUT, DOWN);
  1041. PIN_SLP(gpm0-2, INPUT, DOWN);
  1042. PIN_SLP(gpm0-3, INPUT, DOWN);
  1043. PIN_SLP(gpm0-4, INPUT, DOWN);
  1044. PIN_SLP(gpm0-5, INPUT, DOWN);
  1045. PIN_SLP(gpm0-6, INPUT, DOWN);
  1046. PIN_SLP(gpm0-7, INPUT, DOWN);
  1047. PIN_SLP(gpm1-0, INPUT, DOWN);
  1048. PIN_SLP(gpm1-1, INPUT, DOWN);
  1049. PIN_SLP(gpm1-2, INPUT, NONE);
  1050. PIN_SLP(gpm1-3, INPUT, NONE);
  1051. PIN_SLP(gpm1-4, INPUT, NONE);
  1052. PIN_SLP(gpm1-5, INPUT, NONE);
  1053. PIN_SLP(gpm1-6, INPUT, DOWN);
  1054. PIN_SLP(gpm2-0, INPUT, NONE);
  1055. PIN_SLP(gpm2-1, INPUT, NONE);
  1056. PIN_SLP(gpm2-2, INPUT, DOWN);
  1057. PIN_SLP(gpm2-3, INPUT, DOWN);
  1058. PIN_SLP(gpm2-4, INPUT, DOWN);
  1059. PIN_SLP(gpm3-0, PREV, NONE);
  1060. PIN_SLP(gpm3-1, PREV, NONE);
  1061. PIN_SLP(gpm3-2, PREV, NONE);
  1062. PIN_SLP(gpm3-3, OUT1, NONE);
  1063. PIN_SLP(gpm3-4, INPUT, DOWN);
  1064. PIN_SLP(gpm3-5, INPUT, DOWN);
  1065. PIN_SLP(gpm3-6, INPUT, DOWN);
  1066. PIN_SLP(gpm3-7, INPUT, DOWN);
  1067. PIN_SLP(gpm4-0, INPUT, DOWN);
  1068. PIN_SLP(gpm4-1, INPUT, DOWN);
  1069. PIN_SLP(gpm4-2, INPUT, DOWN);
  1070. PIN_SLP(gpm4-3, INPUT, DOWN);
  1071. PIN_SLP(gpm4-4, INPUT, DOWN);
  1072. PIN_SLP(gpm4-5, INPUT, DOWN);
  1073. PIN_SLP(gpm4-6, INPUT, DOWN);
  1074. PIN_SLP(gpm4-7, INPUT, DOWN);
  1075. PIN_SLP(gpy0-0, INPUT, DOWN);
  1076. PIN_SLP(gpy0-1, INPUT, DOWN);
  1077. PIN_SLP(gpy0-2, INPUT, DOWN);
  1078. PIN_SLP(gpy0-3, INPUT, DOWN);
  1079. PIN_SLP(gpy0-4, INPUT, DOWN);
  1080. PIN_SLP(gpy0-5, INPUT, DOWN);
  1081. PIN_SLP(gpy1-0, INPUT, DOWN);
  1082. PIN_SLP(gpy1-1, INPUT, DOWN);
  1083. PIN_SLP(gpy1-2, INPUT, DOWN);
  1084. PIN_SLP(gpy1-3, INPUT, DOWN);
  1085. PIN_SLP(gpy2-0, PREV, NONE);
  1086. PIN_SLP(gpy2-1, INPUT, DOWN);
  1087. PIN_SLP(gpy2-2, INPUT, NONE);
  1088. PIN_SLP(gpy2-3, INPUT, NONE);
  1089. PIN_SLP(gpy2-4, INPUT, NONE);
  1090. PIN_SLP(gpy2-5, INPUT, NONE);
  1091. PIN_SLP(gpy3-0, INPUT, DOWN);
  1092. PIN_SLP(gpy3-1, INPUT, DOWN);
  1093. PIN_SLP(gpy3-2, INPUT, DOWN);
  1094. PIN_SLP(gpy3-3, INPUT, DOWN);
  1095. PIN_SLP(gpy3-4, INPUT, DOWN);
  1096. PIN_SLP(gpy3-5, INPUT, DOWN);
  1097. PIN_SLP(gpy3-6, INPUT, DOWN);
  1098. PIN_SLP(gpy3-7, INPUT, DOWN);
  1099. PIN_SLP(gpy4-0, INPUT, DOWN);
  1100. PIN_SLP(gpy4-1, INPUT, DOWN);
  1101. PIN_SLP(gpy4-2, INPUT, DOWN);
  1102. PIN_SLP(gpy4-3, INPUT, DOWN);
  1103. PIN_SLP(gpy4-4, INPUT, DOWN);
  1104. PIN_SLP(gpy4-5, INPUT, DOWN);
  1105. PIN_SLP(gpy4-6, INPUT, DOWN);
  1106. PIN_SLP(gpy4-7, INPUT, DOWN);
  1107. PIN_SLP(gpy5-0, INPUT, DOWN);
  1108. PIN_SLP(gpy5-1, INPUT, DOWN);
  1109. PIN_SLP(gpy5-2, INPUT, DOWN);
  1110. PIN_SLP(gpy5-3, INPUT, DOWN);
  1111. PIN_SLP(gpy5-4, INPUT, DOWN);
  1112. PIN_SLP(gpy5-5, INPUT, DOWN);
  1113. PIN_SLP(gpy5-6, INPUT, DOWN);
  1114. PIN_SLP(gpy5-7, INPUT, DOWN);
  1115. PIN_SLP(gpy6-0, INPUT, DOWN);
  1116. PIN_SLP(gpy6-1, INPUT, DOWN);
  1117. PIN_SLP(gpy6-2, INPUT, DOWN);
  1118. PIN_SLP(gpy6-3, INPUT, DOWN);
  1119. PIN_SLP(gpy6-4, INPUT, DOWN);
  1120. PIN_SLP(gpy6-5, INPUT, DOWN);
  1121. PIN_SLP(gpy6-6, INPUT, DOWN);
  1122. PIN_SLP(gpy6-7, INPUT, DOWN);
  1123. };
  1124. };
  1125. &pinctrl_2 {
  1126. pinctrl-names = "default";
  1127. pinctrl-0 = <&sleep2>;
  1128. sleep2: sleep-state {
  1129. PIN_SLP(gpz-0, INPUT, DOWN);
  1130. PIN_SLP(gpz-1, INPUT, DOWN);
  1131. PIN_SLP(gpz-2, INPUT, DOWN);
  1132. PIN_SLP(gpz-3, INPUT, DOWN);
  1133. PIN_SLP(gpz-4, INPUT, DOWN);
  1134. PIN_SLP(gpz-5, INPUT, DOWN);
  1135. PIN_SLP(gpz-6, INPUT, DOWN);
  1136. };
  1137. };
  1138. &pinctrl_3 {
  1139. pinctrl-names = "default";
  1140. pinctrl-0 = <&sleep3>;
  1141. sleep3: sleep-state {
  1142. PIN_SLP(gpv0-0, INPUT, DOWN);
  1143. PIN_SLP(gpv0-1, INPUT, DOWN);
  1144. PIN_SLP(gpv0-2, INPUT, DOWN);
  1145. PIN_SLP(gpv0-3, INPUT, DOWN);
  1146. PIN_SLP(gpv0-4, INPUT, DOWN);
  1147. PIN_SLP(gpv0-5, INPUT, DOWN);
  1148. PIN_SLP(gpv0-6, INPUT, DOWN);
  1149. PIN_SLP(gpv0-7, INPUT, DOWN);
  1150. PIN_SLP(gpv1-0, INPUT, DOWN);
  1151. PIN_SLP(gpv1-1, INPUT, DOWN);
  1152. PIN_SLP(gpv1-2, INPUT, DOWN);
  1153. PIN_SLP(gpv1-3, INPUT, DOWN);
  1154. PIN_SLP(gpv1-4, INPUT, DOWN);
  1155. PIN_SLP(gpv1-5, INPUT, DOWN);
  1156. PIN_SLP(gpv1-6, INPUT, DOWN);
  1157. PIN_SLP(gpv1-7, INPUT, DOWN);
  1158. PIN_SLP(gpv2-0, INPUT, DOWN);
  1159. PIN_SLP(gpv2-1, INPUT, DOWN);
  1160. PIN_SLP(gpv2-2, INPUT, DOWN);
  1161. PIN_SLP(gpv2-3, INPUT, DOWN);
  1162. PIN_SLP(gpv2-4, INPUT, DOWN);
  1163. PIN_SLP(gpv2-5, INPUT, DOWN);
  1164. PIN_SLP(gpv2-6, INPUT, DOWN);
  1165. PIN_SLP(gpv2-7, INPUT, DOWN);
  1166. PIN_SLP(gpv3-0, INPUT, DOWN);
  1167. PIN_SLP(gpv3-1, INPUT, DOWN);
  1168. PIN_SLP(gpv3-2, INPUT, DOWN);
  1169. PIN_SLP(gpv3-3, INPUT, DOWN);
  1170. PIN_SLP(gpv3-4, INPUT, DOWN);
  1171. PIN_SLP(gpv3-5, INPUT, DOWN);
  1172. PIN_SLP(gpv3-6, INPUT, DOWN);
  1173. PIN_SLP(gpv3-7, INPUT, DOWN);
  1174. PIN_SLP(gpv4-0, INPUT, DOWN);
  1175. };
  1176. };
  1177. &pwm {
  1178. pinctrl-0 = <&pwm0_out>;
  1179. pinctrl-names = "default";
  1180. samsung,pwm-outputs = <0>;
  1181. status = "okay";
  1182. };
  1183. &rtc {
  1184. status = "okay";
  1185. clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
  1186. clock-names = "rtc", "rtc_src";
  1187. };
  1188. &sdhci_2 {
  1189. bus-width = <4>;
  1190. cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
  1191. pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
  1192. pinctrl-names = "default";
  1193. vmmc-supply = <&ldo21_reg>;
  1194. status = "okay";
  1195. };
  1196. &sdhci_3 {
  1197. #address-cells = <1>;
  1198. #size-cells = <0>;
  1199. non-removable;
  1200. bus-width = <4>;
  1201. mmc-pwrseq = <&wlan_pwrseq>;
  1202. pinctrl-names = "default";
  1203. pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
  1204. status = "okay";
  1205. brcmf: wifi@1 {
  1206. reg = <1>;
  1207. compatible = "brcm,bcm4329-fmac";
  1208. interrupt-parent = <&gpx2>;
  1209. interrupts = <5 IRQ_TYPE_NONE>;
  1210. interrupt-names = "host-wake";
  1211. };
  1212. };
  1213. &serial_0 {
  1214. pinctrl-0 = <&uart0_data &uart0_fctl>;
  1215. pinctrl-names = "default";
  1216. status = "okay";
  1217. bluetooth {
  1218. compatible = "brcm,bcm4330-bt";
  1219. pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
  1220. pinctrl-names = "default";
  1221. max-speed = <3000000>;
  1222. shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
  1223. device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
  1224. host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
  1225. clocks = <&max77686 MAX77686_CLK_PMIC>;
  1226. };
  1227. };
  1228. &serial_1 {
  1229. status = "okay";
  1230. };
  1231. &serial_2 {
  1232. status = "okay";
  1233. };
  1234. &serial_3 {
  1235. status = "okay";
  1236. };
  1237. &spi_1 {
  1238. pinctrl-names = "default";
  1239. pinctrl-0 = <&spi1_bus>;
  1240. cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
  1241. status = "okay";
  1242. s5c73m3_spi: image-sensor@0 {
  1243. compatible = "samsung,s5c73m3";
  1244. spi-max-frequency = <50000000>;
  1245. reg = <0>;
  1246. controller-data {
  1247. samsung,spi-feedback-delay = <2>;
  1248. };
  1249. };
  1250. };
  1251. &tmu {
  1252. vtmu-supply = <&ldo10_reg>;
  1253. status = "okay";
  1254. };