diff options
author | Maxime Ripard <maxime.ripard@free-electrons.com> | 2013-01-26 00:40:37 -0500 |
---|---|---|
committer | Shawn Guo <shawn.guo@linaro.org> | 2013-01-26 00:40:37 -0500 |
commit | e0f7d905242f5eedc4801ce588f7f588f4ec57cb (patch) | |
tree | 21199a9f950194f08ec8c3122abe245ca16819d9 | |
parent | da021ee3a069b897833f737d86a343b860ad7a54 (diff) |
ARM: mxs: dt: Add Crystalfontz CFA-10037 device tree support
The CFA-10037 is another expansion board for the CFA-10036 module, with
only a USB Host, a Ethernet device and a lot of gpios.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
-rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx28-cfa10037.dts | 77 | ||||
-rw-r--r-- | arch/arm/mach-mxs/mach-mxs.c | 8 |
3 files changed, 86 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index e44da40d984f..f9912f67cb4b 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -95,6 +95,7 @@ dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \ | |||
95 | imx28-apf28dev.dtb \ | 95 | imx28-apf28dev.dtb \ |
96 | imx28-apx4devkit.dtb \ | 96 | imx28-apx4devkit.dtb \ |
97 | imx28-cfa10036.dtb \ | 97 | imx28-cfa10036.dtb \ |
98 | imx28-cfa10037.dtb \ | ||
98 | imx28-cfa10049.dtb \ | 99 | imx28-cfa10049.dtb \ |
99 | imx28-evk.dtb \ | 100 | imx28-evk.dtb \ |
100 | imx28-m28evk.dtb \ | 101 | imx28-m28evk.dtb \ |
diff --git a/arch/arm/boot/dts/imx28-cfa10037.dts b/arch/arm/boot/dts/imx28-cfa10037.dts new file mode 100644 index 000000000000..c2ef3a3d655e --- /dev/null +++ b/arch/arm/boot/dts/imx28-cfa10037.dts | |||
@@ -0,0 +1,77 @@ | |||
1 | /* | ||
2 | * Copyright 2012 Free Electrons | ||
3 | * | ||
4 | * The code contained herein is licensed under the GNU General Public | ||
5 | * License. You may obtain a copy of the GNU General Public License | ||
6 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | |||
12 | /* | ||
13 | * The CFA-10049 is an expansion board for the CFA-10036 module, thus we | ||
14 | * need to include the CFA-10036 DTS. | ||
15 | */ | ||
16 | /include/ "imx28-cfa10036.dts" | ||
17 | |||
18 | / { | ||
19 | model = "Crystalfontz CFA-10037 Board"; | ||
20 | compatible = "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28"; | ||
21 | |||
22 | apb@80000000 { | ||
23 | apbh@80000000 { | ||
24 | pinctrl@80018000 { | ||
25 | pinctrl-names = "default", "default"; | ||
26 | pinctrl-1 = <&hog_pins_cfa10037>; | ||
27 | |||
28 | hog_pins_cfa10037: hog-10037@0 { | ||
29 | reg = <0>; | ||
30 | fsl,pinmux-ids = < | ||
31 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ | ||
32 | 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ | ||
33 | >; | ||
34 | fsl,drive-strength = <0>; | ||
35 | fsl,voltage = <1>; | ||
36 | fsl,pull-up = <0>; | ||
37 | }; | ||
38 | }; | ||
39 | }; | ||
40 | |||
41 | apbx@80040000 { | ||
42 | usbphy1: usbphy@8007e000 { | ||
43 | status = "okay"; | ||
44 | }; | ||
45 | }; | ||
46 | }; | ||
47 | |||
48 | ahb@80080000 { | ||
49 | usb1: usb@80090000 { | ||
50 | vbus-supply = <®_usb1_vbus>; | ||
51 | pinctrl-0 = <&usbphy1_pins_a>; | ||
52 | pinctrl-names = "default"; | ||
53 | status = "okay"; | ||
54 | }; | ||
55 | |||
56 | mac0: ethernet@800f0000 { | ||
57 | phy-mode = "rmii"; | ||
58 | pinctrl-names = "default"; | ||
59 | pinctrl-0 = <&mac0_pins_a>; | ||
60 | phy-reset-gpios = <&gpio2 21 0>; | ||
61 | phy-reset-duration = <100>; | ||
62 | status = "okay"; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | regulators { | ||
67 | compatible = "simple-bus"; | ||
68 | |||
69 | reg_usb1_vbus: usb1_vbus { | ||
70 | compatible = "regulator-fixed"; | ||
71 | regulator-name = "usb1_vbus"; | ||
72 | regulator-min-microvolt = <5000000>; | ||
73 | regulator-max-microvolt = <5000000>; | ||
74 | gpio = <&gpio0 7 1>; | ||
75 | }; | ||
76 | }; | ||
77 | }; | ||
diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c index c66129b5dd18..19c5aeb20b89 100644 --- a/arch/arm/mach-mxs/mach-mxs.c +++ b/arch/arm/mach-mxs/mach-mxs.c | |||
@@ -395,6 +395,12 @@ static void __init cfa10049_init(void) | |||
395 | update_fec_mac_prop(OUI_CRYSTALFONTZ); | 395 | update_fec_mac_prop(OUI_CRYSTALFONTZ); |
396 | } | 396 | } |
397 | 397 | ||
398 | static void __init cfa10037_init(void) | ||
399 | { | ||
400 | enable_clk_enet_out(); | ||
401 | update_fec_mac_prop(OUI_CRYSTALFONTZ); | ||
402 | } | ||
403 | |||
398 | static void __init apf28_init(void) | 404 | static void __init apf28_init(void) |
399 | { | 405 | { |
400 | enable_clk_enet_out(); | 406 | enable_clk_enet_out(); |
@@ -415,6 +421,8 @@ static void __init mxs_machine_init(void) | |||
415 | m28evk_init(); | 421 | m28evk_init(); |
416 | else if (of_machine_is_compatible("bluegiga,apx4devkit")) | 422 | else if (of_machine_is_compatible("bluegiga,apx4devkit")) |
417 | apx4devkit_init(); | 423 | apx4devkit_init(); |
424 | else if (of_machine_is_compatible("crystalfontz,cfa10037")) | ||
425 | cfa10037_init(); | ||
418 | else if (of_machine_is_compatible("crystalfontz,cfa10049")) | 426 | else if (of_machine_is_compatible("crystalfontz,cfa10049")) |
419 | cfa10049_init(); | 427 | cfa10049_init(); |
420 | else if (of_machine_is_compatible("armadeus,imx28-apf28")) | 428 | else if (of_machine_is_compatible("armadeus,imx28-apf28")) |