Merge branch 'omap5_audio_video-3.8.y' into ti-linux-3.8.y
authorDan Murphy <dmurphy@ti.com>
Tue, 5 Mar 2013 21:49:28 +0000 (15:49 -0600)
committerDan Murphy <dmurphy@ti.com>
Tue, 5 Mar 2013 21:49:28 +0000 (15:49 -0600)
TI-Feature: omap5_audio_video_base
TI-Tree: git://gitorious.ti.com/~a0393947/ti-linux-kernel/audio-video-linux-feature-tree
TI-Branch: omap5_audio_video-3.8.y

* omap5_audio_video-3.8.y: (307 commits)
  arm: dts: ompa5-panda: fix pinmux configuration for hdmi i2c master
  OMAPDSS: HDMI: Add additional DDC SDA vs SCL delay.
  OMAPDSS: omap5 hdmi: Fix i2c master addresses
  OMAPDSS: HDMI: Fix HSync width value for OMAP5 ES2.0
  OMAPDSS: HDMI: Increase M2 divider value
  drm/omap: Add OMAP5 support
  drm/omap: Add PM capabilities
  OMAPDSS: DISPC: Revert to older DISPC Smart Standby mechanism for OMAP5
  hack: omap4/5: dt: change compatible bus type for DSS
  OMAPDSS: HDMI: Update panel in order to avoid audio disable.
  OMAPDSS: HDMI: Update for multichannels audio.
  OMAPDSS: HDMI: Update Audio layout for 6 channels mode
  OMAPDSS: HDMI: Update HDMI audio rate according to ES2.0
  ASoC: OMAP: HDMI: Add support for DT boot
  ASoC: HDMI: CPU-DAI: Correct typo
  ASoC: OMAP: HDMI: Add config support for OMAP5
  ARM: dts: omap4-panda: Add sound node for HDMI
  ARM: dts: omap4-sdp: Add sound support for HDMI
  ARM: dts: omap5-panda: Add HDMI support
  ARM: dts: omap5-evm: Add HDMI support
  ...

Conflicts:
arch/arm/boot/dts/omap4-sdp.dts
arch/arm/boot/dts/omap5-evm.dts
arch/arm/boot/dts/omap5-panda.dts
arch/arm/mach-omap2/board-generic.c
arch/arm/mach-omap2/devices.c

Signed-off-by: Dan Murphy <dmurphy@ti.com>
19 files changed:
1  2 
arch/arm/boot/dts/omap3-beagle-xm.dts
arch/arm/boot/dts/omap4-panda.dts
arch/arm/boot/dts/omap4-sdp.dts
arch/arm/boot/dts/omap4.dtsi
arch/arm/boot/dts/omap5-evm.dts
arch/arm/boot/dts/omap5-panda.dts
arch/arm/boot/dts/omap5.dtsi
arch/arm/boot/dts/twl4030.dtsi
arch/arm/mach-omap2/Makefile
arch/arm/mach-omap2/board-4430sdp.c
arch/arm/mach-omap2/board-generic.c
arch/arm/mach-omap2/board-omap4panda.c
arch/arm/mach-omap2/cclock54xx_data.c
arch/arm/mach-omap2/devices.c
arch/arm/mach-omap2/omap_hwmod_44xx_data.c
arch/arm/mach-omap2/omap_hwmod_54xx_data.c
drivers/base/dd.c
sound/soc/codecs/arizona.c
sound/soc/codecs/wm2200.c

Simple merge
index 65a8d0b90d11f9c39767abf031cab543e061f4cd,8a13640940778a12dd7fc64f804cf94ae5d68b37..0a1ec1791063d2003b5c9233abca65d5529c4a26
                        "HSMIC", "Headset Mic",
                        "Headset Mic", "Headset Mic Bias",
                        "AFML", "Line In",
