0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * Copyright 2013 Crystalfontz America, Inc.
0004 * Copyright 2013 Free Electrons
0005 */
0006
0007 /*
0008 * The CFA-10058 is an expansion board for the CFA-10036 module, thus we
0009 * need to include the CFA-10036 DTS.
0010 */
0011 #include "imx28-cfa10036.dts"
0012
0013 / {
0014 model = "Crystalfontz CFA-10058 Board";
0015 compatible = "crystalfontz,cfa10058", "crystalfontz,cfa10036", "fsl,imx28";
0016
0017 apb@80000000 {
0018 apbh@80000000 {
0019 pinctrl@80018000 {
0020 usb_pins_cfa10058: usb-10058@0 {
0021 reg = <0>;
0022 fsl,pinmux-ids = <
0023 MX28_PAD_GPMI_D07__GPIO_0_7
0024 >;
0025 fsl,drive-strength = <MXS_DRIVE_4mA>;
0026 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0027 fsl,pull-up = <MXS_PULL_DISABLE>;
0028 };
0029
0030 lcdif_pins_cfa10058: lcdif-10058@0 {
0031 reg = <0>;
0032 fsl,pinmux-ids = <
0033 MX28_PAD_LCD_RD_E__LCD_VSYNC
0034 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
0035 MX28_PAD_LCD_RS__LCD_DOTCLK
0036 MX28_PAD_LCD_CS__LCD_ENABLE
0037 >;
0038 fsl,drive-strength = <MXS_DRIVE_4mA>;
0039 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0040 fsl,pull-up = <MXS_PULL_DISABLE>;
0041 };
0042 };
0043
0044 lcdif@80030000 {
0045 pinctrl-names = "default";
0046 pinctrl-0 = <&lcdif_24bit_pins_a
0047 &lcdif_pins_cfa10058>;
0048 display = <&display0>;
0049 status = "okay";
0050
0051 display0: display0 {
0052 bits-per-pixel = <32>;
0053 bus-width = <24>;
0054
0055 display-timings {
0056 native-mode = <&timing0>;
0057 timing0: timing0 {
0058 clock-frequency = <30000000>;
0059 hactive = <800>;
0060 vactive = <480>;
0061 hback-porch = <40>;
0062 hfront-porch = <40>;
0063 vback-porch = <13>;
0064 vfront-porch = <29>;
0065 hsync-len = <8>;
0066 vsync-len = <8>;
0067 hsync-active = <0>;
0068 vsync-active = <0>;
0069 de-active = <1>;
0070 pixelclk-active = <1>;
0071 };
0072 };
0073 };
0074 };
0075 };
0076
0077 apbx@80040000 {
0078 lradc@80050000 {
0079 fsl,lradc-touchscreen-wires = <4>;
0080 status = "okay";
0081 };
0082
0083 pwm: pwm@80064000 {
0084 pinctrl-names = "default";
0085 pinctrl-0 = <&pwm3_pins_b>;
0086 status = "okay";
0087 };
0088
0089 usbphy1: usbphy@8007e000 {
0090 status = "okay";
0091 };
0092 };
0093 };
0094
0095 ahb@80080000 {
0096 usb1: usb@80090000 {
0097 vbus-supply = <®_usb1_vbus>;
0098 pinctrl-0 = <&usb1_pins_a>;
0099 pinctrl-names = "default";
0100 status = "okay";
0101 };
0102 };
0103
0104 regulators {
0105 compatible = "simple-bus";
0106 #address-cells = <1>;
0107 #size-cells = <0>;
0108
0109 reg_usb1_vbus: regulator@0 {
0110 pinctrl-names = "default";
0111 pinctrl-0 = <&usb_pins_cfa10058>;
0112 compatible = "regulator-fixed";
0113 reg = <0>;
0114 regulator-name = "usb1_vbus";
0115 regulator-min-microvolt = <5000000>;
0116 regulator-max-microvolt = <5000000>;
0117 gpio = <&gpio0 7 1>;
0118 };
0119 };
0120
0121 ahb@80080000 {
0122 mac0: ethernet@800f0000 {
0123 phy-mode = "rmii";
0124 pinctrl-names = "default";
0125 pinctrl-0 = <&mac0_pins_a>;
0126 phy-reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
0127 phy-reset-duration = <100>;
0128 status = "okay";
0129 };
0130 };
0131
0132 backlight {
0133 compatible = "pwm-backlight";
0134 pwms = <&pwm 3 5000000>;
0135 brightness-levels = <0 4 8 16 32 64 128 255>;
0136 default-brightness-level = <6>;
0137 };
0138 };