Linux Audio

Check our new training course

Linux kernel drivers training

May 6-19, 2025
Register
Loading...
Note: File does not exist in v3.1.
  1/*
  2 * Copyright 2013 Crystalfontz America, Inc.
  3 * Copyright 2013 Free Electrons
  4 *
  5 * The code contained herein is licensed under the GNU General Public
  6 * License. You may obtain a copy of the GNU General Public License
  7 * Version 2 or later at the following locations:
  8 *
  9 * http://www.opensource.org/licenses/gpl-license.html
 10 * http://www.gnu.org/copyleft/gpl.html
 11 */
 12
 13/*
 14 * The CFA-10058 is an expansion board for the CFA-10036 module, thus we
 15 * need to include the CFA-10036 DTS.
 16 */
 17#include "imx28-cfa10036.dts"
 18
 19/ {
 20	model = "Crystalfontz CFA-10058 Board";
 21	compatible = "crystalfontz,cfa10058", "crystalfontz,cfa10036", "fsl,imx28";
 22
 23	apb@80000000 {
 24		apbh@80000000 {
 25			pinctrl@80018000 {
 26				usb_pins_cfa10058: usb-10058@0 {
 27					reg = <0>;
 28					fsl,pinmux-ids = <
 29						MX28_PAD_GPMI_D07__GPIO_0_7
 30					>;
 31					fsl,drive-strength = <MXS_DRIVE_4mA>;
 32					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 33					fsl,pull-up = <MXS_PULL_DISABLE>;
 34				};
 35
 36				lcdif_pins_cfa10058: lcdif-10058@0 {
 37					reg = <0>;
 38					fsl,pinmux-ids = <
 39						MX28_PAD_LCD_RD_E__LCD_VSYNC
 40						MX28_PAD_LCD_WR_RWN__LCD_HSYNC
 41						MX28_PAD_LCD_RS__LCD_DOTCLK
 42						MX28_PAD_LCD_CS__LCD_ENABLE
 43					>;
 44					fsl,drive-strength = <MXS_DRIVE_4mA>;
 45					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 46					fsl,pull-up = <MXS_PULL_DISABLE>;
 47				};
 48			};
 49
 50			lcdif@80030000 {
 51				pinctrl-names = "default";
 52				pinctrl-0 = <&lcdif_24bit_pins_a
 53						 &lcdif_pins_cfa10058>;
 54				display = <&display0>;
 55				status = "okay";
 56
 57				display0: display0 {
 58					bits-per-pixel = <32>;
 59					bus-width = <24>;
 60
 61					display-timings {
 62						native-mode = <&timing0>;
 63						timing0: timing0 {
 64							clock-frequency = <30000000>;
 65							hactive = <800>;
 66							vactive = <480>;
 67							hback-porch = <40>;
 68							hfront-porch = <40>;
 69							vback-porch = <13>;
 70							vfront-porch = <29>;
 71							hsync-len = <8>;
 72							vsync-len = <8>;
 73							hsync-active = <0>;
 74							vsync-active = <0>;
 75							de-active = <1>;
 76							pixelclk-active = <1>;
 77						};
 78					};
 79				};
 80			};
 81		};
 82
 83		apbx@80040000 {
 84			lradc@80050000 {
 85				fsl,lradc-touchscreen-wires = <4>;
 86				status = "okay";
 87			};
 88
 89			pwm: pwm@80064000 {
 90				pinctrl-names = "default";
 91				pinctrl-0 = <&pwm3_pins_b>;
 92				status = "okay";
 93			};
 94
 95			usbphy1: usbphy@8007e000 {
 96				status = "okay";
 97			};
 98		};
 99	};
100
101	ahb@80080000 {
102		usb1: usb@80090000 {
103			vbus-supply = <&reg_usb1_vbus>;
104			pinctrl-0 = <&usb1_pins_a>;
105			pinctrl-names = "default";
106			status = "okay";
107		};
108	};
109
110	regulators {
111		compatible = "simple-bus";
112		#address-cells = <1>;
113		#size-cells = <0>;
114
115		reg_usb1_vbus: regulator@0 {
116			pinctrl-names = "default";
117			pinctrl-0 = <&usb_pins_cfa10058>;
118			compatible = "regulator-fixed";
119			reg = <0>;
120			regulator-name = "usb1_vbus";
121			regulator-min-microvolt = <5000000>;
122			regulator-max-microvolt = <5000000>;
123			gpio = <&gpio0 7 1>;
124		};
125	};
126
127	ahb@80080000 {
128		mac0: ethernet@800f0000 {
129			phy-mode = "rmii";
130			pinctrl-names = "default";
131			pinctrl-0 = <&mac0_pins_a>;
132			phy-reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
133			phy-reset-duration = <100>;
134			status = "okay";
135		};
136	};
137
138	backlight {
139		compatible = "pwm-backlight";
140		pwms = <&pwm 3 5000000>;
141		brightness-levels = <0 4 8 16 32 64 128 255>;
142		default-brightness-level = <6>;
143	};
144};