-                       "AFMR", "Line In";
+                       "AFMR", "Line In",
+                       "Headset Playback", "PDM_DL1",
+                       "Handsfree Playback", "PDM_DL2",
+                       "PDM_UL1", "Capture",
+                       "40122000.mcbsp Playback", "BT_VX_DL",
+                       "BT_VX_UL", "40122000.mcbsp Capture",
+                       "40124000.mcbsp Playback", "MM_EXT_DL",
+                       "MM_EXT_UL", "40124000.mcbsp Capture";
+       };
+       sound_hdmi {
+               compatible = "ti,omap-hdmi-tpd12s015-audio";
+               ti,model = "OMAP4HDMI";
+               ti,hdmi_audio = <&hdmi>;
+               ti,level_shifter = <&tpd12s015>;
        };
 +
 +      /* HS USB Port 1 RESET */
 +      hsusb1_reset: hsusb1_reset_reg {
 +              compatible = "regulator-fixed";
 +              regulator-name = "hsusb1_reset";
 +              regulator-min-microvolt = <3300000>;
 +              regulator-max-microvolt = <3300000>;
 +              gpio = <&gpio2 30 0>;   /* gpio_62 */
 +              startup-delay-us = <70000>;
 +              enable-active-high;
 +      };
 +
 +      /* HS USB Port 1 Power */
 +      hsusb1_power: hsusb1_power_reg {
 +              compatible = "regulator-fixed";
 +              regulator-name = "hsusb1_vbus";
 +              regulator-min-microvolt = <3300000>;
 +              regulator-max-microvolt = <3300000>;
 +              gpio = <&gpio1 1 0>;    /* gpio_1 */
 +              startup-delay-us = <70000>;
 +              enable-active-high;
 +      };
 +
 +      /* HS USB Host PHY on PORT 1 */
 +      hsusb1_phy: hsusb1_phy {
 +              compatible = "usb-nop-xceiv";
 +              reset-supply = <&hsusb1_reset>;
 +              vcc-supply = <&hsusb1_power>;
 +      };
 +
 +      /* hsusb1_phy is clocked by FREF_CLK3 i.e. auxclk3 */
 +      clock_alias {
 +              clock-name = "auxclk3_ck";
 +              clock-alias = "main_clk";
 +              device = <&hsusb1_phy>;
 +      };
  };
  
  &omap4_pmx_core {
  };
  
  /include/ "twl6030.dtsi"
+ /include/ "twl6040.dtsi"
  
  &i2c2 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&i2c2_pins>;
 +
        clock-frequency = <400000>;
  };
  
index b7e7e764a653e5e5552440ee0390101e4f72ef97,b8aa904035b0382ba260312937e51e9cfc199372..d0667342ce6e5e0c2fbe3b62740e9e1e0b807575
        usb-supply = <&vusb>;
  };
  
++
 +&usb_otg_hs {
 +      interface-type = <1>;
 +      mode = <3>;
 +      power = <50>;
 +};
++
+ &dsi1 {
+       lcd {
+               compatible = "tpo,taal";
+               lanes = <
+                       0       /* clk + */
+                       1       /* clk - */
+                       2       /* data1 + */
+                       3       /* data1 - */
+                       4       /* data2 + */
+                       5       /* data2 - */
+               >;
+               gpios = <&gpio4 6 0>;   /* 102, reset */
+       };
+ };
+ &dsi2 {
+       lcd2 {
+               compatible = "tpo,taal";
+               lanes = <
+                       0       /* clk + */
+                       1       /* clk - */
+                       2       /* data1 + */
+                       3       /* data1 - */
+                       4       /* data2 + */
+                       5       /* data2 - */
+               >;
+               gpios = <&gpio4 8 0>;   /* 104, reset */
+       };
+ };
+ &hdmi {
+       tpd12s015: tpd12s015 {
+               compatible = "ti,tpd12s015";
+               gpios = <&gpio2 28 0>,  /* 60, CT CP HPD */
+                       <&gpio2 9 0>,   /* 41, LS OE */
+                       <&gpio2 31 0>;  /* 63, HPD */
+               hdmi {
+                       compatible = "ti,hdmi_panel";
+               };
+       };
+ };
Simple merge
index b546d027b0d6c9bd6778658736e56f9c89c81429,c3959f5899d7bcc2b0a64e11a4d2f9def469566c..2054efe9f357fa066d7e5df9a01fdc4090592a8c
                regulator-max-microvolt = <3000000>;
        };
  
 +      /* HS USB Port 2 RESET */
 +      hsusb2_reset: hsusb2_reset_reg {
 +              compatible = "regulator-fixed";
 +              regulator-name = "hsusb2_reset";
 +              regulator-min-microvolt = <3300000>;
 +              regulator-max-microvolt = <3300000>;
 +              gpio = <&gpio6 13 0>;   /* gpio6_173 HUB_NRESET */
 +              startup-delay-us = <70000>;
 +              enable-active-high;
 +      };
 +
 +      /* HS USB Host PHY on PORT 2 */
 +      hsusb2_phy: hsusb2_phy {
 +              compatible = "usb-nop-xceiv";
 +              reset-supply = <&hsusb2_reset>;
 +      };
 +
 +      /* HS USB Port 3 RESET */
 +      hsusb3_reset: hsusb3_reset_reg {
 +              compatible = "regulator-fixed";
 +              regulator-name = "hsusb3_reset";
 +              regulator-min-microvolt = <3300000>;
 +              regulator-max-microvolt = <3300000>;
 +              gpio = <&gpio6 12 0>;   /* gpio6_172 ETH_NRESET */
 +              startup-delay-us = <70000>;
 +              enable-active-high;
 +      };
 +
 +      /* HS USB Host PHY on PORT 3 */
 +      hsusb3_phy: hsusb3_phy {
 +              compatible = "usb-nop-xceiv";
 +              reset-supply = <&hsusb3_reset>;
 +      };
 +
