summaryrefslogblamecommitdiffstats
path: root/arch/arm/boot/dts/imx28-cfa10049.dts
blob: dd91244d139c2e7c0c499174358b608b5bc31b4d (plain) (tree)





















                                                                                   

                                          
                                                                     

                                                                   













                                                                                        









                                                                                        


                                                                     




                                                                                            





                                                                 

                  





                                                           
 




















                                                                      












                                                                            


                                  























                                                            

                  










                                                        




































                                                                 
  
/*
 * Copyright 2012 Free Electrons
 *
 * The code contained herein is licensed under the GNU General Public
 * License. You may obtain a copy of the GNU General Public License
 * Version 2 or later at the following locations:
 *
 * http://www.opensource.org/licenses/gpl-license.html
 * http://www.gnu.org/copyleft/gpl.html
 */

/*
 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we
 * need to include the CFA-10036 DTS.
 */
/include/ "imx28-cfa10036.dts"

/ {
	model = "Crystalfontz CFA-10049 Board";
	compatible = "crystalfontz,cfa10049", "crystalfontz,cfa10036", "fsl,imx28";

	apb@80000000 {
		apbh@80000000 {
			pinctrl@80018000 {
				pinctrl-names = "default", "default";
				pinctrl-1 = <&hog_pins_cfa10049
					&hog_pins_cfa10049_pullup>;

				hog_pins_cfa10049: hog-10049@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */
						0x1163 /* MX28_PAD_LCD_D22__GPIO_1_22 */
						0x1173 /* MX28_PAD_LCD_D22__GPIO_1_23 */
						0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};

				hog_pins_cfa10049_pullup: hog-10049-pullup@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x2133 /* MX28_PAD_SSP2_D3__GPIO_2_19 */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <1>;
				};

				spi3_pins_cfa10049: spi3-cfa10049@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x0183 /* MX28_PAD_GPMI_RDN__GPIO_0_24 */
						0x01c3 /* MX28_PAD_GPMI_RESETN__GPIO_0_28 */
						0x0113 /* MX28_PAD_GPMI_CE1N__GPIO_0_17 */
						0x01a3 /* MX28_PAD_GPMI_ALE__GPIO_0_26 */
						0x01b3 /* MX28_PAD_GPMI_CLE__GPIO_0_27 */
					>;
					fsl,drive-strength = <1>;
					fsl,voltage = <1>;
					fsl,pull-up = <1>;
				};
			};
		};

		apbx@80040000 {
			i2c1: i2c@8005a000 {
				pinctrl-names = "default";
				pinctrl-0 = <&i2c1_pins_a>;
				status = "okay";
			};

			i2cmux {
				compatible = "i2c-mux-gpio";
				#address-cells = <1>;
				#size-cells = <0>;
				mux-gpios = <&gpio1 22 0 &gpio1 23 0>;
				i2c-parent = <&i2c1>;

				i2c@0 {
					reg = <0>;
				};

				i2c@1 {
					reg = <1>;
				};

				i2c@2 {
					reg = <2>;
				};

				i2c@3 {
					reg = <3>;
					#address-cells = <1>;
					#size-cells = <0>;

					pca9555: pca9555@20 {
						compatible = "nxp,pca9555";
						interrupt-parent = <&gpio2>;
						interrupts = <19 0x2>;
						gpio-controller;
						#gpio-cells = <2>;
						interrupt-controller;
						#interrupt-cells = <2>;
						reg = <0x20>;
					};
				};
			};

			usbphy1: usbphy@8007e000 {
				status = "okay";
			};
		};
	};

	ahb@80080000 {
		usb1: usb@80090000 {
			vbus-supply = <&reg_usb1_vbus>;
			pinctrl-0 = <&usbphy1_pins_a>;
			pinctrl-names = "default";
			status = "okay";
		};
	};

	regulators {
		compatible = "simple-bus";

		reg_usb1_vbus: usb1_vbus {
			compatible = "regulator-fixed";
			regulator-name = "usb1_vbus";
			regulator-min-microvolt = <5000000>;
			regulator-max-microvolt = <5000000>;
			gpio = <&gpio0 7 1>;
		};
	};

	ahb@80080000 {
		mac0: ethernet@800f0000 {
			phy-mode = "rmii";
			pinctrl-names = "default";
			pinctrl-0 = <&mac0_pins_a>;
			phy-reset-gpios = <&gpio2 21 0>;
			phy-reset-duration = <100>;
			status = "okay";
		};
	};

	spi3 {
		compatible = "spi-gpio";
		pinctrl-names = "default";
		pinctrl-0 = <&spi3_pins_cfa10049>;
		status = "okay";
		gpio-sck = <&gpio0 24 0>;
		gpio-mosi = <&gpio0 28 0>;
		cs-gpios = <&gpio0 17 0 &gpio0 26 0 &gpio0 27 0>;
		num-chipselects = <3>;
		#address-cells = <1>;
		#size-cells = <0>;

		gpio5: gpio5@0 {
			compatible = "fairchild,74hc595";
			gpio-controller;
			#gpio-cells = <2>;
			reg = <0>;
			registers-number = <2>;
			spi-max-frequency = <100000>;
		};

		gpio6: gpio6@1 {
			compatible = "fairchild,74hc595";
			gpio-controller;
			#gpio-cells = <2>;
			reg = <1>;
			registers-number = <4>;
			spi-max-frequency = <100000>;
		};

		dac0: dh2228@2 {
			compatible = "rohm,dh2228fv";
			reg = <2>;
			spi-max-frequency = <100000>;
		};
	};
};