1295011Sandrew/* 2295011Sandrew * Support for CompuLab SBC-AM57x single board computer 3295011Sandrew * 4295011Sandrew * Copyright (C) 2015 CompuLab Ltd. - http://www.compulab.co.il/ 5295011Sandrew * Author: Dmitry Lifshitz <lifshitz@compulab.co.il> 6295011Sandrew * 7295011Sandrew * This program is free software; you can redistribute it and/or modify it 8295011Sandrew * under the terms of the GNU General Public License version 2 as published by 9295011Sandrew * the Free Software Foundation. 10295011Sandrew */ 11295011Sandrew 12295011Sandrew#include "am57xx-cl-som-am57x.dts" 13295011Sandrew#include "compulab-sb-som.dtsi" 14295011Sandrew 15295011Sandrew/ { 16295011Sandrew model = "CompuLab CL-SOM-AM57x on SB-SOM-AM57x"; 17295011Sandrew compatible = "compulab,sbc-am57x", "compulab,cl-som-am57x", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"; 18295011Sandrew 19295011Sandrew aliases { 20295011Sandrew display0 = &lcd0; 21295011Sandrew display1 = &hdmi; 22295011Sandrew }; 23295011Sandrew}; 24295011Sandrew 25295011Sandrew&dra7_pmx_core { 26295011Sandrew uart3_pins_default: uart3_pins_default { 27295011Sandrew pinctrl-single,pins = < 28295011Sandrew DRA7XX_CORE_IOPAD(0x37f8, PIN_INPUT_SLEW | MUX_MODE2) /* uart2_ctsn.uart3_rxd */ 29295011Sandrew DRA7XX_CORE_IOPAD(0x37fc, PIN_INPUT_SLEW | MUX_MODE1) /* uart2_rtsn.uart3_txd */ 30295011Sandrew >; 31295011Sandrew }; 32295011Sandrew 33295011Sandrew mmc1_pins_default: mmc1_pins_default { 34295011Sandrew pinctrl-single,pins = < 35295011Sandrew DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */ 36295011Sandrew DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */ 37295011Sandrew DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */ 38295011Sandrew DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */ 39295011Sandrew DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */ 40295011Sandrew DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */ 41295011Sandrew DRA7XX_CORE_IOPAD(0x376c, PIN_INPUT | MUX_MODE14) /* mmc1_sdcd.gpio6_27 */ 42295011Sandrew DRA7XX_CORE_IOPAD(0x377c, PIN_INPUT | MUX_MODE14) /* mmc1_sdwp.gpio6_28 */ 43295011Sandrew >; 44295011Sandrew }; 45295011Sandrew 46295011Sandrew usb1_pins: pinmux_usb1_pins { 47295011Sandrew pinctrl-single,pins = < 48295011Sandrew DRA7XX_CORE_IOPAD(0x3680, PIN_INPUT_SLEW | MUX_MODE0) /* usb1_drvvbus */ 49295011Sandrew >; 50295011Sandrew }; 51295011Sandrew 52295011Sandrew i2c5_pins_default: i2c5_pins_default { 53295011Sandrew pinctrl-single,pins = < 54295011Sandrew DRA7XX_CORE_IOPAD(0x36b4, PIN_INPUT| MUX_MODE10) /* mcasp1_axr0.i2c5_sda */ 55295011Sandrew DRA7XX_CORE_IOPAD(0x36b8, PIN_INPUT| MUX_MODE10) /* mcasp1_axr1.i2c5_scl */ 56295011Sandrew >; 57295011Sandrew }; 58295011Sandrew 59295011Sandrew lcd_pins_default: lcd_pins_default { 60295011Sandrew pinctrl-single,pins = < 61295011Sandrew DRA7XX_CORE_IOPAD(0x3564, PIN_OUTPUT | MUX_MODE14) /* vin2a_vsync0.gpio4_0 */ 62295011Sandrew >; 63295011Sandrew }; 64295011Sandrew 65295011Sandrew hdmi_pins: pinmux_hdmi_pins { 66295011Sandrew pinctrl-single,pins = < 67295011Sandrew DRA7XX_CORE_IOPAD(0x3808, PIN_INPUT | MUX_MODE1) /* i2c2_sda.hdmi1_ddc_scl */ 68295011Sandrew DRA7XX_CORE_IOPAD(0x380c, PIN_INPUT | MUX_MODE1) /* i2c2_scl.hdmi1_ddc_sda */ 69295011Sandrew >; 70295011Sandrew }; 71295011Sandrew 72295011Sandrew hdmi_conn_pins: pinmux_hdmi_conn_pins { 73295011Sandrew pinctrl-single,pins = < 74295011Sandrew DRA7XX_CORE_IOPAD(0x37b8, PIN_INPUT | MUX_MODE14) /* spi1_cs2.gpio7_12 */ 75295011Sandrew >; 76295011Sandrew }; 77295011Sandrew}; 78295011Sandrew 79295011Sandrew&uart3 { 80295011Sandrew status = "okay"; 81295011Sandrew interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 82295011Sandrew <&dra7_pmx_core 0x3f8>; 83295011Sandrew 84295011Sandrew pinctrl-names = "default"; 85295011Sandrew pinctrl-0 = <&uart3_pins_default>; 86295011Sandrew}; 87295011Sandrew 88295011Sandrew&mmc1 { 89295011Sandrew status = "okay"; 90295011Sandrew 91295011Sandrew pinctrl-names = "default"; 92295011Sandrew pinctrl-0 = <&mmc1_pins_default>; 93295011Sandrew 94295011Sandrew vmmc-supply = <&ldo1_reg>; 95295011Sandrew bus-width = <4>; 96295011Sandrew cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; 97295011Sandrew wp-gpios = <&gpio6 28 GPIO_ACTIVE_HIGH>; 98295011Sandrew}; 99295011Sandrew 100295011Sandrew&usb1 { 101295011Sandrew pinctrl-names = "default"; 102295011Sandrew pinctrl-0 = <&usb1_pins>; 103295011Sandrew}; 104295011Sandrew 105295011Sandrew&i2c5 { 106295011Sandrew status = "okay"; 107295011Sandrew pinctrl-names = "default"; 108295011Sandrew pinctrl-0 = <&i2c5_pins_default>; 109295011Sandrew clock-frequency = <400000>; 110295011Sandrew 111295011Sandrew eeprom_base: atmel@50 { 112295011Sandrew compatible = "atmel,24c08"; 113295011Sandrew reg = <0x50>; 114295011Sandrew pagesize = <16>; 115295011Sandrew }; 116295011Sandrew 117295011Sandrew pca9555: pca9555@20 { 118295011Sandrew compatible = "nxp,pca9555"; 119295011Sandrew reg = <0x20>; 120295011Sandrew gpio-controller; 121295011Sandrew #gpio-cells = <2>; 122295011Sandrew }; 123295011Sandrew}; 124295011Sandrew 125295011Sandrew&dss { 126295011Sandrew status = "ok"; 127295011Sandrew 128295011Sandrew vdda_video-supply = <&ldoln_reg>; 129295011Sandrew 130295011Sandrew port { 131295011Sandrew dpi_lcd_out: endpoint@0 { 132295011Sandrew remote-endpoint = <&lcd_in>; 133295011Sandrew data-lines = <24>; 134295011Sandrew }; 135295011Sandrew }; 136295011Sandrew}; 137295011Sandrew 138295011Sandrew&lcd0 { 139295011Sandrew pinctrl-names = "default"; 140295011Sandrew pinctrl-0 = <&lcd_pins_default>; 141295011Sandrew 142295011Sandrew enable-gpios = <&pca9555 14 GPIO_ACTIVE_HIGH 143295011Sandrew &gpio4 0 GPIO_ACTIVE_HIGH>; 144295011Sandrew 145295011Sandrew port { 146295011Sandrew lcd_in: endpoint { 147295011Sandrew remote-endpoint = <&dpi_lcd_out>; 148295011Sandrew data-lines = <24>; 149295011Sandrew }; 150295011Sandrew }; 151295011Sandrew}; 152295011Sandrew 153295011Sandrew&hdmi { 154295011Sandrew status = "ok"; 155295011Sandrew vdda-supply = <&ldo4_reg>; 156295011Sandrew 157295011Sandrew pinctrl-names = "default"; 158295011Sandrew pinctrl-0 = <&hdmi_pins>; 159295011Sandrew 160295011Sandrew port { 161295011Sandrew hdmi_out: endpoint { 162295011Sandrew remote-endpoint = <&hdmi_connector_in>; 163295011Sandrew lanes = <1 0 3 2 5 4 7 6>; 164295011Sandrew }; 165295011Sandrew }; 166295011Sandrew}; 167295011Sandrew 168295011Sandrew&hdmi_conn { 169295011Sandrew pinctrl-names = "default"; 170295011Sandrew pinctrl-0 = <&hdmi_conn_pins>; 171295011Sandrew 172295011Sandrew hpd-gpios = <&gpio7 12 GPIO_ACTIVE_HIGH>; 173295011Sandrew 174295011Sandrew port { 175295011Sandrew hdmi_connector_in: endpoint { 176295011Sandrew remote-endpoint = <&hdmi_out>; 177295011Sandrew }; 178295011Sandrew }; 179295011Sandrew}; 180