+       sound {
+               compatible = "ti,abe-twl6040";
+               ti,model = "OMAP5-sEVM";
+               ti,jack-detection = <1>;
+               ti,mclk-freq = <19200000>;
+               ti,mcpdm = <&mcpdm>;
+               ti,dmic = <&dmic>;
+               ti,mcasp = <&mcasp>;
+               ti,mcbsp1 = <&mcbsp1>;
+               ti,mcbsp2 = <&mcbsp2>;
+               ti,aess = <&aess>;
+               ti,twl6040 = <&twl6040>;
+               /* Audio routing */
+               ti,audio-routing =
+                       "Headset Stereophone", "HSOL",
+                       "Headset Stereophone", "HSOR",
+                       "Earphone Spk", "EP",
+                       "Ext Spk", "HFL",
+                       "Ext Spk", "HFR",
+                       "Line Out", "AUXL",
+                       "Line Out", "AUXR",
+                       "HSMIC", "Headset Mic",
+                       "Headset Mic", "Headset Mic Bias",
+                       "MAINMIC", "Main Handset Mic",
+                       "Main Handset Mic", "Main Mic Bias",
+                       "SUBMIC", "Sub Handset Mic",
+                       "Sub Handset Mic", "Main Mic Bias",
+                       "AFML", "Line In",
+                       "AFMR", "Line In",
+                       "DMic", "Digital Mic",
+                       "Digital Mic", "Digital Mic1 Bias",
+                       "Headset Playback", "PDM_DL1",
+                       "Handsfree Playback", "PDM_DL2",
+                       "PDM_UL1", "Capture",
+                       "40122000.mcbsp Playback", "BT_VX_DL",
+                       "BT_VX_UL", "40122000.mcbsp Capture",
+                       "40124000.mcbsp Playback", "MM_EXT_DL",
+                       "MM_EXT_UL", "40124000.mcbsp Capture",
+                       "DMIC0", "omap-dmic-abe.0 Capture",
+                       "omap-dmic-abe.0 Capture", "Digital Mic1 Bias",
+                       "Digital Mic1 Bias", "Digital Mic 0",
+                       "DMIC1", "omap-dmic-abe.1 Capture",
+                       "omap-dmic-abe.1 Capture", "Digital Mic1 Bias",
+                       "Digital Mic1 Bias", "Digital Mic 1",
+                       "DMIC2", "omap-dmic-abe.2 Capture",
+                       "omap-dmic-abe.2 Capture", "Digital Mic1 Bias",
+                       "Digital Mic1 Bias", "Digital Mic 2";
+       };
+       sound_hdmi {
+               compatible = "ti,omap-hdmi-tpd12s015-audio";
+               ti,model = "OMAP5HDMI";
+               ti,hdmi_audio = <&hdmi>;
+               ti,level_shifter = <&tpd12s015>;
+       };
  };
  
  &omap5_pmx_core {
                        &dmic_pins
                        &mcbsp1_pins
                        &mcbsp2_pins
 +                      &usbhost_pins
+                       &lg4591_pins
+                       &dss_hdmi_pins
+                       &tpd12s015_pins
+                       &tca6424a_pins
        >;
  
 +      mmc1_pins: pinmux_mmc1_pins {
 +              pinctrl-single,pins = <
 +                      0x1a2 0x118     /* sdcard_clk.sdcard_clk INPUT PULLUP | MODE0 */
 +                      0x1a4 0x118     /* sdcard_cmd.sdcard_cmd INPUT PULLUP | MODE0 */
 +                      0x1a6 0x118     /* sdcard_data2.sdcard_data2 INPUT PULLUP | MODE0 */
 +                      0x1a8 0x118     /* sdcard_data3.sdcard_data3 INPUT PULLUP | MODE0 */
 +                      0x1aa 0x118     /* sdcard_data0.sdcard_data0 INPUT PULLUP | MODE0 */
 +                      0x1ac 0x118     /* sdcard_data1.sdcard_data1 INPUT PULLUP | MODE0 */
 +              >;
 +      };
 +
 +      mmc2_pins: pinmux_mmc2_pins {
 +              pinctrl-single,pins = <
 +                      0x0 0x118       /* emmc_clk.emmc_clk INPUT PULLUP | MODE0 */
 +                      0x2 0x118       /* emmc_cmd.emmc_cmd INPUT PULLUP | MODE0 */
 +                      0x4 0x118       /* emmc_data0.emmc_data0 INPUT PULLUP | MODE0 */
 +                      0x6 0x118       /* emmc_data1.emmc_data1 INPUT PULLUP | MODE0 */
 +                      0x8 0x118       /* emmc_data2.emmc_data2 INPUT PULLUP | MODE0 */
 +                      0xa 0x118       /* emmc_data3.emmc_data3 INPUT PULLUP | MODE0 */
 +                      0xc 0x118       /* emmc_data4.emmc_data4 INPUT PULLUP | MODE0 */
 +                      0xe 0x118       /* emmc_data5.emmc_data5 INPUT PULLUP | MODE0 */
 +                      0x10 0x118      /* emmc_data6.emmc_data6 INPUT PULLUP | MODE0 */
 +                      0x12 0x118      /* emmc_data7.emmc_data7 INPUT PULLUP | MODE0 */
 +              >;
 +      };
 +
        twl6040_pins: pinmux_twl6040_pins {
                pinctrl-single,pins = <
                        0x18a 0x6       /* perslimbus2_clock.gpio5_145 OUTPUT | MODE6 */
                >;
        };
  
 +      usbhost_pins: pinmux_usbhost_pins {
 +              pinctrl-single,pins = <
 +                      0x84 0x100      /* usbb2_hsic_strobe INPUT | MODE 0 */
 +                      0x86 0x100      /* usbb2_hsic_data INPUT | MODE 0 */
 +
 +                      0x19e 0x100     /* usbb3_hsic_strobe INPUT | MODE 0 */
 +                      0x1a0 0x100     /* usbb3_hsic_data INPUT | MODE 0 */
 +
 +                      0xD4 0x6        /* gpio6_173 OUTPUT | MODE 6 HUB_NRESET */
 +                      0xD6 0x6        /* gpio6_172 OUTPUT | MODE 6 ETH_NRESET */
 +              >;
 +      };
 +
 +        i2c1_pins: pinmux_i2c1_pins {
 +                pinctrl-single,pins = <
 +                        0x1b2 0x118        /* i2c1_scl PULLUP | INPUTENABLE | MODE0 */
 +                        0x1b4 0x118        /* i2c1_sda PULLUP | INPUTENABLE | MODE0 */
 +                >;
 +        };
 +
 +      i2c2_pins: pinmux_i2c2_pins {
 +              pinctrl-single,pins = <
 +                      0x178 0x100        /* i2c2_scl INPUTENABLE | MODE0 */
 +                      0x17a 0x100        /* i2c2_sda INPUTENABLE | MODE0 */
 +              >;
 +      };
 +
 +      i2c3_pins: pinmux_i2c3_pins {
 +              pinctrl-single,pins = <
 +                      0x13a 0x100        /* i2c3_scl INPUTENABLE | MODE0 */
 +                      0x13c 0x100     /* i2c3_sda INPUTENABLE | MODE0 */
 +              >;
 +      };
 +
 +      i2c4_pins: pinmux_i2c4_pins {
 +              pinctrl-single,pins = <
 +                      0xb8 0x100        /* i2c4_scl INPUTENABLE | MODE0 */
 +                      0xba 0x100     /* i2c4_sda INPUTENABLE | MODE0 */
 +              >;
 +      };
 +
 +      i2c5_pins: pinmux_i2c5_pins {
 +              pinctrl-single,pins = <
 +                      0x184 0x100        /* i2c5_scl INPUTENABLE | MODE0 */
 +                      0x186 0x100     /* i2c5_sda INPUTENABLE | MODE0 */
 +              >;
 +      };
 +
 +      mcspi2_pins: pinmux_mcspi2_pins {
 +              pinctrl-single,pins = <
 +                      0xbc 0x100      /*  MCSPI2_CLK INPUTENABLE | MODE0 */
 +                      0xbe 0x100      /*  MCSPI2_SIMO INPUTENABLE | MODE0 */
 +                      0xc0 0x118      /*  MCSPI2_SOMI PULLUP | INPUTENABLE | MODE0*/
 +                      0xc2 0x0        /*  MCSPI2_CS MODE0*/
 +              >;
 +      };
 +
 +      mcspi3_pins: pinmux_mcspi3_pins {
 +              pinctrl-single,pins = <
 +                      0x78 0x101      /*  MCSPI2_SOMI INPUTENABLE | MODE1 */
 +                      0x7a 0x101      /*  MCSPI2_CS INPUTENABLE | MODE1 */
 +                      0x7c 0x101      /*  MCSPI2_SIMO INPUTENABLE | MODE1 */
 +                      0x7e 0x101      /*  MCSPI2_CLK INPUTENABLE | MODE1 */
 +              >;
 +      };
 +
 +      mcspi4_pins: pinmux_mcspi4_pins {
 +              pinctrl-single,pins = <
 +                      0x164 0x101     /*  MCSPI2_CLK INPUTENABLE | MODE1 */
 +                      0x168 0x101     /*  MCSPI2_SIMO INPUTENABLE | MODE1 */
 +                      0x16a 0x101     /*  MCSPI2_SOMI INPUTENABLE | MODE1 */
 +                      0x16c 0x101     /*  MCSPI2_CS INPUTENABLE | MODE1 */
 +              >;
 +      };
++
+       lg4591_pins: pinmux_lg4591_pins {
+               pinctrl-single,pins = <
+                       0xf2 0x8        /* perslimbus2_clock.gpio6_183 OUTPUT PULLDOWN | MODE0 */
+               >;
+       };
+       dss_hdmi_pins: pinmux_dss_hdmi_pins {
+               pinctrl-single,pins = <
+                       0x0fc 0x118     /* hdmi_cec.hdmi_cec INPUT PULLUP | MODE 0 */
+                       0x100 0x118     /* hdmi_scl.hdmi_scl INPUT PULLUP | MODE 0 */
+                       0x102 0x118     /* hdmi_sda.hdmi_sda INPUT PULLUP | MODE 0 */
+               >;
+       };
+       tpd12s015_pins: pinmux_tpd12s015_pins {
+               pinctrl-single,pins = <
+                       0x0fe 0x116     /* hdmi_hpd.gpio7_193 INPUT PULLDOWN | MODE6 */
+               >;
+       };
+       tca6424a_pins: pinmux_tca6424a_pins {
+               pinctrl-single,pins = <
+                       0x186 0x100     /* i2c5_scl.i2c5_scl INPUT | MODE0 */
+                       0x188 0x100     /* i2c5_sda.i2c5_sda INPUT | MODE0 */
+               >;
+       };
  };
  
  &mmc1 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mmc1_pins>;
        vmmc-supply = <&vmmcsd_fixed>;
