Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / arm / boot / dts / omap3-cm-t3x30.dtsi
diff --git a/kernel/arch/arm/boot/dts/omap3-cm-t3x30.dtsi b/kernel/arch/arm/boot/dts/omap3-cm-t3x30.dtsi
new file mode 100644 (file)
index 0000000..046cd77
--- /dev/null
@@ -0,0 +1,130 @@
+/*
+ * Common support for CompuLab CM-T3x30 CoMs
+ */
+
+#include "omap3-cm-t3x.dtsi"
+
+/ {
+       cpus {
+               cpu@0 {
+                       cpu0-supply = <&vcc>;
+               };
+       };
+
+       sound {
+               compatible = "ti,omap-twl4030";
+               ti,model = "cm-t35";
+
+               ti,mcbsp = <&mcbsp2>;
+       };
+};
+
+&omap3_pmx_core {
+
+       smsc1_pins: pinmux_smsc1_pins {
+               pinctrl-single,pins = <
+                       OMAP3_CORE1_IOPAD(0x20b8, PIN_OUTPUT | MUX_MODE0)       /* gpmc_ncs5.gpmc_ncs5 */
+                       OMAP3_CORE1_IOPAD(0x219a, PIN_INPUT_PULLUP | MUX_MODE4) /* uart3_cts_rctx.gpio_163 */
+               >;
+       };
+
+       hsusb0_pins: pinmux_hsusb0_pins {
+               pinctrl-single,pins = <
+                       OMAP3_CORE1_IOPAD(0x21a2, PIN_OUTPUT | MUX_MODE0)               /* hsusb0_clk.hsusb0_clk */
+                       OMAP3_CORE1_IOPAD(0x21a4, PIN_OUTPUT | MUX_MODE0)               /* hsusb0_stp.hsusb0_stp */
+                       OMAP3_CORE1_IOPAD(0x21a6, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_dir.hsusb0_dir */
+                       OMAP3_CORE1_IOPAD(0x21a8, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_nxt.hsusb0_nxt */
+                       OMAP3_CORE1_IOPAD(0x21aa, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data0.hsusb2_data0 */
+                       OMAP3_CORE1_IOPAD(0x21ac, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data1.hsusb0_data1 */
+                       OMAP3_CORE1_IOPAD(0x21ae, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data2.hsusb0_data2 */
+                       OMAP3_CORE1_IOPAD(0x21b0, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data7.hsusb0_data3 */
+                       OMAP3_CORE1_IOPAD(0x21b2, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data7.hsusb0_data4 */
+                       OMAP3_CORE1_IOPAD(0x21b4, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data7.hsusb0_data5 */
+                       OMAP3_CORE1_IOPAD(0x21b6, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data7.hsusb0_data6 */
+                       OMAP3_CORE1_IOPAD(0x21b8, PIN_INPUT_PULLDOWN | MUX_MODE0)       /* hsusb0_data7.hsusb0_data7 */
+               >;
+       };
+};
+
+#include "omap-gpmc-smsc911x.dtsi"
+
+&gpmc {
+       ranges = <5 0 0x2c000000 0x01000000>, /* CM-T3x30 SMSC9x Eth */
+                <0 0 0x00000000 0x01000000>; /* CM-T3x NAND */
+
+       smsc1: ethernet@gpmc {
+               compatible = "smsc,lan9221", "smsc,lan9115";
+               pinctrl-names = "default";
+               pinctrl-0 = <&smsc1_pins>;
+               interrupt-parent = <&gpio6>;
+               interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
+               reg = <5 0 0xff>;
+       };
+};
+
+&i2c1 {
+       twl: twl@48 {
+               reg = <0x48>;
+               interrupts = <7>; /* SYS_NIRQ cascaded to intc */
+               interrupt-parent = <&intc>;
+
+               twl_audio: audio {
+                       compatible = "ti,twl4030-audio";
+                       codec {
+                       };
+               };
+       };
+};
+
+#include "twl4030.dtsi"
+#include "twl4030_omap3.dtsi"
+#include <dt-bindings/input/input.h>
+
+&venc {
+       vdda-supply = <&vdac>;
+};
+
+&mmc1 {
+       vmmc-supply = <&vmmc1>;
+};
+
+&twl_gpio {
+       ti,use-leds;
+       /* pullups: BIT(0) */
+       ti,pullups = <0x000001>;
+};
+
+&twl_keypad {
+       linux,keymap = <
+                               MATRIX_KEY(0x00, 0x01, KEY_A)
+                               MATRIX_KEY(0x00, 0x02, KEY_B)
+                               MATRIX_KEY(0x00, 0x03, KEY_LEFT)
+
+                               MATRIX_KEY(0x01, 0x01, KEY_UP)
+                               MATRIX_KEY(0x01, 0x02, KEY_ENTER)
+                               MATRIX_KEY(0x01, 0x03, KEY_DOWN)
+
+                               MATRIX_KEY(0x02, 0x01, KEY_RIGHT)
+                               MATRIX_KEY(0x02, 0x02, KEY_C)
+                               MATRIX_KEY(0x02, 0x03, KEY_D)
+                       >;
+};
+
+&hsusb1_phy {
+       reset-gpios = <&twl_gpio 6 GPIO_ACTIVE_LOW>;
+};
+
+&hsusb2_phy {
+       reset-gpios = <&twl_gpio 7 GPIO_ACTIVE_LOW>;
+};
+
+&usb_otg_hs {
+       pinctrl-names = "default";
+       pinctrl-0 = <&hsusb0_pins>;
+       interface-type = <0>;
+       usb-phy = <&usb2_phy>;
+       phys = <&usb2_phy>;
+       phy-names = "usb2-phy";
+       mode = <3>;
+       power = <50>;
+};