]> rtime.felk.cvut.cz Git - linux-imx.git/blobdiff - arch/arm/boot/dts/imx53-voipac.dts
imx53 voipac: Enable PWM backlight control
[linux-imx.git] / arch / arm / boot / dts / imx53-voipac.dts
index 56e8f2dd956cd56a29212cc93de683682ce57b8b..2751325b7430ddfdf04661655d29708a4d981be6 100644 (file)
@@ -17,7 +17,7 @@
        compatible = "fsl,imx53-voipac", "fsl,imx53";
 
        chosen {
-               bootargs = "noinitrd console=ttymxc0,115200 root=/dev/nfs ip=192.168.3.100:192.168.3.125:192.168.3.1:255.255.255.0:lolumad:eth0:off rw nfsroot=192.168.3.125:/tftpboot/buildroot,nolock,tcp";
+               bootargs = "noinitrd console=ttymxc0,115200 root=/dev/nfs ip=192.168.4.100:192.168.4.136:192.168.4.1:255.255.255.0:lolumad:eth0:off rw nfsroot=192.168.4.136:/tftpboot/buildroot,nolock,tcp";
        };
 
        memory@0 {
                        regulator-max-microvolt = <3300000>;
                        regulator-always-on;
                };
+
+               reg_usb_vbus: usb_vbus {
+                       compatible = "regulator-fixed";
+                       regulator-name = "usb_vbus";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio3 31 0>;
+                       enable-active-high;
+                       regulator-always-on;
+               };
+
+       };
+
+       backlight {
+               compatible = "pwm-backlight";
+               pwms = <&pwm2 0 5000000>;       /* Period in nanoseconds */
+               brightness-levels = <0 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96 100>;
+               default-brightness-level = <10>;
        };
 
        display@di0 {
                compatible = "fsl,imx-parallel-display";
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_ipu_disp0_1>;
-               edid = [ 00 ff ff ff ff ff ff 00
-               31 d8 00 00 00 00 00 00
-               05 16 01 03 6d 0c 07 78
-               ea 5e c0 a4 59 4a 98 25
-               20 50 54 00 00 00 1d c0
-               01 01 01 01 01 01 01 01
-               01 01 01 01 01 01 dc 05
-               e0 80 10 10 2d 10 0a 22
-               16 00 7d 46 00 00 00 18
-               00 00 00 ff 00 4c 69 6e
-               75 78 20 23 30 0a 20 20
-               20 20 00 00 00 fd 00 3b
-               3d 17 19 02 00 0a 20 20
-               20 20 20 20 00 00 00 fc
-               00 4c 69 6e 75 78 20 46
-               48 44 0a 20 20 20 00 8b ];
                crtcs = <&ipu 0>;
                interface-pix-fmt = "rgb24";
                status = "okay";
+
+               display-timings {
+                       dt043btft {
+                               /* native-mode; */
+                               clock-frequency = <10000000>;
+                               hactive = <480>;
+                               vactive = <272>;
+                               hback-porch = <2>;
+                               hfront-porch = <2>;
+                               hsync-len = <40>;
+                               vback-porch = <2>;
+                               vfront-porch = <2>;
+                               vsync-len = <10>;
+                               hsync-active = <0>;
+                               vsync-active = <0>;
+                       };
+               };
+       };
+
+       sound {
+               compatible = "fsl,imx53-voipac-wm8711",
+                            "fsl,imx-audio-wm8711";
+               model = "imx53-voipac-wm8711";
+               ssi-controller = <&ssi2>;
+               audio-codec = <&codec>;
+               audio-routing =
+                       "DAC", "Output Mixer";
+               mux-int-port = <2>;
+               mux-ext-port = <5>; /* SSI2 */
+       };
+
+       /* Fixed 12 MHz oscillator */
+       wm8711clk: oscillator {
+               compatible = "fixed-clock";
+               #clock-cells = <1>;
+               clock-frequency = <12000000>;
+               clock-output-names = "wm8711clk";
        };
 };
 
                                /* FEC RST */
                                MX53_PAD_GPIO_12__GPIO4_2       0x80000000
 
