aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorFelipe Balbi <balbi@ti.com>2013-05-29 19:34:49 -0400
committerFelipe Balbi <balbi@ti.com>2013-05-29 19:34:49 -0400
commit10b2a9386504d83b076fcd06ddbc22b33719d51b (patch)
tree19628da4a63389d8e8d9a3be5f16d4d8a07c3325 /arch/arm
parentdae8eadf2a8a125dbbfc067a7ff16cf600b1023b (diff)
parent4c94c8b5b3cc38b0d0b1ec79642f5710e19a3e01 (diff)
Merge tag 'tegra-for-3.11-deps-for-usb' into next
ARM: tegra: DT-related fixes needed by the USB tree The Tegra USB bindings were in bad shape. The patches in this branch fix the binding definitions, and make all the necessary additions to the DT files. Stale nodes/properties will be removed early in 3.12 once the USB driver has been updated for the new binding. These changes are needed in both the USB tree, to allow the driver to be updated to handle them, and the Tegra tree, so that various tree- wide DT changes (e.g. conversion of IRQ/GPIO/clock constants to defines) can be applied on top of them. * tag 'tegra-for-3.11-deps-for-usb': ARM: tegra: update device trees for USB binding rework ARM: tegra: modify ULPI reset GPIO properties ARM: tegra: finalize USB EHCI and PHY bindings Signed-of-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/boot/dts/tegra20-colibri-512.dtsi6
-rw-r--r--arch/arm/boot/dts/tegra20-harmony.dts15
-rw-r--r--arch/arm/boot/dts/tegra20-iris-512.dts9
-rw-r--r--arch/arm/boot/dts/tegra20-paz00.dts15
-rw-r--r--arch/arm/boot/dts/tegra20-seaboard.dts26
-rw-r--r--arch/arm/boot/dts/tegra20-tamonten.dtsi4
-rw-r--r--arch/arm/boot/dts/tegra20-trimslice.dts25
-rw-r--r--arch/arm/boot/dts/tegra20-ventana.dts15
-rw-r--r--arch/arm/boot/dts/tegra20-whistler.dts28
-rw-r--r--arch/arm/boot/dts/tegra20.dtsi49
10 files changed, 163 insertions, 29 deletions
diff --git a/arch/arm/boot/dts/tegra20-colibri-512.dtsi b/arch/arm/boot/dts/tegra20-colibri-512.dtsi
index a573b94b7c93..c12af78e479c 100644
--- a/arch/arm/boot/dts/tegra20-colibri-512.dtsi
+++ b/arch/arm/boot/dts/tegra20-colibri-512.dtsi
@@ -449,7 +449,11 @@
449 449
450 usb@c5004000 { 450 usb@c5004000 {
451 status = "okay"; 451 status = "okay";
452 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 452 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
453 };
454
455 usb-phy@c5004000 {
456 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
453 }; 457 };
454 458
455 sdhci@c8000600 { 459 sdhci@c8000600 {
diff --git a/arch/arm/boot/dts/tegra20-harmony.dts b/arch/arm/boot/dts/tegra20-harmony.dts
index e7d5de4e00b9..ec5293758753 100644
--- a/arch/arm/boot/dts/tegra20-harmony.dts
+++ b/arch/arm/boot/dts/tegra20-harmony.dts
@@ -428,17 +428,26 @@
428 status = "okay"; 428 status = "okay";
429 }; 429 };
430 430
431 usb-phy@c5000000 {
432 status = "okay";
433 };
434
431 usb@c5004000 { 435 usb@c5004000 {
432 status = "okay"; 436 status = "okay";
433 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 437 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
438 };
439
440 usb-phy@c5004000 {
441 status = "okay";
442 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
434 }; 443 };
435 444
436 usb@c5008000 { 445 usb@c5008000 {
437 status = "okay"; 446 status = "okay";
438 }; 447 };
439 448
440 usb-phy@c5004400 { 449 usb-phy@c5008000 {
441 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 450 status = "okay";
442 }; 451 };
443 452
444 sdhci@c8000200 { 453 sdhci@c8000200 {
diff --git a/arch/arm/boot/dts/tegra20-iris-512.dts b/arch/arm/boot/dts/tegra20-iris-512.dts
index 52f1103907d7..9f64f7086881 100644
--- a/arch/arm/boot/dts/tegra20-iris-512.dts
+++ b/arch/arm/boot/dts/tegra20-iris-512.dts
@@ -38,13 +38,20 @@
38 38
39 usb@c5000000 { 39 usb@c5000000 {
40 status = "okay"; 40 status = "okay";
41 dr_mode = "otg"; 41 };
42
43 usb-phy@c5000000 {
44 status = "okay";
42 }; 45 };
43 46
44 usb@c5008000 { 47 usb@c5008000 {
45 status = "okay"; 48 status = "okay";
46 }; 49 };
47 50
51 usb-phy@c5008000 {
52 status = "okay";
53 };
54
48 serial@70006000 { 55 serial@70006000 {
49 status = "okay"; 56 status = "okay";
50 }; 57 };
diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts
index e3e0c9977df4..1c17ffaff1ad 100644
--- a/arch/arm/boot/dts/tegra20-paz00.dts
+++ b/arch/arm/boot/dts/tegra20-paz00.dts
@@ -427,17 +427,26 @@
427 status = "okay"; 427 status = "okay";
428 }; 428 };
429 429
430 usb-phy@c5000000 {
431 status = "okay";
432 };
433
430 usb@c5004000 { 434 usb@c5004000 {
431 status = "okay"; 435 status = "okay";
432 nvidia,phy-reset-gpio = <&gpio 168 0>; /* gpio PV0 */ 436 nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
437 };
438
439 usb-phy@c5004000 {
440 status = "okay";
441 nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
433 }; 442 };
434 443
435 usb@c5008000 { 444 usb@c5008000 {
436 status = "okay"; 445 status = "okay";
437 }; 446 };
438 447
439 usb-phy@c5004400 { 448 usb-phy@c5008000 {
440 nvidia,phy-reset-gpio = <&gpio 168 0>; /* gpio PV0 */ 449 status = "okay";
441 }; 450 };
442 451
443 sdhci@c8000000 { 452 sdhci@c8000000 {
diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts
index cee4c34010fe..009dafecf88b 100644
--- a/arch/arm/boot/dts/tegra20-seaboard.dts
+++ b/arch/arm/boot/dts/tegra20-seaboard.dts
@@ -569,17 +569,28 @@
569 dr_mode = "otg"; 569 dr_mode = "otg";
570 }; 570 };
571 571
572 usb-phy@c5000000 {
573 status = "okay";
574 vbus-supply = <&vbus_reg>;
575 dr_mode = "otg";
576 };
577
572 usb@c5004000 { 578 usb@c5004000 {
573 status = "okay"; 579 status = "okay";
574 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 580 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
581 };
582
583 usb-phy@c5004000 {
584 status = "okay";
585 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
575 }; 586 };
576 587
577 usb@c5008000 { 588 usb@c5008000 {
578 status = "okay"; 589 status = "okay";
579 }; 590 };
580 591
581 usb-phy@c5004400 { 592 usb-phy@c5008000 {
582 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 593 status = "okay";
583 }; 594 };
584 595
585 sdhci@c8000000 { 596 sdhci@c8000000 {
@@ -807,6 +818,15 @@
807 gpio = <&pmic 1 0>; 818 gpio = <&pmic 1 0>;
808 enable-active-high; 819 enable-active-high;
809 }; 820 };
821
822 vbus_reg: regulator@3 {
823 compatible = "regulator-fixed";
824 reg = <3>;
825 regulator-name = "vdd_vbus_wup1";
826 regulator-min-microvolt = <5000000>;
827 regulator-max-microvolt = <5000000>;
828 gpio = <&gpio 24 0>; /* PD0 */
829 };
810 }; 830 };
811 831
812 sound { 832 sound {
diff --git a/arch/arm/boot/dts/tegra20-tamonten.dtsi b/arch/arm/boot/dts/tegra20-tamonten.dtsi
index 50b3ec16b93a..fc2f7d6e70b2 100644
--- a/arch/arm/boot/dts/tegra20-tamonten.dtsi
+++ b/arch/arm/boot/dts/tegra20-tamonten.dtsi
@@ -470,6 +470,10 @@
470 status = "okay"; 470 status = "okay";
471 }; 471 };
472 472
473 usb-phy@c5008000 {
474 status = "okay";
475 };
476
473 sdhci@c8000600 { 477 sdhci@c8000600 {
474 cd-gpios = <&gpio 58 1>; /* gpio PH2 */ 478 cd-gpios = <&gpio 58 1>; /* gpio PH2 */
475 wp-gpios = <&gpio 59 0>; /* gpio PH3 */ 479 wp-gpios = <&gpio 59 0>; /* gpio PH3 */
diff --git a/arch/arm/boot/dts/tegra20-trimslice.dts b/arch/arm/boot/dts/tegra20-trimslice.dts
index 9cc78a15d739..0e65c00ec732 100644
--- a/arch/arm/boot/dts/tegra20-trimslice.dts
+++ b/arch/arm/boot/dts/tegra20-trimslice.dts
@@ -314,17 +314,27 @@
314 nvidia,vbus-gpio = <&gpio 170 0>; /* gpio PV2 */ 314 nvidia,vbus-gpio = <&gpio 170 0>; /* gpio PV2 */
315 }; 315 };
316 316
317 usb-phy@c5000000 {
318 status = "okay";
319 vbus-supply = <&vbus_reg>;
320 };
321
317 usb@c5004000 { 322 usb@c5004000 {
318 status = "okay"; 323 status = "okay";
319 nvidia,phy-reset-gpio = <&gpio 168 0>; /* gpio PV0 */ 324 nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
325 };
326
327 usb-phy@c5004000 {
328 status = "okay";
329 nvidia,phy-reset-gpio = <&gpio 168 1>; /* gpio PV0, active low */
320 }; 330 };
321 331
322 usb@c5008000 { 332 usb@c5008000 {
323 status = "okay"; 333 status = "okay";
324 }; 334 };
325 335
326 usb-phy@c5004400 { 336 usb-phy@c5008000 {
327 nvidia,phy-reset-gpio = <&gpio 168 0>; /* gpio PV0 */ 337 status = "okay";
328 }; 338 };
329 339
330 sdhci@c8000000 { 340 sdhci@c8000000 {
@@ -390,6 +400,15 @@
390 regulator-max-microvolt = <1800000>; 400 regulator-max-microvolt = <1800000>;
391 regulator-always-on; 401 regulator-always-on;
392 }; 402 };
403
404 vbus_reg: regulator@2 {
405 compatible = "regulator-fixed";
406 reg = <2>;
407 regulator-name = "usb1_vbus";
408 regulator-min-microvolt = <5000000>;
409 regulator-max-microvolt = <5000000>;
410 gpio = <&gpio 170 0>; /* PV2 */
411 };
393 }; 412 };
394 413
395 sound { 414 sound {
diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts
index dd38f1f03834..e00f89e645f9 100644
--- a/arch/arm/boot/dts/tegra20-ventana.dts
+++ b/arch/arm/boot/dts/tegra20-ventana.dts
@@ -505,17 +505,26 @@
505 status = "okay"; 505 status = "okay";
506 }; 506 };
507 507
508 usb-phy@c5000000 {
509 status = "okay";
510 };
511
508 usb@c5004000 { 512 usb@c5004000 {
509 status = "okay"; 513 status = "okay";
510 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 514 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
515 };
516
517 usb-phy@c5004000 {
518 status = "okay";
519 nvidia,phy-reset-gpio = <&gpio 169 1>; /* gpio PV1, active low */
511 }; 520 };
512 521
513 usb@c5008000 { 522 usb@c5008000 {
514 status = "okay"; 523 status = "okay";
515 }; 524 };
516 525
517 usb-phy@c5004400 { 526 usb-phy@c5008000 {
518 nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */ 527 status = "okay";
519 }; 528 };
520 529
521 sdhci@c8000000 { 530 sdhci@c8000000 {
diff --git a/arch/arm/boot/dts/tegra20-whistler.dts b/arch/arm/boot/dts/tegra20-whistler.dts
index d2567f83aaff..3c24c9b92b44 100644
--- a/arch/arm/boot/dts/tegra20-whistler.dts
+++ b/arch/arm/boot/dts/tegra20-whistler.dts
@@ -511,11 +511,21 @@
511 nvidia,vbus-gpio = <&tca6416 0 0>; /* GPIO_PMU0 */ 511 nvidia,vbus-gpio = <&tca6416 0 0>; /* GPIO_PMU0 */
512 }; 512 };
513 513
514 usb-phy@c5000000 {
515 status = "okay";
516 vbus-supply = <&vbus1_reg>;
517 };
518
514 usb@c5008000 { 519 usb@c5008000 {
515 status = "okay"; 520 status = "okay";
516 nvidia,vbus-gpio = <&tca6416 1 0>; /* GPIO_PMU1 */ 521 nvidia,vbus-gpio = <&tca6416 1 0>; /* GPIO_PMU1 */
517 }; 522 };
518 523
524 usb-phy@c5008000 {
525 status = "okay";
526 vbus-supply = <&vbus3_reg>;
527 };
528
519 sdhci@c8000400 { 529 sdhci@c8000400 {
520 status = "okay"; 530 status = "okay";
521 cd-gpios = <&gpio 69 1>; /* gpio PI5 */ 531 cd-gpios = <&gpio 69 1>; /* gpio PI5 */
@@ -568,6 +578,24 @@
568 regulator-max-microvolt = <5000000>; 578 regulator-max-microvolt = <5000000>;
569 regulator-always-on; 579 regulator-always-on;
570 }; 580 };
581
582 vbus1_reg: regulator@2 {
583 compatible = "regulator-fixed";
584 reg = <2>;
585 regulator-name = "vbus1";
586 regulator-min-microvolt = <5000000>;
587 regulator-max-microvolt = <5000000>;
588 gpio = <&tca6416 0 0>; /* GPIO_PMU0 */
589 };
590
591 vbus3_reg: regulator@3 {
592 compatible = "regulator-fixed";
593 reg = <3>;
594 regulator-name = "vbus3";
595 regulator-min-microvolt = <5000000>;
596 regulator-max-microvolt = <5000000>;
597 gpio = <&tca6416 1 0>; /* GPIO_PMU1 */
598 };
571 }; 599 };
572 600
573 sound { 601 sound {
diff --git a/arch/arm/boot/dts/tegra20.dtsi b/arch/arm/boot/dts/tegra20.dtsi
index 56a91106041b..96d6d8a3aa72 100644
--- a/arch/arm/boot/dts/tegra20.dtsi
+++ b/arch/arm/boot/dts/tegra20.dtsi
@@ -455,13 +455,24 @@
455 status = "disabled"; 455 status = "disabled";
456 }; 456 };
457 457
458 phy1: usb-phy@c5000400 { 458 phy1: usb-phy@c5000000 {
459 compatible = "nvidia,tegra20-usb-phy"; 459 compatible = "nvidia,tegra20-usb-phy";
460 reg = <0xc5000400 0x3c00>; 460 reg = <0xc5000000 0x4000 0xc5000000 0x4000>;
461 phy_type = "utmi"; 461 phy_type = "utmi";
462 clocks = <&tegra_car 22>,
463 <&tegra_car 127>,
464 <&tegra_car 106>,
465 <&tegra_car 22>;
466 clock-names = "reg", "pll_u", "timer", "utmi-pads";
462 nvidia,has-legacy-mode; 467 nvidia,has-legacy-mode;
463 clocks = <&tegra_car 22>, <&tegra_car 127>; 468 hssync_start_delay = <9>;
464 clock-names = "phy", "pll_u"; 469 idle_wait_delay = <17>;
470 elastic_limit = <16>;
471 term_range_adj = <6>;
472 xcvr_setup = <9>;
473 xcvr_lsfslew = <1>;
474 xcvr_lsrslew = <1>;
475 status = "disabled";
465 }; 476 };
466 477
467 usb@c5004000 { 478 usb@c5004000 {
@@ -474,12 +485,15 @@
474 status = "disabled"; 485 status = "disabled";
475 }; 486 };
476 487
477 phy2: usb-phy@c5004400 { 488 phy2: usb-phy@c5004000 {
478 compatible = "nvidia,tegra20-usb-phy"; 489 compatible = "nvidia,tegra20-usb-phy";
479 reg = <0xc5004400 0x3c00>; 490 reg = <0xc5004000 0x4000>;
480 phy_type = "ulpi"; 491 phy_type = "ulpi";
481 clocks = <&tegra_car 93>, <&tegra_car 127>; 492 clocks = <&tegra_car 58>,
482 clock-names = "phy", "pll_u"; 493 <&tegra_car 127>,
494 <&tegra_car 93>;
495 clock-names = "reg", "pll_u", "ulpi-link";
496 status = "disabled";
483 }; 497 };
484 498
485 usb@c5008000 { 499 usb@c5008000 {
@@ -492,12 +506,23 @@
492 status = "disabled"; 506 status = "disabled";
493 }; 507 };
494 508
495 phy3: usb-phy@c5008400 { 509 phy3: usb-phy@c5008000 {
496 compatible = "nvidia,tegra20-usb-phy"; 510 compatible = "nvidia,tegra20-usb-phy";
497 reg = <0xc5008400 0x3c00>; 511 reg = <0xc5008000 0x4000 0xc5000000 0x4000>;
498 phy_type = "utmi"; 512 phy_type = "utmi";
499 clocks = <&tegra_car 22>, <&tegra_car 127>; 513 clocks = <&tegra_car 59>,
500 clock-names = "phy", "pll_u"; 514 <&tegra_car 127>,
515 <&tegra_car 106>,
516 <&tegra_car 22>;
517 clock-names = "reg", "pll_u", "timer", "utmi-pads";
518 hssync_start_delay = <9>;
519 idle_wait_delay = <17>;
520 elastic_limit = <16>;
521 term_range_adj = <6>;
522 xcvr_setup = <9>;
523 xcvr_lsfslew = <2>;
524 xcvr_lsrslew = <2>;
525 status = "disabled";
501 }; 526 };
502 527
503 sdhci@c8000000 { 528 sdhci@c8000000 {