0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * Copyright 2012 Free Electrons
0004 */
0005
0006 /dts-v1/;
0007 #include "imx28.dtsi"
0008 #include <dt-bindings/gpio/gpio.h>
0009
0010 / {
0011 model = "Crystalfontz CFA-10036 Board";
0012 compatible = "crystalfontz,cfa10036", "fsl,imx28";
0013
0014 memory@40000000 {
0015 device_type = "memory";
0016 reg = <0x40000000 0x08000000>;
0017 };
0018
0019 apb@80000000 {
0020 apbh@80000000 {
0021 pinctrl@80018000 {
0022 ssd1306_cfa10036: ssd1306-10036@0 {
0023 reg = <0>;
0024 fsl,pinmux-ids = <
0025 MX28_PAD_SSP0_DATA7__GPIO_2_7
0026 >;
0027 fsl,drive-strength = <MXS_DRIVE_4mA>;
0028 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0029 fsl,pull-up = <MXS_PULL_DISABLE>;
0030 };
0031
0032 led_pins_cfa10036: leds-10036@0 {
0033 reg = <0>;
0034 fsl,pinmux-ids = <
0035 MX28_PAD_AUART1_RX__GPIO_3_4
0036 >;
0037 fsl,drive-strength = <MXS_DRIVE_4mA>;
0038 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0039 fsl,pull-up = <MXS_PULL_DISABLE>;
0040 };
0041
0042 usb0_otg_cfa10036: otg-10036@0 {
0043 reg = <0>;
0044 fsl,pinmux-ids = <
0045 MX28_PAD_GPMI_RDY0__USB0_ID
0046 >;
0047 fsl,drive-strength = <MXS_DRIVE_4mA>;
0048 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0049 fsl,pull-up = <MXS_PULL_DISABLE>;
0050 };
0051
0052 mmc_pwr_cfa10036: mmc_pwr_cfa10036@0 {
0053 reg = <0>;
0054 fsl,pinmux-ids = <
0055 0x31c3 /*
0056 MX28_PAD_PWM3__GPIO_3_28 */
0057 >;
0058 fsl,drive-strength = <0>;
0059 fsl,voltage = <1>;
0060 fsl,pull-up = <0>;
0061 };
0062
0063 };
0064
0065 ssp0: spi@80010000 {
0066 compatible = "fsl,imx28-mmc";
0067 pinctrl-names = "default";
0068 pinctrl-0 = <&mmc0_4bit_pins_a
0069 &mmc0_cd_cfg &mmc0_sck_cfg>;
0070 vmmc-supply = <®_vddio_sd0>;
0071 bus-width = <4>;
0072 status = "okay";
0073 };
0074 };
0075
0076 apbx@80040000 {
0077 duart: serial@80074000 {
0078 pinctrl-names = "default";
0079 pinctrl-0 = <&duart_pins_b>;
0080 status = "okay";
0081 };
0082
0083 i2c0: i2c@80058000 {
0084 pinctrl-names = "default";
0085 pinctrl-0 = <&i2c0_pins_b>;
0086 clock-frequency = <400000>;
0087 status = "okay";
0088
0089 ssd1306: oled@3c {
0090 compatible = "solomon,ssd1306fb-i2c";
0091 pinctrl-names = "default";
0092 pinctrl-0 = <&ssd1306_cfa10036>;
0093 reg = <0x3c>;
0094 reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
0095 solomon,height = <32>;
0096 solomon,width = <128>;
0097 solomon,page-offset = <0>;
0098 solomon,com-lrremap;
0099 solomon,com-invdir;
0100 solomon,com-offset = <32>;
0101 };
0102 };
0103
0104 usbphy0: usbphy@8007c000 {
0105 status = "okay";
0106 };
0107 };
0108 };
0109
0110 ahb@80080000 {
0111 usb0: usb@80080000 {
0112 pinctrl-names = "default";
0113 pinctrl-0 = <&usb0_otg_cfa10036>;
0114 dr_mode = "peripheral";
0115 phy_type = "utmi";
0116 status = "okay";
0117 };
0118 };
0119
0120 leds {
0121 compatible = "gpio-leds";
0122 pinctrl-names = "default";
0123 pinctrl-0 = <&led_pins_cfa10036>;
0124
0125 power {
0126 gpios = <&gpio3 4 1>;
0127 default-state = "on";
0128 };
0129 };
0130
0131 reg_vddio_sd0: vddio-sd0 {
0132 compatible = "regulator-fixed";
0133 pinctrl-names = "default";
0134 pinctrl-0 = <&mmc_pwr_cfa10036>;
0135 regulator-name = "vddio-sd0";
0136 regulator-min-microvolt = <3300000>;
0137 regulator-max-microvolt = <3300000>;
0138 gpio = <&gpio3 28 0>;
0139 };
0140 };