+       vmmc-aux-supply = <&ldo9_reg>;
        bus-width = <4>;
 +      cd-gpios = <&gpio3 3 0>; /* gpio 67 */
  };
  
  &mmc2 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mmc2_pins>;
        vmmc-supply = <&vmmcsd_fixed>;
+       vmmc-aux-supply = <&ldo9_reg>;
        bus-width = <8>;
        ti,non-removable;
  };
  };
  
  &i2c5 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&i2c5_pins>;
 +      clock-frequency = <400000>;
++
+       tca6424a: tca6424a@22 {
+               compatible = "ti,tca6424a";
+               reg = <0x22>;
+               gpio-controller;
+               #gpio-cells = <2>;
+       };
  };
  
  &keypad {
  };
  
  /include/ "palmas.dtsi"
 -
 +
 +&mcspi1 {
 +
 +};
 +
 +&mcspi2 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mcspi2_pins>;
 +};
 +
 +&mcspi3 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mcspi3_pins>;
 +};
 +
 +&mcspi4 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mcspi4_pins>;
 +};
++
+ /include/ "twl6040.dtsi"
+ &dsi1 {
+       lcd {
+               compatible = "ti,lg4591";
+               lanes = <
+                       0       /* clk + */
+                       1       /* clk - */
+                       2       /* data1 + */
+                       3       /* data1 - */
+                       4       /* data2 + */
+                       5       /* data2 - */
+                       6       /* data3 + */
+                       7       /* data3 - */
+                       8       /* data4 + */
+                       9       /* data4 - */
+               >;
+               vdds_foo-supply = <&ldo2_reg>;
+               gpios = <&gpio6 23 0>;  /* 183, reset */
+       };
+ };
+ &hdmi {
+       tpd12s015: tpd12s015 {
+               compatible = "ti,tpd12s015";
+               gpios = <&tca6424a 0 0>,        /* TCA6424A P01, CT_CP_HDP */
+                       <&tca6424a 1 0>,        /* TCA6424A P00, LS_OE*/
+                       <&gpio7 1 0>;           /* 193, HPD */
+               hdmi-monitor {
+                       compatible = "ti,hdmi_panel";
+               };
+       };
+ };
index cccfa78a3541d93134dbc0152543a9662d7cbf9f,1836b9d4685a8f0a8d6ab3bdf2a9a3e5567a2f0b..d2c98ace183dc6d9c53e283f35a088700aa28c66
   * it under the terms of the GNU General Public License version 2 as
   * published by the Free Software Foundation.
   */
 -/dts-v1/;
 -
 -/include/ "omap5.dtsi"
 +/include/ "omap5-evm.dts"
  
