aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/tegra30-cardhu.dtsi
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2012-08-09 07:00:39 -0400
committerStephen Warren <swarren@nvidia.com>2012-09-06 13:48:38 -0400
commitfa4a925230835eab27c9c97a0a6d72caa4fe2b67 (patch)
treeb882962e95b179b148139e1af4abb5f09e55eb16 /arch/arm/boot/dts/tegra30-cardhu.dtsi
parent640a7af58b4ac9ca2347a25410b364829bde1bb7 (diff)
ARM: tegra: cardhu: add dt entry for fixed regulators
Cadhu have multiple power rails which are controlled by GPIOs. Add support of these power rail control through fixed regulators. Add entry for all fixed regulators for cardhu-a02 and a04. The details are taken from downstream kernel. Some points on this change are: * Add the tps65910-LDO5 entry and make it always ON to supply power to SDMMC. Once the sd driver support regulator handling, this flag will be remove. * Dropping registration of rail vdd_sdmmc1 as the gpio is used by sdhci power-gpio. This need to fix in sdhci driver and then need to add the registration mechanism. Just removing power-gpio and adding fixed regulator with this gpio is causing the sd access to fail because first probe call of this regulator fails due to non-available of parent and so it calls gpio_free() which disable the pins in gpio mode make pin output to LOW causes power to OFF. In probe retry, it got success and it powered-on but it again need to do again numeration of card here. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch/arm/boot/dts/tegra30-cardhu.dtsi')
-rw-r--r--arch/arm/boot/dts/tegra30-cardhu.dtsi147
1 files changed, 147 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi
index ba38527fcb7f..47946939b49e 100644
--- a/arch/arm/boot/dts/tegra30-cardhu.dtsi
+++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi
@@ -162,6 +162,7 @@
162 vcc1-supply = <&vdd_ac_bat_reg>; 162 vcc1-supply = <&vdd_ac_bat_reg>;
163 vcc2-supply = <&vdd_ac_bat_reg>; 163 vcc2-supply = <&vdd_ac_bat_reg>;
164 vcc3-supply = <&vio_reg>; 164 vcc3-supply = <&vio_reg>;
165 vcc4-supply = <&vdd_5v0_reg>;
165 vcc5-supply = <&vdd_ac_bat_reg>; 166 vcc5-supply = <&vdd_ac_bat_reg>;
166 vcc6-supply = <&vdd2_reg>; 167 vcc6-supply = <&vdd2_reg>;
167 vcc7-supply = <&vdd_ac_bat_reg>; 168 vcc7-supply = <&vdd_ac_bat_reg>;
@@ -234,6 +235,15 @@
234 regulator-always-on; 235 regulator-always-on;
235 }; 236 };
236 237
238 ldo5_reg: regulator@8 {
239 reg = <8>;
240 regulator-compatible = "ldo5";
241 regulator-name = "vddio_sdmmc,avdd_vdac";
242 regulator-min-microvolt = <3300000>;
243 regulator-max-microvolt = <3300000>;
244 regulator-always-on;
245 };
246
237 ldo6_reg: regulator@9 { 247 ldo6_reg: regulator@9 {
238 reg = <9>; 248 reg = <9>;
239 regulator-compatible = "ldo6"; 249 regulator-compatible = "ldo6";
@@ -300,6 +310,143 @@
300 regulator-max-microvolt = <5000000>; 310 regulator-max-microvolt = <5000000>;
301 regulator-always-on; 311 regulator-always-on;
302 }; 312 };
313
314 cam_1v8_reg: regulator@1 {
315 compatible = "regulator-fixed";
316 reg = <1>;
317 regulator-name = "cam_1v8";
318 regulator-min-microvolt = <1800000>;
319 regulator-max-microvolt = <1800000>;
320 enable-active-high;
321 gpio = <&gpio 220 0>; /* gpio PBB4 */
322 vin-supply = <&vio_reg>;
323 };
324
325 cp_5v_reg: regulator@2 {
326 compatible = "regulator-fixed";
327 reg = <2>;
328 regulator-name = "cp_5v";
329 regulator-min-microvolt = <5000000>;
330 regulator-max-microvolt = <5000000>;
331 regulator-boot-on;
332 regulator-always-on;
333 enable-active-high;
334 gpio = <&pmic 0 0>; /* PMIC TPS65911 GPIO0 */
335 };
336
337 emmc_3v3_reg: regulator@3 {
338 compatible = "regulator-fixed";
339 reg = <3>;
340 regulator-name = "emmc_3v3";
341 regulator-min-microvolt = <3300000>;
342 regulator-max-microvolt = <3300000>;
343 regulator-always-on;
344 regulator-boot-on;
345 enable-active-high;
346 gpio = <&gpio 25 0>; /* gpio PD1 */
347 vin-supply = <&sys_3v3_reg>;
348 };
349
350 modem_3v3_reg: regulator@4 {
351 compatible = "regulator-fixed";
352 reg = <4>;
353 regulator-name = "modem_3v3";
354 regulator-min-microvolt = <3300000>;
355 regulator-max-microvolt = <3300000>;
356 enable-active-high;
357 gpio = <&gpio 30 0>; /* gpio PD6 */
358 };
359
360 pex_hvdd_3v3_reg: regulator@5 {
361 compatible = "regulator-fixed";
362 reg = <5>;
363 regulator-name = "pex_hvdd_3v3";
364 regulator-min-microvolt = <3300000>;
365 regulator-max-microvolt = <3300000>;
366 enable-active-high;
367 gpio = <&gpio 95 0>; /* gpio PL7 */
368 vin-supply = <&sys_3v3_reg>;
369 };
370
371 vdd_cam1_ldo_reg: regulator@6 {
372 compatible = "regulator-fixed";
373 reg = <6>;
374 regulator-name = "vdd_cam1_ldo";
375 regulator-min-microvolt = <2800000>;
376 regulator-max-microvolt = <2800000>;
377 enable-active-high;
378 gpio = <&gpio 142 0>; /* gpio PR6 */
379 vin-supply = <&sys_3v3_reg>;
380 };
381
382 vdd_cam2_ldo_reg: regulator@7 {
383 compatible = "regulator-fixed";
384 reg = <7>;
385 regulator-name = "vdd_cam2_ldo";
386 regulator-min-microvolt = <2800000>;
387 regulator-max-microvolt = <2800000>;
388 enable-active-high;
389 gpio = <&gpio 143 0>; /* gpio PR7 */
390 vin-supply = <&sys_3v3_reg>;
391 };
392
393 vdd_cam3_ldo_reg: regulator@8 {
394 compatible = "regulator-fixed";
395 reg = <8>;
396 regulator-name = "vdd_cam3_ldo";
397 regulator-min-microvolt = <3300000>;
398 regulator-max-microvolt = <3300000>;
399 enable-active-high;
400 gpio = <&gpio 144 0>; /* gpio PS0 */
401 vin-supply = <&sys_3v3_reg>;
402 };
403
404 vdd_com_reg: regulator@9 {
405 compatible = "regulator-fixed";
406 reg = <9>;
407 regulator-name = "vdd_com";
408 regulator-min-microvolt = <3300000>;
409 regulator-max-microvolt = <3300000>;
410 enable-active-high;
411 gpio = <&gpio 24 0>; /* gpio PD0 */
412 vin-supply = <&sys_3v3_reg>;
413 };
414
415 vdd_fuse_3v3_reg: regulator@10 {
416 compatible = "regulator-fixed";
417 reg = <10>;
418 regulator-name = "vdd_fuse_3v3";
419 regulator-min-microvolt = <3300000>;
420 regulator-max-microvolt = <3300000>;
421 enable-active-high;
422 gpio = <&gpio 94 0>; /* gpio PL6 */
423 vin-supply = <&sys_3v3_reg>;
424 };
425
426 vdd_pnl1_reg: regulator@11 {
427 compatible = "regulator-fixed";
428 reg = <11>;
429 regulator-name = "vdd_pnl1";
430 regulator-min-microvolt = <3300000>;
431 regulator-max-microvolt = <3300000>;
432 regulator-always-on;
433 regulator-boot-on;
434 enable-active-high;
435 gpio = <&gpio 92 0>; /* gpio PL4 */
436 vin-supply = <&sys_3v3_reg>;
437 };
438
439 vdd_vid_reg: regulator@12 {
440 compatible = "regulator-fixed";
441 reg = <12>;
442 regulator-name = "vddio_vid";
443 regulator-min-microvolt = <5000000>;
444 regulator-max-microvolt = <5000000>;
445 enable-active-high;
446 gpio = <&gpio 152 0>; /* GPIO PT0 */
447 gpio-open-drain;
448 vin-supply = <&vdd_5v0_reg>;
449 };
303 }; 450 };
304 451
305 sound { 452 sound {