/* * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #include "am57xx-beagle-x15.dts" #include #include / { model = "TI AM572x EVM"; compatible = "ti,am572x-evm", "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"; aliases { display0 = &lcd0; display1 = &hdmi0; }; gpio_keys { compatible = "gpio-keys"; #address-cells = <1>; #size-cells = <0>; autorepeat; USER1 { label = "Up"; linux,code = ; gpios = <&gpio2 23 GPIO_ACTIVE_LOW>; }; USER2 { label = "Down"; linux,code = ; gpios = <&gpio2 25 GPIO_ACTIVE_LOW>; }; USER3 { label = "Left"; linux,code = ; gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; }; USER4 { label = "Right"; linux,code = ; gpios = <&gpio2 24 GPIO_ACTIVE_LOW>; }; USER5 { label = "Home"; linux,code = ; gpios = <&gpio2 20 GPIO_ACTIVE_LOW>; }; }; lcd0: display { compatible = "osddisplays,osd070t1718-19ts", "panel-dpi"; label = "lcd"; enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; panel-timing { clock-frequency = <33000000>; hactive = <800>; vactive = <480>; hfront-porch = <210>; hback-porch = <16>; hsync-len = <30>; vback-porch = <10>; vfront-porch = <22>; vsync-len = <13>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <1>; }; port { lcd_in: endpoint { remote-endpoint = <&dpi_out>; }; }; }; backlight { compatible = "pwm-backlight"; pwms = <&ehrpwm1 0 50000 0>; /* Anything lower than 241 is no longer visible */ brightness-levels = <0 243 245 247 249 251 252 253 255>; default-brightness-level = <8>; }; vmmcwl_fixed: fixedregulator-mmcwl { compatible = "regulator-fixed"; regulator-name = "vmmcwl_fixed"; /* the gpio used for wlan_enable goes through a level shifter on the platform. the settings for 1.8v below is needed by the regulator driver, but is more of a comment since it doesn't really control the voltage of the gpio */ regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; gpio = <&gpio5 8 GPIO_ACTIVE_HIGH>; enable-active-high; }; kim { compatible = "kim"; nshutdown_gpio = <132>; dev_name = "/dev/ttyS7"; flow_cntrl = <1>; baud_rate = <3686400>; }; btwilink { compatible = "btwilink"; }; }; &dra7_pmx_core { mmc3_pins_default: mmc3_pins_default { pinctrl-single,pins = < 0x37c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_clk.mmc3_clk */ 0x380 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_cmd.mmc3_cmd */ 0x384 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat0.mmc3_dat0 */ 0x388 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat1.mmc3_dat1 */ 0x38c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat2.mmc3_dat2 */ 0x390 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat3.mmc3_dat3 */ >; }; mmc3_pins_hs: mmc3_pins_hs { pinctrl-single,pins = < 0x37c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_clk.mmc3_clk */ 0x380 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_cmd.mmc3_cmd */ 0x384 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat0.mmc3_dat0 */ 0x388 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat1.mmc3_dat1 */ 0x38c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat2.mmc3_dat2 */ 0x390 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat3.mmc3_dat3 */ >; }; mmc3_pins_sdr12: mmc3_pins_sdr12 { pinctrl-single,pins = < 0x37c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_clk.mmc3_clk */ 0x380 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_cmd.mmc3_cmd */ 0x384 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat0.mmc3_dat0 */ 0x388 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat1.mmc3_dat1 */ 0x38c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat2.mmc3_dat2 */ 0x390 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat3.mmc3_dat3 */ >; }; mmc3_pins_sdr25: mmc3_pins_sdr25 { pinctrl-single,pins = < 0x37c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_clk.mmc3_clk */ 0x380 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_cmd.mmc3_cmd */ 0x384 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat0.mmc3_dat0 */ 0x388 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat1.mmc3_dat1 */ 0x38c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat2.mmc3_dat2 */ 0x390 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat3.mmc3_dat3 */ >; }; mmc3_pins_sdr50: mmc3_pins_sdr50 { pinctrl-single,pins = < 0x37c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_clk.mmc3_clk */ 0x380 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_cmd.mmc3_cmd */ 0x384 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat0.mmc3_dat0 */ 0x388 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat1.mmc3_dat1 */ 0x38c (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat2.mmc3_dat2 */ 0x390 (PIN_INPUT_PULLUP | MANUAL_MODE | MUX_MODE0) /* mmc3_dat3.mmc3_dat3 */ >; }; }; &dra7_iodelay_core { mmc3_iodelay_manual1_conf: mmc3_iodelay_manual1_conf { pinctrl-single,pins = < 0x678 (A_DELAY(406) | G_DELAY(0)) /* CFG_MMC3_CLK_IN */ 0x680 (A_DELAY(659) | G_DELAY(0)) /* CFG_MMC3_CLK_OUT */ 0x684 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_CMD_IN */ 0x688 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_CMD_OEN */ 0x68c (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_CMD_OUT */ 0x690 (A_DELAY(130) | G_DELAY(0)) /* CFG_MMC3_DAT0_IN */ 0x694 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT0_OEN */ 0x698 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT0_OUT */ 0x69c (A_DELAY(169) | G_DELAY(0)) /* CFG_MMC3_DAT1_IN */ 0x6a0 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT1_OEN */ 0x6a4 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT1_OUT */ 0x6a8 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT2_IN */ 0x6ac (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT2_OEN */ 0x6b0 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT2_OUT */ 0x6b4 (A_DELAY(457) | G_DELAY(0)) /* CFG_MMC3_DAT3_IN */ 0x6b8 (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT3_OEN */ 0x6bc (A_DELAY(0) | G_DELAY(0)) /* CFG_MMC3_DAT3_OUT */ >; }; }; &i2c5 { status = "okay"; clock-frequency = <400000>; mt9t11x@3C { compatible = "aptina,mt9t111"; reg = <0x3C>; reset-gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; oscen-gpios = <&gpio5 10 GPIO_ACTIVE_HIGH>; powerdown-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>; bufen-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>; camen-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; port { cam: endpoint { remote-endpoint = <&vin3a>; hsync-active = <1>; vsync-active = <1>; pclk-sample = <0>; input-clock-freq = <32000000>; pixel-clock-freq = <96000000>; }; }; }; pixcir_ts@5c { compatible = "pixcir,pixcir_tangoc"; reg = <0x5c>; interrupt-parent = <&gpio2>; interrupts = <4 0>; attb-gpio = <&gpio2 4 GPIO_ACTIVE_HIGH>; reset-gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>; touchscreen-size-x = <1024>; touchscreen-size-y = <600>; }; }; &dss { ports { #address-cells = <1>; #size-cells = <0>; port { reg = <0>; dpi_out: endpoint { remote-endpoint = <&lcd_in>; data-lines = <24>; }; }; }; }; &vip2 { status = "okay"; }; &vin3a { status = "okay"; endpoint { slave-mode; remote-endpoint = <&cam>; }; }; &epwmss1 { status = "okay"; ehrpwm1: ehrpwm@48440200 { status = "okay"; }; }; &uart8 { status = "okay"; }; &mmc3 { status = "okay"; vmmc-supply = <&vmmcwl_fixed>; bus-width = <4>; pinctrl-names = "default"; cap-power-off-card; keep-power-in-suspend; ti,non-removable; pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50"; pinctrl-0 = <&mmc3_pins_default &mmc3_iodelay_manual1_conf>; pinctrl-1 = <&mmc3_pins_hs &mmc3_iodelay_manual1_conf>; pinctrl-2 = <&mmc3_pins_sdr12 &mmc3_iodelay_manual1_conf>; pinctrl-3 = <&mmc3_pins_sdr25 &mmc3_iodelay_manual1_conf>; pinctrl-4 = <&mmc3_pins_sdr50 &mmc3_iodelay_manual1_conf>; #address-cells = <1>; #size-cells = <0>; wlcore: wlcore@0 { compatible = "ti,wl1835"; reg = <2>; interrupt-parent = <&gpio5>; interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; }; }; &pcie1 { pcie-reset-gpio = <&gpio2 8 GPIO_ACTIVE_LOW>; };