+ / {
+       model = "TI OMAP5 EVM board";
+       compatible = "ti,omap5-panda", "ti,omap5";
+       memory {
+               device_type = "memory";
+               reg = <0x80000000 0x80000000>; /* 2 GB */
+       };
+       vmmcsd_fixed: fixedregulator-mmcsd {
+               compatible = "regulator-fixed";
+               regulator-name = "vmmcsd_fixed";
+               regulator-min-microvolt = <3000000>;
+               regulator-max-microvolt = <3000000>;
+       };
+       sound {
+               compatible = "ti,abe-twl6040";
+               ti,model = "PandaBoard5";
+               ti,jack-detection = <1>;
+               ti,mclk-freq = <19200000>;
+               ti,mcpdm = <&mcpdm>;
+               ti,mcbsp1 = <&mcbsp1>;
+               ti,mcbsp2 = <&mcbsp2>;
+               ti,aess = <&aess>;
+               ti,twl6040 = <&twl6040>;
+               /* Audio routing */
+               ti,audio-routing =
+                       "Headset Stereophone", "HSOL",
+                       "Headset Stereophone", "HSOR",
+                       "Line Out", "AUXL",
+                       "Line Out", "AUXR",
+                       "HSMIC", "Headset Mic",
+                       "Headset Mic", "Headset Mic Bias",
+                       "AFML", "Line In",
+                       "AFMR", "Line In",
+                       "Headset Playback", "PDM_DL1",
+                       "PDM_UL1", "Capture",
+                       "40122000.mcbsp Playback", "BT_VX_DL",
+                       "BT_VX_UL", "40122000.mcbsp Capture",
+                       "40124000.mcbsp Playback", "MM_EXT_DL",
+                       "MM_EXT_UL", "40124000.mcbsp Capture";
+       };
+       sound_hdmi {
+               compatible = "ti,omap-hdmi-tpd12s015-audio";
+               ti,model = "OMAP5HDMI";
+               ti,hdmi_audio = <&hdmi>;
+               ti,level_shifter = <&tpd12s015>;
+       };
+ };
 +/* card detect gpio is different for mmc1 / micro sd card slot */
 +&mmc1_pins {
 +              pinctrl-single,pins = <
 +                      0x1a2 0x118     /* sdcard_clk.sdcard_clk INPUT PULLUP | MODE0 */
 +                      0x1a4 0x118     /* sdcard_cmd.sdcard_cmd INPUT PULLUP | MODE0 */
 +                      0x1a6 0x118     /* sdcard_data2.sdcard_data2 INPUT PULLUP | MODE0 */
 +                      0x1a8 0x118     /* sdcard_data3.sdcard_data3 INPUT PULLUP | MODE0 */
 +                      0x1aa 0x118     /* sdcard_data0.sdcard_data0 INPUT PULLUP | MODE0 */
 +                      0x1ac 0x118     /* sdcard_data1.sdcard_data1 INPUT PULLUP | MODE0 */
 +                      0x194 0x106     /* uart6_rts.gpio5_152 INPUT | MODE6 */
 +              >;
 +      };
 +
  &mmc1 {
 +      pinctrl-names = "default";
 +      pinctrl-0 = <&mmc1_pins>;
        vmmc-supply = <&vmmcsd_fixed>;
 -      vmmc-aux-supply = <&ldo9_reg>;
        bus-width = <4>;
 +      cd-gpios = <&gpio5 24 0>; /* gpio 152 */
  };
