diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-01-16 11:12:38 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-01-27 09:21:01 -0500 |
commit | 971488f1149f09fd2fad0e7973780b752809b9f6 (patch) | |
tree | 5561122740456d48884a6fee600bf1023c849028 /arch | |
parent | 208d7baf8085ed639ec896274f1679d4718f2ff3 (diff) |
ARM: imx: initial SolidRun Cubox-i support
Add support for the SolidRun Cubox-i devices. This commit adds similar
basic support as the HummingBoard. Further devices will be supported
in future patches.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/Makefile | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx6dl-cubox-i.dts | 12 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx6q-cubox-i.dts | 16 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx6qdl-cubox-i.dtsi | 143 |
4 files changed, 173 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 875af333c6dc..1eeae00d9d09 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -136,11 +136,13 @@ dtb-$(CONFIG_ARCH_MXC) += \ | |||
136 | imx53-mba53.dtb \ | 136 | imx53-mba53.dtb \ |
137 | imx53-qsb.dtb \ | 137 | imx53-qsb.dtb \ |
138 | imx53-smd.dtb \ | 138 | imx53-smd.dtb \ |
139 | imx6dl-cubox-i.dtb \ | ||
139 | imx6dl-hummingboard.dtb \ | 140 | imx6dl-hummingboard.dtb \ |
140 | imx6dl-sabreauto.dtb \ | 141 | imx6dl-sabreauto.dtb \ |
141 | imx6dl-sabresd.dtb \ | 142 | imx6dl-sabresd.dtb \ |
142 | imx6dl-wandboard.dtb \ | 143 | imx6dl-wandboard.dtb \ |
143 | imx6q-arm2.dtb \ | 144 | imx6q-arm2.dtb \ |
145 | imx6q-cubox-i.dtb \ | ||
144 | imx6q-phytec-pbab01.dtb \ | 146 | imx6q-phytec-pbab01.dtb \ |
145 | imx6q-sabreauto.dtb \ | 147 | imx6q-sabreauto.dtb \ |
146 | imx6q-sabrelite.dtb \ | 148 | imx6q-sabrelite.dtb \ |
diff --git a/arch/arm/boot/dts/imx6dl-cubox-i.dts b/arch/arm/boot/dts/imx6dl-cubox-i.dts new file mode 100644 index 000000000000..58aa8f2b0f26 --- /dev/null +++ b/arch/arm/boot/dts/imx6dl-cubox-i.dts | |||
@@ -0,0 +1,12 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2014 Russell King | ||
3 | */ | ||
4 | /dts-v1/; | ||
5 | |||
6 | #include "imx6dl.dtsi" | ||
7 | #include "imx6qdl-cubox-i.dtsi" | ||
8 | |||
9 | / { | ||
10 | model = "SolidRun Cubox-i Solo/DualLite"; | ||
11 | compatible = "solidrun,cubox-i/dl", "fsl,imx6dl"; | ||
12 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-cubox-i.dts b/arch/arm/boot/dts/imx6q-cubox-i.dts new file mode 100644 index 000000000000..bc5f31e3e892 --- /dev/null +++ b/arch/arm/boot/dts/imx6q-cubox-i.dts | |||
@@ -0,0 +1,16 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2014 Russell King | ||
3 | */ | ||
4 | /dts-v1/; | ||
5 | |||
6 | #include "imx6q.dtsi" | ||
7 | #include "imx6qdl-cubox-i.dtsi" | ||
8 | |||
9 | / { | ||
10 | model = "SolidRun Cubox-i Dual/Quad"; | ||
11 | compatible = "solidrun,cubox-i/q", "fsl,imx6q"; | ||
12 | }; | ||
13 | |||
14 | &sata { | ||
15 | status = "okay"; | ||
16 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qdl-cubox-i.dtsi b/arch/arm/boot/dts/imx6qdl-cubox-i.dtsi new file mode 100644 index 000000000000..64daa3b311f6 --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-cubox-i.dtsi | |||
@@ -0,0 +1,143 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2014 Russell King | ||
3 | */ | ||
4 | #include "imx6qdl-microsom.dtsi" | ||
5 | #include "imx6qdl-microsom-ar8035.dtsi" | ||
6 | |||
7 | / { | ||
8 | ir_recv: ir-receiver { | ||
9 | compatible = "gpio-ir-receiver"; | ||
10 | gpios = <&gpio3 9 1>; | ||
11 | pinctrl-names = "default"; | ||
12 | pinctrl-0 = <&pinctrl_cubox_i_ir>; | ||
13 | }; | ||
14 | |||
15 | regulators { | ||
16 | compatible = "simple-bus"; | ||
17 | |||
18 | reg_3p3v: 3p3v { | ||
19 | compatible = "regulator-fixed"; | ||
20 | regulator-name = "3P3V"; | ||
21 | regulator-min-microvolt = <3300000>; | ||
22 | regulator-max-microvolt = <3300000>; | ||
23 | regulator-always-on; | ||
24 | }; | ||
25 | |||
26 | reg_usbh1_vbus: usb-h1-vbus { | ||
27 | compatible = "regulator-fixed"; | ||
28 | enable-active-high; | ||
29 | gpio = <&gpio1 0 0>; | ||
30 | pinctrl-names = "default"; | ||
31 | pinctrl-0 = <&pinctrl_cubox_i_usbh1_vbus>; | ||
32 | regulator-name = "usb_h1_vbus"; | ||
33 | regulator-min-microvolt = <5000000>; | ||
34 | regulator-max-microvolt = <5000000>; | ||
35 | }; | ||
36 | |||
37 | reg_usbotg_vbus: usb-otg-vbus { | ||
38 | compatible = "regulator-fixed"; | ||
39 | enable-active-high; | ||
40 | gpio = <&gpio3 22 0>; | ||
41 | pinctrl-names = "default"; | ||
42 | pinctrl-0 = <&pinctrl_cubox_i_usbotg_vbus>; | ||
43 | regulator-name = "usb_otg_vbus"; | ||
44 | regulator-min-microvolt = <5000000>; | ||
45 | regulator-max-microvolt = <5000000>; | ||
46 | }; | ||
47 | }; | ||
48 | |||
49 | codec: spdif-transmitter { | ||
50 | compatible = "linux,spdif-dit"; | ||
51 | pinctrl-names = "default"; | ||
52 | pinctrl-0 = <&pinctrl_cubox_i_spdif>; | ||
53 | }; | ||
54 | |||
55 | sound-spdif { | ||
56 | compatible = "fsl,imx-audio-spdif"; | ||
57 | model = "imx-spdif"; | ||
58 | /* IMX6 doesn't implement this yet */ | ||
59 | spdif-controller = <&spdif>; | ||
60 | spdif-out; | ||
61 | }; | ||
62 | }; | ||
63 | |||
64 | &i2c3 { | ||
65 | pinctrl-names = "default"; | ||
66 | pinctrl-0 = <&pinctrl_cubox_i_i2c3>; | ||
67 | |||
68 | status = "okay"; | ||
69 | |||
70 | rtc: pcf8523@68 { | ||
71 | compatible = "nxp,pcf8523"; | ||
72 | reg = <0x68>; | ||
73 | }; | ||
74 | }; | ||
75 | |||
76 | &iomuxc { | ||
77 | cubox_i { | ||
78 | pinctrl_cubox_i_i2c3: cubox-i-i2c3 { | ||
79 | fsl,pins = < | ||
80 | MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1 | ||
81 | MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 | ||
82 | >; | ||
83 | }; | ||
84 | |||
85 | pinctrl_cubox_i_ir: cubox-i-ir { | ||
86 | fsl,pins = < | ||
87 | MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 | ||
88 | >; | ||
89 | }; | ||
90 | |||
91 | pinctrl_cubox_i_spdif: cubox-i-spdif { | ||
92 | fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0>; | ||
93 | }; | ||
94 | |||
95 | pinctrl_cubox_i_usbh1_vbus: cubox-i-usbh1-vbus { | ||
96 | fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x4001b0b0>; | ||
97 | }; | ||
98 | |||
99 | pinctrl_cubox_i_usbotg_vbus: cubox-i-usbotg-vbus { | ||
100 | fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x4001b0b0>; | ||
101 | }; | ||
102 | |||
103 | pinctrl_cubox_i_usdhc2_aux: cubox-i-usdhc2-aux { | ||
104 | fsl,pins = < | ||
105 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 | ||
106 | MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071 | ||
107 | >; | ||
108 | }; | ||
109 | |||
110 | pinctrl_cubox_i_usdhc2: cubox-i-usdhc2 { | ||
111 | fsl,pins = < | ||
112 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 | ||
113 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 | ||
114 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 | ||
115 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 | ||
116 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 | ||
117 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059 | ||
118 | >; | ||
119 | }; | ||
120 | }; | ||
121 | }; | ||
122 | |||
123 | &spdif { | ||
124 | status = "okay"; | ||
125 | }; | ||
126 | |||
127 | &usbh1 { | ||
128 | vbus-supply = <®_usbh1_vbus>; | ||
129 | status = "okay"; | ||
130 | }; | ||
131 | |||
132 | &usbotg { | ||
133 | vbus-supply = <®_usbotg_vbus>; | ||
134 | status = "okay"; | ||
135 | }; | ||
136 | |||
137 | &usdhc2 { | ||
138 | pinctrl-names = "default"; | ||
139 | pinctrl-0 = <&pinctrl_cubox_i_usdhc2_aux &pinctrl_cubox_i_usdhc2>; | ||
140 | vmmc-supply = <®_3p3v>; | ||
141 | cd-gpios = <&gpio1 4 0>; | ||
142 | status = "okay"; | ||
143 | }; | ||