+                               /* SPI */
+                               MX53_PAD_EIM_EB2__GPIO2_30      0x80000000
+                               MX53_PAD_EIM_D19__GPIO3_19      0x80000000
+                               MX53_PAD_EIM_A22__GPIO2_16      0x80000000
+                               MX53_PAD_EIM_A21__GPIO2_17      0x80000000
+                               MX53_PAD_EIM_A18__GPIO2_20      0x80000000
+
+                               /* USBH1_PEN */
+                               MX53_PAD_EIM_D31__GPIO3_31      0x80000000
+                               /* MX53_PAD_EIM_D31__USBOH3_USBH1_PWR   0x80000000 */
+                               /* USBH1_OC */
+                               /* MX53_PAD_EIM_D30__USBOH3_USBH1_OC    0x80000000 */
+                               /* MX53_PAD_EIM_D30__GPIO3_30   0x80000000 */
+                               /* USBO_PEN */
+                               /* MX53_PAD_GPIO_7__GPIO1_7     0x80000000 */
+                               /* USBO_OC */
+                               /*MX53_PAD_GPIO_8__GPIO1_8      0x80000000 */
+
+                               /* SD2_CD */
+                               MX53_PAD_EIM_D25__GPIO3_25      0x80000000
+                               /* SD2_WP */
+                               MX53_PAD_EIM_A19__GPIO2_19      0x80000000
                        >;
                };
        };
 