+ &mmc2 {
+       vmmc-supply = <&vmmcsd_fixed>;
+       vmmc-aux-supply = <&ldo9_reg>;
+       bus-width = <8>;
+       ti,non-removable;
+ };
+ &mmc3 {
+       bus-width = <4>;
+       ti,non-removable;
+ };
+ &mmc4 {
+       status = "disabled";
+ };
+ &mmc5 {
+       status = "disabled";
+ };
+ &i2c1 {
+       clock-frequency = <400000>;
+       palmas: palmas@48 {
+               reg = <0x48>;
+               /* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */
+               interrupts = <0 7 4>; /* IRQ_SYS_1N cascaded to gic */
+               interrupt-parent = <&gic>;
+       };
+       twl6040: twl@4b {
+               compatible = "ti,twl6040";
+               interrupts = <0 119 4>; /* IRQ_SYS_2N cascaded to gic */
+               interrupt-parent = <&gic>;
+               ti,audpwron-gpio = <&gpio5 13 0>;  /* gpio line 141 */
+               vio-supply = <&smps7_reg>;
+               v2v1-supply = <&smps9_reg>;
+               enable-active-high;
+       };
+ };
+ &i2c5 {
+       tca6424a: tca6424a@22 {
+               compatible = "ti,tca6424a";
+               reg = <0x22>;
+               gpio-controller;
+               #gpio-cells = <2>;
+       };
+ };
+ &omap5_pmx_core {
+       pinctrl-names = "default";
+       pinctrl-0 = <
+                       &twl6040_pins
+                       &mcpdm_pins
+                       &dmic_pins
+                       &mcbsp1_pins
+                       &mcbsp2_pins
+                       &dss_hdmi_pins
+                       &tpd12s015_pins
+                       &tca6424a_pins
+       >;
+       twl6040_pins: pinmux_twl6040_pins {
+               pinctrl-single,pins = <
+                       0x17e 0x6       /* mcspi1_somi.gpio5_141 OUTPUT | MODE6 */
+               >;
+       };
+       mcpdm_pins: pinmux_mcpdm_pins {
+               pinctrl-single,pins = <
+                       0x142 0x108     /* abe_clks.abe_clks INPUT PULLDOWN | MODE0 */
+                       0x15c 0x108     /* abemcpdm_ul_data.abemcpdm_ul_data INPUT PULLDOWN | MODE0 */
+                       0x15e 0x108     /* abemcpdm_dl_data.abemcpdm_dl_data INPUT PULLDOWN | MODE0 */
+                       0x160 0x118     /* abemcpdm_frame.abemcpdm_frame INPUT PULLUP | MODE0 */
+                       0x162 0x108     /* abemcpdm_lb_clk.abemcpdm_lb_clk INPUT PULLDOWN | MODE0 */
+               >;
+       };
+       dmic_pins: pinmux_dmic_pins {
+               pinctrl-single,pins = <
+                       0x144 0x100     /* abedmic_din1.abedmic_din1 INPUT | MODE0 */
+                       0x146 0x100     /* abedmic_din2.abedmic_din2 INPUT | MODE0 */
+                       0x148 0x100     /* abedmic_din3.abedmic_din3 INPUT | MODE0 */
+                       0x14a 0         /* abedmic_clk1.abedmic_clk1 OUTPUT | MODE0 */
+               >;
+       };
+       mcbsp1_pins: pinmux_mcbsp1_pins {
+               pinctrl-single,pins = <
+                       0x14c 0x101     /* abedmic_clk2.abemcbsp1_fsx INPUT | MODE1 */
+                       0x14e 0x9       /* abedmic_clk3.abemcbsp1_dx OUTPUT PULLDOWN | MODE1 */
+                       0x150 0x101     /* abeslimbus1_clock.abemcbsp1_clkx INPUT | MODE0 */
+                       0x152 0x109     /* abeslimbus1_data.abemcbsp1_dr INPUT PULLDOWN | MODE1 */
+               >;
+       };
+       mcbsp2_pins: pinmux_mcbsp2_pins {
+               pinctrl-single,pins = <
+                       0x154 0x108     /* abemcbsp2_dr.abemcbsp2_dr INPUT PULLDOWN | MODE0 */
+                       0x156 0x8       /* abemcbsp2_dx.abemcbsp2_dx OUTPUT PULLDOWN | MODE0 */
+                       0x158 0x100     /* abemcbsp2_fsx.abemcbsp2_fsx INPUT | MODE0 */
+                       0x15a 0x100     /* abemcbsp2_clkx.abemcbsp2_clkx INPUT | MODE0 */
+               >;
+       };
+       dss_hdmi_pins: pinmux_dss_hdmi_pins {
+               pinctrl-single,pins = <
+                       0x0fc 0x118     /* hdmi_cec.hdmi_cec INPUT PULLUP | MODE 0 */
+                       0x100 0x100     /* hdmi_scl.hdmi_scl INPUT | MODE 0 */
+                       0x102 0x100     /* hdmi_sda.hdmi_sda INPUT | MODE 0 */
+               >;
+       };
+       tpd12s015_pins: pinmux_tpd12s015_pins {
+               pinctrl-single,pins = <
+                       0x0fe 0x116     /* hdmi_hpd.gpio7_193 INPUT PULLDOWN | MODE6 */
+               >;
+       };
+       tca6424a_pins: pinmux_tca6424a_pins {
+               pinctrl-single,pins = <
+                       0x186 0x100     /* i2c5_scl.i2c5_scl INPUT | MODE0 */
+                       0x188 0x100     /* i2c5_sda.i2c5_sda INPUT | MODE0 */
+               >;
+       };
+ };
+ &hdmi {
+       tpd12s015: tpd12s015 {
+               compatible = "ti,tpd12s015";
+               gpios = <&tca6424a 0 0>,        /* TCA6424A P01, CT_CP_HDP */
+                       <&tca6424a 1 0>,        /* TCA6424A P00, LS_OE*/
+                       <&gpio7 1 0>;           /* 193, HPD */
+               hdmi-monitor {
+                       compatible = "ti,hdmi_panel";
+               };
+       };
+ };
+ /include/ "palmas.dtsi"
+ /include/ "twl6040.dtsi"
Simple merge
Simple merge
Simple merge
Simple merge
index 8202b7f24d96df6ca8fb1db96016a5e62bde808d,4b67a0e0b60770b8e1271ac2c15a059c76b47a09..76e8f035daa2fbc1477b0857f287f00e3113f39e
@@@ -105,22 -42,7 +105,24 @@@ static void __init omap_generic_init(vo
  
        of_platform_populate(NULL, omap_dt_match_table, NULL, NULL);
  
+       omapdss_init_of();
++
 +      /* create clock aliases based on 'clock_alias' nodes */
 +      for_each_node_by_name(np, "clock_alias") {
 +              omap_create_clk_alias(np);
 +              of_node_put(np);
 +      }
 +
 +      /*
 +       * HACK: call display setup code for selected boards to enable omapdss.
 +       * This will be removed when omapdss supports DT.
 +       */
 +      if (of_machine_is_compatible("ti,omap4-panda"))
 +              omap4_panda_display_init_of();
 +      else if (of_machine_is_compatible("ti,omap4-sdp"))
 +              omap_4430sdp_display_init_of();
 +      else if (of_machine_is_compatible("ti,omap5"))
 +              omap_sata_init();
  }
  
  #ifdef CONFIG_SOC_OMAP2420
