blob: 85aa1cc3ff666ba3ee0c3066bb372499c75209eb [file] [log] [blame]
Thomas Gleixnerfcaf2032019-05-27 08:55:08 +02001// SPDX-License-Identifier: GPL-2.0-or-later
Maxime Ripard330eaaf2012-06-27 10:18:12 +02002/*
3 * Copyright 2012 Free Electrons
Maxime Ripard330eaaf2012-06-27 10:18:12 +02004 */
5
6/dts-v1/;
Lothar Waßmannbc3875f2013-09-19 08:59:48 +02007#include "imx28.dtsi"
Michal Vokáč1ac1d482019-02-08 19:24:48 +01008#include <dt-bindings/gpio/gpio.h>
Maxime Ripard330eaaf2012-06-27 10:18:12 +02009
10/ {
11 model = "Crystalfontz CFA-10036 Board";
12 compatible = "crystalfontz,cfa10036", "fsl,imx28";
13
Marco Franchiad00e082018-01-24 11:22:14 -020014 memory@40000000 {
Fabio Estevam32018d12018-11-26 10:08:56 -020015 device_type = "memory";
Maxime Ripard330eaaf2012-06-27 10:18:12 +020016 reg = <0x40000000 0x08000000>;
17 };
18
19 apb@80000000 {
20 apbh@80000000 {
Maxime Ripardc241d0a2012-11-03 16:59:07 +010021 pinctrl@80018000 {
Alexandre Bellonia74d2ec2013-07-01 15:23:29 +020022 ssd1306_cfa10036: ssd1306-10036@0 {
Maxime Ripard24196d52012-11-03 16:59:08 +010023 reg = <0>;
24 fsl,pinmux-ids = <
Lothar Waßmannbc3875f2013-09-19 08:59:48 +020025 MX28_PAD_SSP0_DATA7__GPIO_2_7
Maxime Ripard24196d52012-11-03 16:59:08 +010026 >;
Lothar Waßmann4191c342013-09-22 14:02:59 +080027 fsl,drive-strength = <MXS_DRIVE_4mA>;
28 fsl,voltage = <MXS_VOLTAGE_HIGH>;
29 fsl,pull-up = <MXS_PULL_DISABLE>;
Maxime Ripard24196d52012-11-03 16:59:08 +010030 };
31
Maxime Ripardc241d0a2012-11-03 16:59:07 +010032 led_pins_cfa10036: leds-10036@0 {
33 reg = <0>;
34 fsl,pinmux-ids = <
Lothar Waßmannbc3875f2013-09-19 08:59:48 +020035 MX28_PAD_AUART1_RX__GPIO_3_4
Maxime Ripardc241d0a2012-11-03 16:59:07 +010036 >;
Lothar Waßmann4191c342013-09-22 14:02:59 +080037 fsl,drive-strength = <MXS_DRIVE_4mA>;
38 fsl,voltage = <MXS_VOLTAGE_HIGH>;
39 fsl,pull-up = <MXS_PULL_DISABLE>;
Maxime Ripardc241d0a2012-11-03 16:59:07 +010040 };
Maxime Ripard17a21632013-06-13 15:43:42 +020041
42 usb0_otg_cfa10036: otg-10036@0 {
43 reg = <0>;
44 fsl,pinmux-ids = <
Lothar Waßmannbc3875f2013-09-19 08:59:48 +020045 MX28_PAD_GPMI_RDY0__USB0_ID
Maxime Ripard17a21632013-06-13 15:43:42 +020046 >;
Lothar Waßmann4191c342013-09-22 14:02:59 +080047 fsl,drive-strength = <MXS_DRIVE_4mA>;
48 fsl,voltage = <MXS_VOLTAGE_HIGH>;
49 fsl,pull-up = <MXS_PULL_DISABLE>;
Maxime Ripard17a21632013-06-13 15:43:42 +020050 };
51
Alexandre Bellonia3f8c562014-05-15 17:12:48 +020052 mmc_pwr_cfa10036: mmc_pwr_cfa10036@0 {
53 reg = <0>;
54 fsl,pinmux-ids = <
55 0x31c3 /*
56 MX28_PAD_PWM3__GPIO_3_28 */
57 >;
58 fsl,drive-strength = <0>;
59 fsl,voltage = <1>;
60 fsl,pull-up = <0>;
61 };
62
Maxime Ripardc241d0a2012-11-03 16:59:07 +010063 };
64
Rob Herring5a2ecf02018-09-13 13:12:29 -050065 ssp0: spi@80010000 {
Maxime Ripard330eaaf2012-06-27 10:18:12 +020066 compatible = "fsl,imx28-mmc";
67 pinctrl-names = "default";
68 pinctrl-0 = <&mmc0_4bit_pins_a
69 &mmc0_cd_cfg &mmc0_sck_cfg>;
Alexandre Bellonia3f8c562014-05-15 17:12:48 +020070 vmmc-supply = <&reg_vddio_sd0>;
Maxime Ripard330eaaf2012-06-27 10:18:12 +020071 bus-width = <4>;
72 status = "okay";
73 };
74 };
75
76 apbx@80040000 {
77 duart: serial@80074000 {
78 pinctrl-names = "default";
79 pinctrl-0 = <&duart_pins_b>;
80 status = "okay";
81 };
Maxime Ripard25d6dd82012-10-31 10:12:54 +010082
83 i2c0: i2c@80058000 {
84 pinctrl-names = "default";
85 pinctrl-0 = <&i2c0_pins_b>;
Maxime Ripardb55cb192013-04-22 12:02:22 +020086 clock-frequency = <400000>;
Maxime Ripard25d6dd82012-10-31 10:12:54 +010087 status = "okay";
88
Maxime Ripardb4009322013-04-22 11:55:55 +020089 ssd1306: oled@3c {
90 compatible = "solomon,ssd1306fb-i2c";
Alexandre Bellonia74d2ec2013-07-01 15:23:29 +020091 pinctrl-names = "default";
92 pinctrl-0 = <&ssd1306_cfa10036>;
Maxime Ripard25d6dd82012-10-31 10:12:54 +010093 reg = <0x3c>;
Michal Vokáč1ac1d482019-02-08 19:24:48 +010094 reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
Maxime Ripardb4009322013-04-22 11:55:55 +020095 solomon,height = <32>;
96 solomon,width = <128>;
97 solomon,page-offset = <0>;
Thomas Niederprüm20400852015-03-31 20:27:11 +020098 solomon,com-lrremap;
99 solomon,com-invdir;
100 solomon,com-offset = <32>;
Maxime Ripard25d6dd82012-10-31 10:12:54 +0100101 };
102 };
Maxime Ripard17a21632013-06-13 15:43:42 +0200103
104 usbphy0: usbphy@8007c000 {
105 status = "okay";
106 };
107 };
108 };
109
110 ahb@80080000 {
111 usb0: usb@80080000 {
112 pinctrl-names = "default";
113 pinctrl-0 = <&usb0_otg_cfa10036>;
Maxime Ripardc8962382013-11-18 15:52:02 +0100114 dr_mode = "peripheral";
115 phy_type = "utmi";
Maxime Ripard17a21632013-06-13 15:43:42 +0200116 status = "okay";
Maxime Ripard330eaaf2012-06-27 10:18:12 +0200117 };
118 };
Maxime Ripardf34ffc92012-06-29 09:39:29 +0200119
120 leds {
121 compatible = "gpio-leds";
Maxime Ripardc241d0a2012-11-03 16:59:07 +0100122 pinctrl-names = "default";
123 pinctrl-0 = <&led_pins_cfa10036>;
Maxime Ripardf34ffc92012-06-29 09:39:29 +0200124
125 power {
126 gpios = <&gpio3 4 1>;
127 default-state = "on";
128 };
129 };
Alexandre Bellonia3f8c562014-05-15 17:12:48 +0200130
131 reg_vddio_sd0: vddio-sd0 {
132 compatible = "regulator-fixed";
133 pinctrl-names = "default";
134 pinctrl-0 = <&mmc_pwr_cfa10036>;
135 regulator-name = "vddio-sd0";
136 regulator-min-microvolt = <3300000>;
137 regulator-max-microvolt = <3300000>;
138 gpio = <&gpio3 28 0>;
139 };
Maxime Ripard330eaaf2012-06-27 10:18:12 +0200140};