-       disp0 {
-               pinctrl_ipu_disp0_1: ipudisp0grp1 {
-                       fsl,pins = <
-                               MX53_PAD_DI0_DISP_CLK__IPU_DI0_DISP_CLK  0x80000000
-                               MX53_PAD_DI0_PIN15__IPU_DI0_PIN15        0x80000000
-                               MX53_PAD_DI0_PIN2__IPU_DI0_PIN2          0x80000000
-                               MX53_PAD_DI0_PIN3__IPU_DI0_PIN3          0x80000000
-                               MX53_PAD_DISP0_DAT0__IPU_DISP0_DAT_0     0x80000000
-                               MX53_PAD_DISP0_DAT1__IPU_DISP0_DAT_1     0x80000000
-                               MX53_PAD_DISP0_DAT2__IPU_DISP0_DAT_2     0x80000000
-                               MX53_PAD_DISP0_DAT3__IPU_DISP0_DAT_3     0x80000000
-                               MX53_PAD_DISP0_DAT4__IPU_DISP0_DAT_4     0x80000000
-                               MX53_PAD_DISP0_DAT5__IPU_DISP0_DAT_5     0x80000000
-                               MX53_PAD_DISP0_DAT6__IPU_DISP0_DAT_6     0x80000000
-                               MX53_PAD_DISP0_DAT7__IPU_DISP0_DAT_7     0x80000000
-                               MX53_PAD_DISP0_DAT8__IPU_DISP0_DAT_8     0x80000000
-                               MX53_PAD_DISP0_DAT9__IPU_DISP0_DAT_9     0x80000000
-                               MX53_PAD_DISP0_DAT10__IPU_DISP0_DAT_10   0x80000000
-                               MX53_PAD_DISP0_DAT11__IPU_DISP0_DAT_11   0x80000000
-                               MX53_PAD_DISP0_DAT12__IPU_DISP0_DAT_12   0x80000000
-                               MX53_PAD_DISP0_DAT13__IPU_DISP0_DAT_13   0x80000000
-                               MX53_PAD_DISP0_DAT14__IPU_DISP0_DAT_14   0x80000000
-                               MX53_PAD_DISP0_DAT15__IPU_DISP0_DAT_15   0x80000000
-                               MX53_PAD_DISP0_DAT16__IPU_DISP0_DAT_16   0x80000000
-                               MX53_PAD_DISP0_DAT17__IPU_DISP0_DAT_17   0x80000000
-                               MX53_PAD_DISP0_DAT18__IPU_DISP0_DAT_18   0x80000000
-                               MX53_PAD_DISP0_DAT19__IPU_DISP0_DAT_19   0x80000000
-                               MX53_PAD_DISP0_DAT20__IPU_DISP0_DAT_20   0x80000000
-                               MX53_PAD_DISP0_DAT21__IPU_DISP0_DAT_21   0x80000000
-                               MX53_PAD_DISP0_DAT22__IPU_DISP0_DAT_22   0x80000000
-                               MX53_PAD_DISP0_DAT23__IPU_DISP0_DAT_23   0x80000000
-                       >;
-               };
-       };
-
-       i2c1 {
-               pinctrl_i2c1_2: i2c1grp2 {
+       i2c3 {
+               pinctrl_i2c3_2: i2c3grp2 {
                        fsl,pins = <
-                               MX53_PAD_EIM_D21__I2C1_SCL              0xc0000000
-                               MX53_PAD_EIM_D28__I2C1_SDA              0xc0000000
+                               MX53_PAD_GPIO_3__I2C3_SCL       0xc0000000
+                               MX53_PAD_GPIO_6__I2C3_SDA       0xc0000000
                        >;
                };
        };
 
-       i2c3 {
-               pinctrl_i2c3_2: i2c3grp2 {
+       /* Keyboard controller */
+       kpp {
+               pinctrl_kpp_1: kppgrp-1 {
                        fsl,pins = <
-                               MX53_PAD_GPIO_3__I2C3_SCL               0xc0000000
-                               MX53_PAD_GPIO_6__I2C3_SDA               0xc0000000
+                               MX53_PAD_GPIO_9__KPP_COL_6       0xe8
+                               MX53_PAD_GPIO_4__KPP_COL_7       0xe8
+                               MX53_PAD_KEY_COL2__KPP_COL_2     0xe8
+                               MX53_PAD_KEY_COL3__KPP_COL_3     0xe8
+                               MX53_PAD_KEY_COL4__KPP_COL_4     0xe8
+
+                               MX53_PAD_GPIO_2__KPP_ROW_6       0xe0
+                               MX53_PAD_GPIO_5__KPP_ROW_7       0xe0
+                               MX53_PAD_KEY_ROW2__KPP_ROW_2     0xe0
+                               MX53_PAD_KEY_ROW3__KPP_ROW_3     0xe0
+                               MX53_PAD_KEY_ROW4__KPP_ROW_4     0xe0
                        >;
                };
        };
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_i2c3_2>;
        status = "okay";
+
+       codec: wm8711@1a {
+               compatible = "wlf,wm8711";
+               reg = <0x1a>;
+               clocks = <&wm8711clk 0>;
+               VDDA-supply = <&reg_3p3v>;
+               VDDIO-supply = <&reg_3p3v>;
+       };
 };
 
 &fec {
        phy-reset-gpios = <&gpio4 2 0>;
        status = "okay";
 };
+
+&ecspi1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_ecspi1_1>;
+       fsl,spi-num-chipselects = <4>;
+       cs-gpios = <&gpio2 30 0>, <&gpio3 19 0>, <&gpio2 16 0>, <&gpio2 17 0>;
+       status = "okay";
+
+       /* Touchscreen */
+       ads7846@0 {
+               reg = <2>;      /* CS2 */
+               compatible = "ti,ads7846";
+               interrupt-parent = <&gpio2>;
+               interrupts = <20 0>;
+               spi-max-frequency = <1000000>;
+               pendown-gpio = <&gpio2 20 0>;
+               vcc-supply = <&reg_3p3v>;
+
+               ti,x-min = /bits/ 16 <0>;
+               ti,x-max = /bits/ 16 <8000>;
+               ti,y-min = /bits/ 16 <0>;
+               ti,y-max = /bits/ 16 <4800>;
+               ti,x-plate-ohms = /bits/ 16 <300>;
+               ti,y-plate-ohms = /bits/ 16 <600>;
+               ti,pressure-max = /bits/ 16 <255>;
+
+               linux,wakeup;
+       };
+
+       /* Userspace accessible generic SPI device */
+       spidev@0 {
+                 reg = <1>;    /* CS 1 */
+                 compatible = "linux,spidev";
+                 spi-max-frequency = <500000>;
+       };
+};
+
+&kpp {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_kpp_1>;
+       linux,keymap = <
+                       0x0200003b      /* KEY_F1 */
+                       0x0300003c      /* KEY_F2 */
+                       0x0400003d      /* KEY_F3 */
+                       0x0600003e      /* KEY_F4 */
+                       0x0700003f      /* KEY_F5 */
+                       >;
+       keypad,num-rows = <8>;
+       keypad,num-columns = <1>;
+       status = "okay";
+};
+
+&ssi2 {
+       fsl,mode = "i2s-slave";
+       status = "okay";
+};
+
+&audmux {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_audmux_1>; /* SSI1 */
+       status = "okay";
+};
+
+&esdhc2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_esdhc2_1>;
+       cd-gpios = <&gpio3 25 0>;
+       wp-gpios = <&gpio2 19 0>;
+       vmmc-supply = <&reg_3p3v>;
+       status = "okay";
+};
+
+&pwm2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_pwm2_1>;
+       status = "okay";
+};
+
+
+
+/*
+&usbotg {
+       vbus-supply = <&reg_usb_vbus>;
+       disable-over-current;
+       status = "okay";
+       // dr_mode = "host";
+};
+
+&usbh1 {
+       status = "okay";
+};
+*/