1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright (C) 2018 MOXA Inc. - https://www.moxa.com/ 4*724ba675SRob Herring * 5*724ba675SRob Herring * Authors: SZ Lin (林上智) <sz.lin@moxa.com> 6*724ba675SRob Herring * Wes Huang (黃淵河) <wes.huang@moxa.com> 7*724ba675SRob Herring * Fero JD Zhou (周俊達) <FeroJD.Zhou@moxa.com> 8*724ba675SRob Herring */ 9*724ba675SRob Herring 10*724ba675SRob Herring#include "am33xx.dtsi" 11*724ba675SRob Herring 12*724ba675SRob Herring/ { 13*724ba675SRob Herring vbat: vbat-regulator { 14*724ba675SRob Herring compatible = "regulator-fixed"; 15*724ba675SRob Herring }; 16*724ba675SRob Herring 17*724ba675SRob Herring /* Power supply provides a fixed 3.3V @3A */ 18*724ba675SRob Herring vmmcsd_fixed: vmmcsd-regulator { 19*724ba675SRob Herring compatible = "regulator-fixed"; 20*724ba675SRob Herring regulator-name = "vmmcsd_fixed"; 21*724ba675SRob Herring regulator-min-microvolt = <3300000>; 22*724ba675SRob Herring regulator-max-microvolt = <3300000>; 23*724ba675SRob Herring regulator-boot-on; 24*724ba675SRob Herring }; 25*724ba675SRob Herring 26*724ba675SRob Herring buttons: push_button { 27*724ba675SRob Herring compatible = "gpio-keys"; 28*724ba675SRob Herring }; 29*724ba675SRob Herring}; 30*724ba675SRob Herring 31*724ba675SRob Herring&am33xx_pinmux { 32*724ba675SRob Herring pinctrl-names = "default"; 33*724ba675SRob Herring 34*724ba675SRob Herring i2c0_pins: i2c0-pins { 35*724ba675SRob Herring pinctrl-single,pins = < 36*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0) 37*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0) 38*724ba675SRob Herring >; 39*724ba675SRob Herring }; 40*724ba675SRob Herring 41*724ba675SRob Herring push_button_pins: push-button-pins { 42*724ba675SRob Herring pinctrl-single,pins = < 43*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_HSYNC, PIN_INPUT_PULLDOWN, MUX_MODE7) /* lcd_hsync.gpio2_23 */ 44*724ba675SRob Herring >; 45*724ba675SRob Herring }; 46*724ba675SRob Herring 47*724ba675SRob Herring uart0_pins: uart0-pins { 48*724ba675SRob Herring pinctrl-single,pins = < 49*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0) 50*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0) 51*724ba675SRob Herring >; 52*724ba675SRob Herring }; 53*724ba675SRob Herring 54*724ba675SRob Herring davinci_mdio_default: davinci-mdio-default-pins { 55*724ba675SRob Herring pinctrl-single,pins = < 56*724ba675SRob Herring /* MDIO */ 57*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0) 58*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0) 59*724ba675SRob Herring >; 60*724ba675SRob Herring }; 61*724ba675SRob Herring 62*724ba675SRob Herring mmc1_pins_default: mmc1-pins { 63*724ba675SRob Herring pinctrl-single,pins = < 64*724ba675SRob Herring /* eMMC */ 65*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad12.mmc1_dat0 */ 66*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad13.mmc1_dat1 */ 67*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad14.mmc1_dat2 */ 68*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad15.mmc1_dat3 */ 69*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad8.mmc1_dat4 */ 70*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad9.mmc1_dat5 */ 71*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad10.mmc1_dat6 */ 72*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad11.mmc1_dat7 */ 73*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CSN2, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn2.mmc1_cmd */ 74*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CSN1, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn1.mmc1_clk */ 75*724ba675SRob Herring >; 76*724ba675SRob Herring }; 77*724ba675SRob Herring 78*724ba675SRob Herring spi0_pins: spi0-pins { 79*724ba675SRob Herring pinctrl-single,pins = < 80*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT_PULLUP, MUX_MODE0) 81*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_INPUT_PULLUP, MUX_MODE0) 82*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLUP, MUX_MODE0) 83*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_INPUT_PULLUP, MUX_MODE0) 84*724ba675SRob Herring >; 85*724ba675SRob Herring }; 86*724ba675SRob Herring}; 87*724ba675SRob Herring 88*724ba675SRob Herring&uart0 { 89*724ba675SRob Herring /* Console */ 90*724ba675SRob Herring status = "okay"; 91*724ba675SRob Herring pinctrl-names = "default"; 92*724ba675SRob Herring pinctrl-0 = <&uart0_pins>; 93*724ba675SRob Herring}; 94*724ba675SRob Herring 95*724ba675SRob Herring&i2c0 { 96*724ba675SRob Herring pinctrl-names = "default"; 97*724ba675SRob Herring pinctrl-0 = <&i2c0_pins>; 98*724ba675SRob Herring 99*724ba675SRob Herring status = "okay"; 100*724ba675SRob Herring clock-frequency = <400000>; 101*724ba675SRob Herring 102*724ba675SRob Herring eeprom: eeprom@50 { 103*724ba675SRob Herring compatible = "atmel,24c16"; 104*724ba675SRob Herring pagesize = <16>; 105*724ba675SRob Herring reg = <0x50>; 106*724ba675SRob Herring }; 107*724ba675SRob Herring 108*724ba675SRob Herring rtc_wdt: rtc_wdt@68 { 109*724ba675SRob Herring compatible = "dallas,ds1374"; 110*724ba675SRob Herring reg = <0x68>; 111*724ba675SRob Herring }; 112*724ba675SRob Herring}; 113*724ba675SRob Herring 114*724ba675SRob Herring&usb0 { 115*724ba675SRob Herring dr_mode = "host"; 116*724ba675SRob Herring}; 117*724ba675SRob Herring 118*724ba675SRob Herring/* Power */ 119*724ba675SRob Herring&vbat { 120*724ba675SRob Herring regulator-name = "vbat"; 121*724ba675SRob Herring regulator-min-microvolt = <5000000>; 122*724ba675SRob Herring regulator-max-microvolt = <5000000>; 123*724ba675SRob Herring}; 124*724ba675SRob Herring 125*724ba675SRob Herring&mac_sw { 126*724ba675SRob Herring pinctrl-names = "default"; 127*724ba675SRob Herring pinctrl-0 = <&cpsw_default>; 128*724ba675SRob Herring status = "okay"; 129*724ba675SRob Herring}; 130*724ba675SRob Herring 131*724ba675SRob Herring&davinci_mdio_sw { 132*724ba675SRob Herring pinctrl-names = "default"; 133*724ba675SRob Herring pinctrl-0 = <&davinci_mdio_default>; 134*724ba675SRob Herring status = "okay"; 135*724ba675SRob Herring}; 136*724ba675SRob Herring 137*724ba675SRob Herring&cpsw_port1 { 138*724ba675SRob Herring ti,dual-emac-pvid = <1>; 139*724ba675SRob Herring}; 140*724ba675SRob Herring 141*724ba675SRob Herring&cpsw_port2 { 142*724ba675SRob Herring ti,dual-emac-pvid = <2>; 143*724ba675SRob Herring}; 144*724ba675SRob Herring 145*724ba675SRob Herring&sham { 146*724ba675SRob Herring status = "okay"; 147*724ba675SRob Herring}; 148*724ba675SRob Herring 149*724ba675SRob Herring&aes { 150*724ba675SRob Herring status = "okay"; 151*724ba675SRob Herring}; 152*724ba675SRob Herring 153*724ba675SRob Herring&gpio0_target { 154*724ba675SRob Herring ti,no-reset-on-init; 155*724ba675SRob Herring}; 156*724ba675SRob Herring 157*724ba675SRob Herring&mmc2 { 158*724ba675SRob Herring pinctrl-names = "default"; 159*724ba675SRob Herring vmmc-supply = <&vmmcsd_fixed>; 160*724ba675SRob Herring bus-width = <8>; 161*724ba675SRob Herring pinctrl-0 = <&mmc1_pins_default>; 162*724ba675SRob Herring non-removable; 163*724ba675SRob Herring status = "okay"; 164*724ba675SRob Herring}; 165*724ba675SRob Herring 166*724ba675SRob Herring&buttons { 167*724ba675SRob Herring pinctrl-names = "default"; 168*724ba675SRob Herring pinctrl-0 = <&push_button_pins>; 169*724ba675SRob Herring 170*724ba675SRob Herring button-0 { 171*724ba675SRob Herring label = "push_button"; 172*724ba675SRob Herring linux,code = <0x100>; 173*724ba675SRob Herring gpios = <&gpio2 23 GPIO_ACTIVE_LOW>; 174*724ba675SRob Herring }; 175*724ba675SRob Herring}; 176*724ba675SRob Herring 177*724ba675SRob Herring/* SPI Busses */ 178*724ba675SRob Herring&spi0 { 179*724ba675SRob Herring status = "okay"; 180*724ba675SRob Herring pinctrl-names = "default"; 181*724ba675SRob Herring pinctrl-0 = <&spi0_pins>; 182*724ba675SRob Herring 183*724ba675SRob Herring flash@0 { 184*724ba675SRob Herring compatible = "mx25l6405d"; 185*724ba675SRob Herring spi-max-frequency = <40000000>; 186*724ba675SRob Herring 187*724ba675SRob Herring reg = <0>; 188*724ba675SRob Herring spi-cpol; 189*724ba675SRob Herring spi-cpha; 190*724ba675SRob Herring 191*724ba675SRob Herring partitions { 192*724ba675SRob Herring compatible = "fixed-partitions"; 193*724ba675SRob Herring #address-cells = <1>; 194*724ba675SRob Herring #size-cells = <1>; 195*724ba675SRob Herring 196*724ba675SRob Herring /* reg : The partition's offset and size within the mtd bank. */ 197*724ba675SRob Herring partitions@0 { 198*724ba675SRob Herring label = "MLO"; 199*724ba675SRob Herring reg = <0x0 0x80000>; 200*724ba675SRob Herring }; 201*724ba675SRob Herring 202*724ba675SRob Herring partitions@1 { 203*724ba675SRob Herring label = "U-Boot"; 204*724ba675SRob Herring reg = <0x80000 0x100000>; 205*724ba675SRob Herring }; 206*724ba675SRob Herring 207*724ba675SRob Herring partitions@2 { 208*724ba675SRob Herring label = "U-Boot Env"; 209*724ba675SRob Herring reg = <0x180000 0x40000>; 210*724ba675SRob Herring }; 211*724ba675SRob Herring }; 212*724ba675SRob Herring }; 213*724ba675SRob Herring}; 214*724ba675SRob Herring 215*724ba675SRob Herring&spi1 { 216*724ba675SRob Herring status = "okay"; 217*724ba675SRob Herring pinctrl-names = "default"; 218*724ba675SRob Herring pinctrl-0 = <&spi1_pins>; 219*724ba675SRob Herring 220*724ba675SRob Herring tpm_spi_tis@0 { 221*724ba675SRob Herring compatible = "tcg,tpm_tis-spi"; 222*724ba675SRob Herring reg = <0>; 223*724ba675SRob Herring spi-max-frequency = <500000>; 224*724ba675SRob Herring }; 225*724ba675SRob Herring}; 226