index a0d265dcc9135a6265f3697b2b19baa404722ca5,6a5559f3f1f88ee3311f0033bdeb6c4f2d4d409e..4f6f130749ace2886038f0151ae8a8cc8d09657b
@@@ -215,15 -136,23 +216,15 @@@ static struct platform_device *panda_de
        &leds_gpio,
        &wl1271_device,
        &panda_abe_audio,
-       &panda_hdmi_audio_codec,
+       &panda_spdif_dit_codec,
        &btwilink_device,
 +      &hsusb1_phy_device,
 +      &hsusb1_power_device,
 +      &hsusb1_reset_device,
  };
  
 -static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
 +static struct usbhs_omap_platform_data usbhs_bdata __initdata = {
        .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
 -      .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
 -      .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
 -      .phy_reset  = false,
 -      .reset_gpio_port[0]  = -EINVAL,
 -      .reset_gpio_port[1]  = -EINVAL,
 -      .reset_gpio_port[2]  = -EINVAL
 -};
 -
 -static struct gpio panda_ehci_gpios[] __initdata = {
 -      { GPIO_HUB_POWER,       GPIOF_OUT_INIT_LOW,  "hub_power"  },
 -      { GPIO_HUB_NRESET,      GPIOF_OUT_INIT_LOW,  "hub_nreset" },
  };
  
  static void __init omap4_ehci_init(void)
Simple merge
index b6cc233214d75fee1bcf37ab47a68e692cd4b33d,aea0179422f89b697d5db5e4eed7cfde51ec892b..26bedba2d9806822a14cd5287183cf96114ec5bf
@@@ -764,8 -742,7 +786,8 @@@ static int __init omap2_init_devices(vo
        omap_init_mbox();
        /* If dtb is there, the devices will be created dynamically */
        if (!of_have_populated_dt()) {
 +              omap_init_control_usb();
+               omap_init_aess();
                omap_init_dmic();
                omap_init_mcpdm();
                omap_init_mcspi();
Simple merge
Simple merge
Simple merge