]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - android-sdk/kernel-video.git/blobdiff - arch/arm/boot/dts/dra7-evm.dts
ARM: dts: dra7*-evm: update compatible entry for wilink
[android-sdk/kernel-video.git] / arch / arm / boot / dts / dra7-evm.dts
index 56d0aba0335cdbc0aaebe9a2c88b2b9cd08768a9..bae190a9d1f7414829cee94097c1152fba6af807 100644 (file)
@@ -21,7 +21,7 @@
                reg = <0x80000000 0x60000000>; /* 1536 MB */
        };
 
-       reserved-memory {
+       reserved_mem: reserved-memory {
                #address-cells = <1>;
                #size-cells = <1>;
                ranges;
                };
        };
 
+    ocp {
+        gpu: gpu@0x56000000 {
+            gpu0-voltdm = <&voltdm_gpu>;
+        };
+    };
+
        primary_sound: primary_sound {
                compatible = "ti,dra7xx-evm-audio";
                ti,model = "DRA7xx-EVM";
+               ti,always-on;
                ti,audio-codec = <&tlv320aic3106>;
                ti,mcasp-controller = <&mcasp3>;
-               ti,codec-clock-rate = <5644800>;
+               ti,codec-clock-rate = <11289600>;
                clocks = <&atl_clkin2_ck>;
                clock-names = "mclk";
                ti,audio-routing =
                        "LINE1L",               "Line In",
                        "LINE1R",               "Line In";
        };
+
+       btwilink_sound: btwilink_sound {
+               #sound-dai-cells = <0>;
+               compatible = "linux,bt-sco-audio";
+               status = "okay";
+       };
+
+       simple_bt_sco_card: bt_sco_card {
+               compatible = "simple-audio-card";
+               simple-audio-card,name = "DRA7xx-WiLink";
+               simple-audio-card,format = "dsp_a";
+               simple-audio-card,frame-master = <&btwilink_codec>;
+               simple-audio-card,bitclock-master = <&btwilink_codec>;
+               simple-audio-card,frame-inversion;
+
+               simple-audio-card,cpu {
+                       sound-dai = <&mcasp7>;
+               };
+
+               btwilink_codec: simple-audio-card,codec {
+                       sound-dai = <&btwilink_sound>;
+               };
+       };
 };
 
 &dra7_pmx_core {
                >;
        };
 
