Linux Audio

Check our new training course

Loading...
v4.17
  1/*
  2 * Copyright 2013 Crystalfontz America, Inc.
  3 * Copyright 2012 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-10057 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-10057 Board";
 21	compatible = "crystalfontz,cfa10057", "crystalfontz,cfa10036", "fsl,imx28";
 22
 23	apb@80000000 {
 24		apbh@80000000 {
 25			pinctrl@80018000 {
 26				usb_pins_cfa10057: usb-10057@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_18bit_pins_cfa10057: lcdif-18bit@0 {
 37					reg = <0>;
 38					fsl,pinmux-ids = <
 39						MX28_PAD_LCD_D00__LCD_D0
 40						MX28_PAD_LCD_D01__LCD_D1
 41						MX28_PAD_LCD_D02__LCD_D2
 42						MX28_PAD_LCD_D03__LCD_D3
 43						MX28_PAD_LCD_D04__LCD_D4
 44						MX28_PAD_LCD_D05__LCD_D5
 45						MX28_PAD_LCD_D06__LCD_D6
 46						MX28_PAD_LCD_D07__LCD_D7
 47						MX28_PAD_LCD_D08__LCD_D8
 48						MX28_PAD_LCD_D09__LCD_D9
 49						MX28_PAD_LCD_D10__LCD_D10
 50						MX28_PAD_LCD_D11__LCD_D11
 51						MX28_PAD_LCD_D12__LCD_D12
 52						MX28_PAD_LCD_D13__LCD_D13
 53						MX28_PAD_LCD_D14__LCD_D14
 54						MX28_PAD_LCD_D15__LCD_D15
 55						MX28_PAD_LCD_D16__LCD_D16
 56						MX28_PAD_LCD_D17__LCD_D17
 57					>;
 58					fsl,drive-strength = <MXS_DRIVE_4mA>;
 59					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 60					fsl,pull-up = <MXS_PULL_DISABLE>;
 61				};
 62
 63				lcdif_pins_cfa10057: lcdif-evk@0 {
 64					reg = <0>;
 65					fsl,pinmux-ids = <
 66						MX28_PAD_LCD_RD_E__LCD_VSYNC
 67						MX28_PAD_LCD_WR_RWN__LCD_HSYNC
 68						MX28_PAD_LCD_RS__LCD_DOTCLK
 69						MX28_PAD_LCD_CS__LCD_ENABLE
 70					>;
 71					fsl,drive-strength = <MXS_DRIVE_4mA>;
 72					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 73					fsl,pull-up = <MXS_PULL_DISABLE>;
 74				};
 75			};
 76
 77			lcdif@80030000 {
 78				pinctrl-names = "default";
 79				pinctrl-0 = <&lcdif_18bit_pins_cfa10057
 80					     &lcdif_pins_cfa10057>;
 81				display = <&display0>;
 82				status = "okay";
 83
 84				display0: display0 {
 85					bits-per-pixel = <32>;
 86					bus-width = <18>;
 87
 88					display-timings {
 89						native-mode = <&timing0>;
 90						timing0: timing0 {
 91							clock-frequency = <30000000>;
 92							hactive = <480>;
 93							vactive = <800>;
 94							hfront-porch = <12>;
 95							hback-porch = <2>;
 96							vfront-porch = <5>;
 97							vback-porch = <3>;
 98							hsync-len = <2>;
 99							vsync-len = <2>;
100							hsync-active = <0>;
101							vsync-active = <0>;
102							de-active = <1>;
103							pixelclk-active = <1>;
104						};
105					};
106				};
107			};
108		};
109
110		apbx@80040000 {
111			lradc@80050000 {
112				fsl,lradc-touchscreen-wires = <4>;
113				status = "okay";
114			};
115
116			pwm: pwm@80064000 {
117				pinctrl-names = "default";
118				pinctrl-0 = <&pwm4_pins_a>;
119				status = "okay";
120			};
121
122			i2c1: i2c@8005a000 {
123				pinctrl-names = "default";
124				pinctrl-0 = <&i2c1_pins_a>;
125				status = "okay";
126			};
127
128			usbphy1: usbphy@8007e000 {
129				status = "okay";
130			};
131		};
132	};
133
134	ahb@80080000 {
135		usb1: usb@80090000 {
136			vbus-supply = <&reg_usb1_vbus>;
137			pinctrl-0 = <&usb1_pins_a>;
138			pinctrl-names = "default";
139			status = "okay";
140		};
141	};
142
143	regulators {
144		compatible = "simple-bus";
145		#address-cells = <1>;
146		#size-cells = <0>;
147
148		reg_usb1_vbus: regulator@0 {
149			compatible = "regulator-fixed";
150			reg = <0>;
151			pinctrl-names = "default";
152			pinctrl-0 = <&usb_pins_cfa10057>;
153			regulator-name = "usb1_vbus";
154			regulator-min-microvolt = <5000000>;
155			regulator-max-microvolt = <5000000>;
156			gpio = <&gpio0 7 1>;
157		};
158	};
159
160	ahb@80080000 {
161		mac0: ethernet@800f0000 {
162			phy-mode = "rmii";
163			pinctrl-names = "default";
164			pinctrl-0 = <&mac0_pins_a>;
165			phy-reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
166			phy-reset-duration = <100>;
167			status = "okay";
168		};
169	};
170
171	backlight {
172		compatible = "pwm-backlight";
173		pwms = <&pwm 4 5000000>;
174		brightness-levels = <0 4 8 16 32 64 128 255>;
175		default-brightness-level = <7>;
176	};
177};
v3.15
  1/*
  2 * Copyright 2013 Crystalfontz America, Inc.
  3 * Copyright 2012 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-10057 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-10057 Board";
 21	compatible = "crystalfontz,cfa10057", "crystalfontz,cfa10036", "fsl,imx28";
 22
 23	apb@80000000 {
 24		apbh@80000000 {
 25			pinctrl@80018000 {
 26				usb_pins_cfa10057: usb-10057@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_18bit_pins_cfa10057: lcdif-18bit@0 {
 37					reg = <0>;
 38					fsl,pinmux-ids = <
 39						MX28_PAD_LCD_D00__LCD_D0
 40						MX28_PAD_LCD_D01__LCD_D1
 41						MX28_PAD_LCD_D02__LCD_D2
 42						MX28_PAD_LCD_D03__LCD_D3
 43						MX28_PAD_LCD_D04__LCD_D4
 44						MX28_PAD_LCD_D05__LCD_D5
 45						MX28_PAD_LCD_D06__LCD_D6
 46						MX28_PAD_LCD_D07__LCD_D7
 47						MX28_PAD_LCD_D08__LCD_D8
 48						MX28_PAD_LCD_D09__LCD_D9
 49						MX28_PAD_LCD_D10__LCD_D10
 50						MX28_PAD_LCD_D11__LCD_D11
 51						MX28_PAD_LCD_D12__LCD_D12
 52						MX28_PAD_LCD_D13__LCD_D13
 53						MX28_PAD_LCD_D14__LCD_D14
 54						MX28_PAD_LCD_D15__LCD_D15
 55						MX28_PAD_LCD_D16__LCD_D16
 56						MX28_PAD_LCD_D17__LCD_D17
 57					>;
 58					fsl,drive-strength = <MXS_DRIVE_4mA>;
 59					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 60					fsl,pull-up = <MXS_PULL_DISABLE>;
 61				};
 62
 63				lcdif_pins_cfa10057: lcdif-evk@0 {
 64					reg = <0>;
 65					fsl,pinmux-ids = <
 66						MX28_PAD_LCD_RD_E__LCD_VSYNC
 67						MX28_PAD_LCD_WR_RWN__LCD_HSYNC
 68						MX28_PAD_LCD_RS__LCD_DOTCLK
 69						MX28_PAD_LCD_CS__LCD_ENABLE
 70					>;
 71					fsl,drive-strength = <MXS_DRIVE_4mA>;
 72					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 73					fsl,pull-up = <MXS_PULL_DISABLE>;
 74				};
 75			};
 76
 77			lcdif@80030000 {
 78				pinctrl-names = "default";
 79				pinctrl-0 = <&lcdif_18bit_pins_cfa10057
 80					     &lcdif_pins_cfa10057>;
 81				display = <&display>;
 82				status = "okay";
 83
 84				display: display {
 85					bits-per-pixel = <32>;
 86					bus-width = <18>;
 87
 88					display-timings {
 89						native-mode = <&timing0>;
 90						timing0: timing0 {
 91							clock-frequency = <30000000>;
 92							hactive = <480>;
 93							vactive = <800>;
 94							hfront-porch = <12>;
 95							hback-porch = <2>;
 96							vfront-porch = <5>;
 97							vback-porch = <3>;
 98							hsync-len = <2>;
 99							vsync-len = <2>;
100							hsync-active = <0>;
101							vsync-active = <0>;
102							de-active = <1>;
103							pixelclk-active = <1>;
104						};
105					};
106				};
107			};
108		};
109
110		apbx@80040000 {
111			lradc@80050000 {
112				fsl,lradc-touchscreen-wires = <4>;
113				status = "okay";
114			};
115
116			pwm: pwm@80064000 {
117				pinctrl-names = "default";
118				pinctrl-0 = <&pwm3_pins_b>;
119				status = "okay";
120			};
121
122			i2c1: i2c@8005a000 {
123				pinctrl-names = "default";
124				pinctrl-0 = <&i2c1_pins_a>;
125				status = "okay";
126			};
127
128			usbphy1: usbphy@8007e000 {
129				status = "okay";
130			};
131		};
132	};
133
134	ahb@80080000 {
135		usb1: usb@80090000 {
136			vbus-supply = <&reg_usb1_vbus>;
137			pinctrl-0 = <&usb1_pins_a>;
138			pinctrl-names = "default";
139			status = "okay";
140		};
141	};
142
143	regulators {
144		compatible = "simple-bus";
145		#address-cells = <1>;
146		#size-cells = <0>;
147
148		reg_usb1_vbus: regulator@0 {
149			compatible = "regulator-fixed";
150			reg = <0>;
151			pinctrl-names = "default";
152			pinctrl-0 = <&usb_pins_cfa10057>;
153			regulator-name = "usb1_vbus";
154			regulator-min-microvolt = <5000000>;
155			regulator-max-microvolt = <5000000>;
156			gpio = <&gpio0 7 1>;
157		};
158	};
159
160	ahb@80080000 {
161		mac0: ethernet@800f0000 {
162			phy-mode = "rmii";
163			pinctrl-names = "default";
164			pinctrl-0 = <&mac0_pins_a>;
165			phy-reset-gpios = <&gpio2 21 0>;
166			phy-reset-duration = <100>;
167			status = "okay";
168		};
169	};
170
171	backlight {
172		compatible = "pwm-backlight";
173		pwms = <&pwm 3 5000000>;
174		brightness-levels = <0 4 8 16 32 64 128 255>;
175		default-brightness-level = <7>;
176	};
177};