1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (c) 2014-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, D-82229 Seefeld, Germany. 4 * Authors: Gregor Herburger, Matthias Schiffer 5 * 6 * Based on: 7 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ 8 */ 9 10#include <dt-bindings/interrupt-controller/irq.h> 11#include "am33xx.dtsi" 12 13/ { 14 compatible = "tq,tqma3359", "ti,am33xx"; 15 16 aliases { 17 mmc0 = &mmc2; 18 mmc1 = &mmc1; 19 /delete-property/ mmc2; 20 rtc0 = &tps; 21 rtc1 = &ds1339; 22 rtc2 = &rtc; 23 }; 24 25 memory@80000000 { 26 device_type = "memory"; 27 reg = <0x80000000 0x10000000>; /* 256 MB */ 28 }; 29 30 /* SOM input voltage */ 31 vcc3v3in: regulator-vcc3v3in { 32 compatible = "regulator-fixed"; 33 regulator-name = "VCC3V3IN"; 34 regulator-min-microvolt = <3300000>; 35 regulator-max-microvolt = <3300000>; 36 regulator-boot-on; 37 }; 38 39 /* 40 * Regulator is enabled by PMIC power sequence. The supplied voltage 41 * rail is also usable on baseboard. 42 */ 43 vddshv: regulator-vddshv { 44 compatible = "regulator-fixed"; 45 regulator-name = "VDDSHV"; 46 regulator-min-microvolt = <3300000>; 47 regulator-max-microvolt = <3300000>; 48 regulator-boot-on; 49 vin-supply = <&vcc3v3in>; 50 }; 51}; 52 53&am33xx_pinmux { 54 i2c0_pins: i2c0-pins { 55 pinctrl-single,pins = < 56 /* i2c0_sda.i2c0_sda */ 57 AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0) 58 /* i2c0_scl.i2c0_scl */ 59 AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0) 60 >; 61 }; 62 63 mmc2_pins: mmc2-pins { 64 pinctrl-single,pins = < 65 /* gpmc_ad0.mmc1_dat0 */ 66 AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 67 /* gpmc_ad1.mmc1_dat1 */ 68 AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 69 /* gpmc_ad2.mmc1_dat2 */ 70 AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 71 /* gpmc_ad3.mmc1_dat3 */ 72 AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 73 /* gpmc_ad4.mmc1_dat4 */ 74 AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 75 /* gpmc_ad5.mmc1_dat5 */ 76 AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 77 /* gpmc_ad6.mmc1_dat6 */ 78 AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 79 /* gpmc_ad7.mmc1_dat7 */ 80 AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE1) 81 /* gpmc_csn1.mmc1_clk */ 82 AM33XX_PADCONF(AM335X_PIN_GPMC_CSN1, PIN_INPUT_PULLUP, MUX_MODE2) 83 /* gpmc_csn2.mmc1_cmd */ 84 AM33XX_PADCONF(AM335X_PIN_GPMC_CSN2, SLEWCTRL_SLOW | PIN_INPUT_PULLUP, MUX_MODE2) 85 >; 86 }; 87 88 spi0_pins: spi0-pins { 89 pinctrl-single,pins = < 90 /* spi0_sclk.spi0_sclk */ 91 AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT, MUX_MODE0) 92 /* spi0_d0.spi0_d0 */ 93 AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLDOWN, MUX_MODE0) 94 /* spi0_d1.spi0_d1 */ 95 AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_OUTPUT, MUX_MODE0) 96 /* spi0_cs0.spi0_cs0 */ 97 AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_OUTPUT, MUX_MODE0) 98 >; 99 }; 100}; 101 102&cpu { 103 cpu0-supply = <&vdd1_reg>; 104}; 105 106&elm { 107 status = "okay"; 108}; 109 110&i2c0 { 111 pinctrl-names = "default"; 112 pinctrl-0 = <&i2c0_pins>; 113 clock-frequency = <100000>; 114 status = "okay"; 115 116 /* optional, not on TQMa335xL */ 117 jc42_1: temperature-sensor@1f { 118 compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 119 reg = <0x1f>; 120 }; 121 122 tps: pmic@2d { 123 reg = <0x2d>; 124 ti,en-ck32k-xtal; 125 /* Filled in by tps65910.dtsi */ 126 }; 127 128 /* optional, not on TQMa335xL */ 129 eeprom: eeprom@50 { 130 compatible = "st,24c64", "atmel,24c64"; 131 reg = <0x50>; 132 pagesize = <32>; 133 vcc-supply = <&vddshv>; 134 }; 135 136 /* optional, not on TQMa335xL */ 137 se97btp: eeprom@57 { 138 compatible = "nxp,se97b", "atmel,24c02"; 139 reg = <0x57>; 140 pagesize = <16>; 141 vcc-supply = <&vddshv>; 142 }; 143 144 /* optional, not on TQMa335xL */ 145 ds1339: rtc@68 { 146 compatible = "dallas,ds1339"; 147 reg = <0x68>; 148 }; 149}; 150 151#include "../../tps65910.dtsi" 152 153&mmc2 { 154 pinctrl-names = "default"; 155 pinctrl-0 = <&mmc2_pins>; 156 bus-width = <8>; 157 no-1-8-v; 158 no-sd; 159 no-sdio; 160 vmmc-supply = <&vddshv>; 161 non-removable; 162 status = "okay"; 163}; 164 165&rtc { 166 status = "disabled"; 167}; 168 169&tps { 170 vcc1-supply = <&vcc3v3in>; 171 vcc2-supply = <&vcc3v3in>; 172 vcc3-supply = <&vcc3v3in>; 173 vcc4-supply = <&vcc3v3in>; 174 vcc5-supply = <&vcc3v3in>; 175 vcc6-supply = <&vcc3v3in>; 176 vcc7-supply = <&vcc3v3in>; 177 vccio-supply = <&vcc3v3in>; 178}; 179 180/* TPS outputs */ 181&vrtc_reg { 182 regulator-always-on; 183}; 184 185&vio_reg { 186 regulator-always-on; 187}; 188 189&vdd1_reg { 190 regulator-name = "vdd_mpu"; 191 regulator-min-microvolt = <600000>; 192 regulator-max-microvolt = <1500000>; 193 regulator-boot-on; 194 regulator-always-on; 195}; 196 197&vdd2_reg { 198 regulator-name = "vdd_core"; 199 regulator-min-microvolt = <600000>; 200 regulator-max-microvolt = <1500000>; 201 regulator-boot-on; 202 regulator-always-on; 203}; 204 205&vdd3_reg { 206 regulator-always-on; 207}; 208 209&vdig1_reg { 210 regulator-always-on; 211}; 212 213&vdig2_reg { 214 regulator-always-on; 215}; 216 217&vpll_reg { 218 regulator-always-on; 219}; 220 221&vdac_reg { 222 regulator-always-on; 223}; 224 225&vaux1_reg { 226 regulator-always-on; 227}; 228 229&vaux2_reg { 230 regulator-always-on; 231}; 232 233&vaux33_reg { 234 regulator-always-on; 235}; 236 237&vmmc_reg { 238 regulator-always-on; 239}; 240 241&spi0 { 242 pinctrl-names = "default"; 243 pinctrl-0 = <&spi0_pins>; 244 status = "okay"; 245 246 flash@0 { 247 compatible = "jedec,spi-nor"; 248 reg = <0x0>; 249 spi-max-frequency = <24000000>; 250 vcc-supply = <&vddshv>; 251 252 partitions { 253 compatible = "fixed-partitions"; 254 #address-cells = <1>; 255 #size-cells = <1>; 256 }; 257 }; 258}; 259 260&usb0_phy { 261 vcc-supply = <&vaux1_reg>; 262}; 263 264&usb1_phy { 265 vcc-supply = <&vaux1_reg>; 266}; 267 268&wkup_m3_ipc { 269 firmware-name = "am335x-evm-scale-data.bin"; 270}; 271