+       mmc1_pins_sdr12: pinmux_mmc1_sdr12_pins {
+               pinctrl-single,pins = <
+                       0x354 (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_clk.clk */
+                       0x358 (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_cmd.cmd */
+                       0x35c (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_dat0.dat0 */
+                       0x360 (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_dat1.dat1 */
+                       0x364 (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_dat2.dat2 */
+                       0x368 (PIN_INPUT_PULLUP | MUX_MODE0)    /* mmc1_dat3.dat3 */
+               >;
+       };
+
        mmc1_pins_hs: pinmux_mmc1_hs_pins {
                pinctrl-single,pins = <
                        0x354 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_clk.clk */
                >;
        };
 
+       mmc1_pins_sdr25: pinmux_mmc1_sdr25_pins {
+               pinctrl-single,pins = <
+                       0x354 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_clk.clk */
+                       0x358 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_cmd.cmd */
+                       0x35c (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_dat0.dat0 */
+                       0x360 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_dat1.dat1 */
+                       0x364 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_dat2.dat2 */
+                       0x368 (PIN_INPUT_PULLUP | MUX_VIRTUAL_MODE11 | MUX_MODE0)       /* mmc1_dat3.dat3 */
+               >;
+       };
+
+       mmc1_pins_ddr50: pinmux_mmc1_ddr50_pins {
+               pinctrl-single,pins = <
+                       0x354 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_clk.clk */
+                       0x358 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_cmd.cmd */
+                       0x35c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_dat0.dat0 */
+                       0x360 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_dat1.dat1 */
+                       0x364 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_dat2.dat2 */
+                       0x368 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0)      /* mmc1_dat3.dat3 */
+               >;
+       };
+
        mmc2_pins_default: mmc2_pins_default {
                pinctrl-single,pins = <
                        0x9c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */
                        0x98 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
                >;
        };
+
+       mmc2_pins_ddr_3_3v: pinmux_mmc2_ddr_3_3v_pins {
+               pinctrl-single,pins = <
+                       0x9c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a23.mmc2_clk */
+                       0xb0 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */
+                       0xa0 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */
+                       0xa4 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */
+                       0xa8 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */
+                       0xac (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */
+                       0x8c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */
+                       0x90 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */
+                       0x94 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */
+                       0x98 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */
+               >;
+       };
+};
+
+&dra7_iodelay_core {
+       mmc1_iodelay_ddr50_conf: mmc1_iodelay_ddr50_conf {
+               pinctrl-single,pins = <
+                       0x618 (A_DELAY(572) | G_DELAY(540))     /* CFG_MMC1_CLK_IN */
+                       0x624 (A_DELAY(0) | G_DELAY(600))       /* CFG_MMC1_CMD_IN */
+                       0x630 (A_DELAY(403) | G_DELAY(120))     /* CFG_MMC1_DAT0_IN */
+                       0x63c (A_DELAY(23) | G_DELAY(60))       /* CFG_MMC1_DAT1_IN */
+                       0x648 (A_DELAY(25) | G_DELAY(60))       /* CFG_MMC1_DAT2_IN */
+                       0x654 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT3_IN */
+                       0x620 (A_DELAY(1525) | G_DELAY(0))      /* CFG_MMC1_CLK_IN */
+                       0x628 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_CMD_OEN */
+                       0x62c (A_DELAY(55) | G_DELAY(0))        /* CFG_MMC1_CMD_OUT */
+                       0x634 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT0_OEN */
+                       0x638 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT0_OUT */
+                       0x640 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT1_OEN */
+                       0x644 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT1_OUT */
+                       0x64c (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT2_OEN */
+                       0x650 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT2_OUT */
+                       0x658 (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT3_OEN */
+                       0x65c (A_DELAY(0) | G_DELAY(0))         /* CFG_MMC1_DAT3_OUT */
+               >;
+       };
+
+       mmc2_iodelay_ddr_3_3v_conf: mmc2_iodelay_ddr_3_3v_conf {
+               pinctrl-single,pins = <
+                       0x18c (A_DELAY(0) | G_DELAY(120))       /* CFG_GPMC_A19_IN */
+                       0x1a4 (A_DELAY(265) | G_DELAY(360))     /* CFG_GPMC_A20_IN */
+                       0x1b0 (A_DELAY(0) | G_DELAY(120))       /* CFG_GPMC_A21_IN */
+                       0x1bc (A_DELAY(0) | G_DELAY(120))       /* CFG_GPMC_A22_IN */
+                       0x1c8 (A_DELAY(287) | G_DELAY(420))     /* CFG_GPMC_A23_IN */
+                       0x1d4 (A_DELAY(144) | G_DELAY(240))     /* CFG_GPMC_A24_IN */
+                       0x1e0 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A25_IN */
+                       0x1ec (A_DELAY(0) | G_DELAY(120))       /* CFG_GPMC_A26_IN */
+                       0x1f8 (A_DELAY(120) | G_DELAY(180))     /* CFG_GPMC_A27_IN */
+                       0x360 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_CS1_IN */
+                       0x190 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A19_OEN */
+                       0x194 (A_DELAY(174) | G_DELAY(0))       /* CFG_GPMC_A19_OUT */
+                       0x1a8 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A20_OEN */
+                       0x1ac (A_DELAY(168) | G_DELAY(0))       /* CFG_GPMC_A20_OUT */
+                       0x1b4 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A21_OEN */
+                       0x1b8 (A_DELAY(136) | G_DELAY(0))       /* CFG_GPMC_A21_OUT */
+                       0x1c0 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A22_OEN */
+                       0x1c4 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A22_OUT */
+                       0x1d0 (A_DELAY(879) | G_DELAY(0))       /* CFG_GPMC_A23_OUT */
+                       0x1d8 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A24_OEN */
+                       0x1dc (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A24_OUT */
+                       0x1e4 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A25_OEN */
+                       0x1e8 (A_DELAY(34) | G_DELAY(0))        /* CFG_GPMC_A25_OUT */
+                       0x1f0 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A26_OEN */
+                       0x1f4 (A_DELAY(120) | G_DELAY(0))       /* CFG_GPMC_A26_OUT */
+                       0x1fc (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A27_OEN */
+                       0x200 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_A27_OUT */
+                       0x364 (A_DELAY(0) | G_DELAY(0))         /* CFG_GPMC_CS1_OEN */
+                       0x368 (A_DELAY(11) | G_DELAY(0))        /* CFG_GPMC_CS1_OUT */
+               >;
+       };
 };
 
 &i2c1 {
                #interrupt-cells = <2>;
        };
 
+
        tlv320aic3106: tlv320aic3106@18 {
                compatible = "ti,tlv320aic3106";
                reg = <0x18>;
        };
 };
 
-&i2c2 {
+i2c_p3_exp: &i2c2 {
        status = "okay";
        clock-frequency = <400000>;
 
         * is always hardwired.
         */
        cd-gpios = <&gpio6 27 0>;
-       pinctrl-names = "default", "hs";
+       pinctrl-names = "default", "hs", "sdr12", "sdr25", "ddr50";
        pinctrl-0 = <&mmc1_pins_default>;
        pinctrl-1 = <&mmc1_pins_hs>;
+       pinctrl-2 = <&mmc1_pins_sdr12>;
+       pinctrl-3 = <&mmc1_pins_sdr25>;
+       pinctrl-4 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr50_conf>;
+       sd-uhs-ddr50;
+       sd-uhs-sdr25;
+       sd-uhs-sdr12;
 };
 
 &mmc2 {
        status = "okay";
        vmmc-supply = <&evm_3v3_sw>;
        bus-width = <8>;
-       pinctrl-names = "default", "hs";
+       pinctrl-names = "default", "hs", "ddr_3_3v";
        pinctrl-0 = <&mmc2_pins_default>;
        pinctrl-1 = <&mmc2_pins_hs>;
+       pinctrl-2 = <&mmc2_pins_ddr_3_3v &mmc2_iodelay_ddr_3_3v_conf>;
+       mmc-ddr-1_8v;
 };
 
 &mmc4 {
        #address-cells = <1>;
        #size-cells = <0>;
        wlcore: wlcore@0 {
-               compatible = "ti,wlcore";
+               compatible = "ti,wl1835";
                reg = <2>;
                interrupt-parent = <&gpio5>;
                interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
 };
 
 &usb1 {
-       dr_mode = "otg";
+       dr_mode = "peripheral";
 };
 
 &usb2 {
 &mac {
        status = "okay";
        dual_emac;
+       ti,no-idle;
 };
 
 &cpsw_emac0 {
        serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
                1 2 0 0
        >;
+       tx-num-evt = <8>;
+       rx-num-evt = <8>;
+};
+
+&mcasp7 {
+       #sound-dai-cells = <0>;
+
+       status = "okay";
+
+       op-mode = <0>;  /* MCASP_IIS_MODE */
+       tdm-slots = <4>;
+       /* 4 serializer */
+       serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
+               2 1 0 0
+       >;
+       tx-num-evt = <8>;
+       rx-num-evt = <8>;
 };
 
 &mcasp8 {
                remote-endpoint = <&onboardLI>;
        };
 };
+
+#include "dra7xx-jamr3.dtsi"