aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@freescale.com>2014-03-17 20:32:08 -0400
committerNitin Garg <nitin.garg@freescale.com>2014-04-16 09:58:02 -0400
commit5b28098e08a824a7761c542b8c8ed9f90a97774d (patch)
tree21ce568ad9b05a68aaf44f4c4561e059dc273782
parentb80a800e9042b78efd8961157fd07760848cd561 (diff)
ENGR00303795-1 ARM: imx6sx: enable USB hsic
- Add USB hsic support for imx6sx - Enable hsic support at imx6sx 17x17 board - Enable usbotg1 and hsic support at imx6sx 19x19 board Signed-off-by: Peter Chen <peter.chen@freescale.com>
-rw-r--r--arch/arm/boot/dts/imx6sx-17x17-arm2.dts9
-rw-r--r--arch/arm/boot/dts/imx6sx-19x19-arm2.dts138
-rw-r--r--arch/arm/boot/dts/imx6sx.dtsi24
3 files changed, 167 insertions, 4 deletions
diff --git a/arch/arm/boot/dts/imx6sx-17x17-arm2.dts b/arch/arm/boot/dts/imx6sx-17x17-arm2.dts
index 55491d9814ad..97bc4b6856cb 100644
--- a/arch/arm/boot/dts/imx6sx-17x17-arm2.dts
+++ b/arch/arm/boot/dts/imx6sx-17x17-arm2.dts
@@ -431,6 +431,15 @@
431 status = "okay"; 431 status = "okay";
432}; 432};
433 433
434&usbh {
435 pinctrl-names = "idle", "active";
436 pinctrl-0 = <&pinctrl_usbh_1>;
437 pinctrl-1 = <&pinctrl_usbh_2>;
438 osc-clkgate-delay = <0x3>;
439 pad-supply = <&vgen1_reg>;
440 status = "okay";
441};
442
434&usbotg1 { 443&usbotg1 {
435 vbus-supply = <&reg_usb_otg1_vbus>; 444 vbus-supply = <&reg_usb_otg1_vbus>;
436 pinctrl-names = "default"; 445 pinctrl-names = "default";
diff --git a/arch/arm/boot/dts/imx6sx-19x19-arm2.dts b/arch/arm/boot/dts/imx6sx-19x19-arm2.dts
index dea59997b85c..d5e666676eef 100644
--- a/arch/arm/boot/dts/imx6sx-19x19-arm2.dts
+++ b/arch/arm/boot/dts/imx6sx-19x19-arm2.dts
@@ -41,6 +41,19 @@
41 status = "disabled"; 41 status = "disabled";
42 }; 42 };
43 43
44 regulators {
45 compatible = "simple-bus";
46
47 reg_usb_otg1_vbus: usb_otg1_vbus {
48 compatible = "regulator-fixed";
49 regulator-name = "usb_otg1_vbus";
50 regulator-min-microvolt = <5000000>;
51 regulator-max-microvolt = <5000000>;
52 gpio = <&gpio1 9 0>;
53 enable-active-high;
54 };
55 };
56
44 memory { 57 memory {
45 reg = <0x80000000 0x40000000>; 58 reg = <0x80000000 0x40000000>;
46 }; 59 };
@@ -75,10 +88,110 @@
75}; 88};
76 89
77&i2c1 { 90&i2c1 {
78 clock-frequency = <100000>; 91 clock-frequency = <100000>;
79 pinctrl-names = "default"; 92 pinctrl-names = "default";
80 pinctrl-0 = <&pinctrl_i2c1_1>; 93 pinctrl-0 = <&pinctrl_i2c1_1>;
81 status = "okay"; 94 status = "okay";
95
96 pmic: pfuze100@08 {
97 compatible = "fsl,pfuze100";
98 reg = <0x08>;
99
100 regulators {
101 sw1a_reg: sw1ab {
102 regulator-min-microvolt = <300000>;
103 regulator-max-microvolt = <1875000>;
104 regulator-boot-on;
105 regulator-always-on;
106 regulator-ramp-delay = <6250>;
107 };
108
109 sw1c_reg: sw1c {
110 regulator-min-microvolt = <300000>;
111 regulator-max-microvolt = <1875000>;
112 regulator-boot-on;
113 regulator-always-on;
114 regulator-ramp-delay = <6250>;
115 };
116
117 sw2_reg: sw2 {
118 regulator-min-microvolt = <800000>;
119 regulator-max-microvolt = <3300000>;
120 regulator-boot-on;
121 regulator-always-on;
122 };
123
124 sw3a_reg: sw3a {
125 regulator-min-microvolt = <400000>;
126 regulator-max-microvolt = <1975000>;
127 regulator-boot-on;
128 regulator-always-on;
129 };
130
131 sw3b_reg: sw3b {
132 regulator-min-microvolt = <400000>;
133 regulator-max-microvolt = <1975000>;
134 regulator-boot-on;
135 regulator-always-on;
136 };
137
138 sw4_reg: sw4 {
139 regulator-min-microvolt = <800000>;
140 regulator-max-microvolt = <3300000>;
141 };
142
143 swbst_reg: swbst {
144 regulator-min-microvolt = <5000000>;
145 regulator-max-microvolt = <5150000>;
146 };
147
148 snvs_reg: vsnvs {
149 regulator-min-microvolt = <1000000>;
150 regulator-max-microvolt = <3000000>;
151 regulator-boot-on;
152 regulator-always-on;
153 };
154
155 vref_reg: vrefddr {
156 regulator-boot-on;
157 regulator-always-on;
158 };
159
160 vgen1_reg: vgen1 {
161 regulator-min-microvolt = <800000>;
162 regulator-max-microvolt = <1550000>;
163 };
164
165 vgen2_reg: vgen2 {
166 regulator-min-microvolt = <800000>;
167 regulator-max-microvolt = <1550000>;
168 };
169
170 vgen3_reg: vgen3 {
171 regulator-min-microvolt = <1800000>;
172 regulator-max-microvolt = <3300000>;
173 regulator-always-on;
174 };
175
176 vgen4_reg: vgen4 {
177 regulator-min-microvolt = <1800000>;
178 regulator-max-microvolt = <3300000>;
179 regulator-always-on;
180 };
181
182 vgen5_reg: vgen5 {
183 regulator-min-microvolt = <1800000>;
184 regulator-max-microvolt = <3300000>;
185 regulator-always-on;
186 };
187
188 vgen6_reg: vgen6 {
189 regulator-min-microvolt = <1800000>;
190 regulator-max-microvolt = <3300000>;
191 regulator-always-on;
192 };
193 };
194 };
82}; 195};
83 196
84&i2c2 { 197&i2c2 {
@@ -245,6 +358,23 @@
245 }; 358 };
246}; 359};
247 360
361&usbh {
362 pinctrl-names = "idle", "active";
363 pinctrl-0 = <&pinctrl_usbh_1>;
364 pinctrl-1 = <&pinctrl_usbh_2>;
365 osc-clkgate-delay = <0x3>;
366 pad-supply = <&vgen1_reg>;
367 status = "okay";
368};
369
370&usbotg1 {
371 vbus-supply = <&reg_usb_otg1_vbus>;
372 pinctrl-names = "default";
373 pinctrl-0 = <&pinctrl_usbotg1_1>;
374 disable-over-current;
375 status = "okay";
376};
377
248&usdhc1 { 378&usdhc1 {
249 pinctrl-names = "default"; 379 pinctrl-names = "default";
250 pinctrl-0 = <&pinctrl_usdhc1_1>; 380 pinctrl-0 = <&pinctrl_usdhc1_1>;
diff --git a/arch/arm/boot/dts/imx6sx.dtsi b/arch/arm/boot/dts/imx6sx.dtsi
index d2444976db5b..6a527c7a02b3 100644
--- a/arch/arm/boot/dts/imx6sx.dtsi
+++ b/arch/arm/boot/dts/imx6sx.dtsi
@@ -531,6 +531,12 @@
531 clocks = <&clks IMX6SX_CLK_USBPHY2>; 531 clocks = <&clks IMX6SX_CLK_USBPHY2>;
532 fsl,anatop = <&anatop>; 532 fsl,anatop = <&anatop>;
533 }; 533 };
534
535 usbphy_nop1: usbphy_nop1 {
536 compatible = "usb-nop-xceiv";
537 clocks = <&clks IMX6SX_CLK_USBPHY1>;
538 clock-names = "main_clk";
539 };
534 }; 540 };
535 541
536 aips-bus@02100000 { /* AIPS2 */ 542 aips-bus@02100000 { /* AIPS2 */
@@ -649,6 +655,9 @@
649 interrupts = <0 40 0x04>; 655 interrupts = <0 40 0x04>;
650 clocks = <&clks IMX6SX_CLK_USBOH3>; 656 clocks = <&clks IMX6SX_CLK_USBOH3>;
651 fsl,usbmisc = <&usbmisc 2>; 657 fsl,usbmisc = <&usbmisc 2>;
658 phy_type = "hsic";
659 fsl,usbphy = <&usbphy_nop1>;
660 fsl,anatop = <&anatop>;
652 status = "disabled"; 661 status = "disabled";
653 }; 662 };
654 663
@@ -1098,6 +1107,21 @@
1098 }; 1107 };
1099 }; 1108 };
1100 1109
1110 usbh {
1111 pinctrl_usbh_1: usbhgrp-1 {
1112 fsl,pins = <
1113 MX6SX_PAD_USB_H_STROBE__USB_H_STROBE 0x40013030
1114 MX6SX_PAD_USB_H_DATA__USB_H_DATA 0x40013030
1115 >;
1116 };
1117
1118 pinctrl_usbh_2: usbhgrp-2 {
1119 fsl,pins = <
1120 MX6SX_PAD_USB_H_STROBE__USB_H_STROBE 0x40017030
1121 >;
1122 };
1123 };
1124
1101 usbotg1 { 1125 usbotg1 {
1102 pinctrl_usbotg1_1: usbotg1grp-1 { 1126 pinctrl_usbotg1_1: usbotg1grp-1 {
1103 fsl,pins = < 1127 fsl,pins = <