1*2517e476SAnshul Dalal// SPDX-License-Identifier: GPL-2.0-only OR MIT 2*2517e476SAnshul Dalal/* 3*2517e476SAnshul Dalal * Common dtsi for AM625 SK and derivatives 4*2517e476SAnshul Dalal * 5*2517e476SAnshul Dalal * Copyright (C) 2025 Texas Instruments Incorporated - https://www.ti.com/ 6*2517e476SAnshul Dalal */ 7*2517e476SAnshul Dalal 8*2517e476SAnshul Dalal#include "k3-am62x-sk-common.dtsi" 9*2517e476SAnshul Dalal 10*2517e476SAnshul Dalal/ { 11*2517e476SAnshul Dalal opp-table { 12*2517e476SAnshul Dalal /* Add 1.4GHz OPP for am625-sk board. Requires VDD_CORE to be at 0.85V */ 13*2517e476SAnshul Dalal opp-1400000000 { 14*2517e476SAnshul Dalal opp-hz = /bits/ 64 <1400000000>; 15*2517e476SAnshul Dalal opp-supported-hw = <0x01 0x0004>; 16*2517e476SAnshul Dalal clock-latency-ns = <6000000>; 17*2517e476SAnshul Dalal }; 18*2517e476SAnshul Dalal }; 19*2517e476SAnshul Dalal 20*2517e476SAnshul Dalal vmain_pd: regulator-0 { 21*2517e476SAnshul Dalal /* TPS65988 PD CONTROLLER OUTPUT */ 22*2517e476SAnshul Dalal compatible = "regulator-fixed"; 23*2517e476SAnshul Dalal regulator-name = "vmain_pd"; 24*2517e476SAnshul Dalal regulator-min-microvolt = <5000000>; 25*2517e476SAnshul Dalal regulator-max-microvolt = <5000000>; 26*2517e476SAnshul Dalal regulator-always-on; 27*2517e476SAnshul Dalal regulator-boot-on; 28*2517e476SAnshul Dalal bootph-all; 29*2517e476SAnshul Dalal }; 30*2517e476SAnshul Dalal 31*2517e476SAnshul Dalal vcc_5v0: regulator-1 { 32*2517e476SAnshul Dalal /* Output of LM34936 */ 33*2517e476SAnshul Dalal compatible = "regulator-fixed"; 34*2517e476SAnshul Dalal regulator-name = "vcc_5v0"; 35*2517e476SAnshul Dalal regulator-min-microvolt = <5000000>; 36*2517e476SAnshul Dalal regulator-max-microvolt = <5000000>; 37*2517e476SAnshul Dalal vin-supply = <&vmain_pd>; 38*2517e476SAnshul Dalal regulator-always-on; 39*2517e476SAnshul Dalal regulator-boot-on; 40*2517e476SAnshul Dalal bootph-all; 41*2517e476SAnshul Dalal }; 42*2517e476SAnshul Dalal 43*2517e476SAnshul Dalal vcc_3v3_sys: regulator-2 { 44*2517e476SAnshul Dalal /* output of LM61460-Q1 */ 45*2517e476SAnshul Dalal compatible = "regulator-fixed"; 46*2517e476SAnshul Dalal regulator-name = "vcc_3v3_sys"; 47*2517e476SAnshul Dalal regulator-min-microvolt = <3300000>; 48*2517e476SAnshul Dalal regulator-max-microvolt = <3300000>; 49*2517e476SAnshul Dalal vin-supply = <&vmain_pd>; 50*2517e476SAnshul Dalal regulator-always-on; 51*2517e476SAnshul Dalal regulator-boot-on; 52*2517e476SAnshul Dalal bootph-all; 53*2517e476SAnshul Dalal }; 54*2517e476SAnshul Dalal 55*2517e476SAnshul Dalal vdd_mmc1: regulator-3 { 56*2517e476SAnshul Dalal /* TPS22918DBVR */ 57*2517e476SAnshul Dalal compatible = "regulator-fixed"; 58*2517e476SAnshul Dalal regulator-name = "vdd_mmc1"; 59*2517e476SAnshul Dalal regulator-min-microvolt = <3300000>; 60*2517e476SAnshul Dalal regulator-max-microvolt = <3300000>; 61*2517e476SAnshul Dalal regulator-boot-on; 62*2517e476SAnshul Dalal enable-active-high; 63*2517e476SAnshul Dalal vin-supply = <&vcc_3v3_sys>; 64*2517e476SAnshul Dalal gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; 65*2517e476SAnshul Dalal bootph-all; 66*2517e476SAnshul Dalal }; 67*2517e476SAnshul Dalal 68*2517e476SAnshul Dalal vdd_sd_dv: regulator-4 { 69*2517e476SAnshul Dalal /* Output of TLV71033 */ 70*2517e476SAnshul Dalal compatible = "regulator-gpio"; 71*2517e476SAnshul Dalal regulator-name = "tlv71033"; 72*2517e476SAnshul Dalal pinctrl-names = "default"; 73*2517e476SAnshul Dalal pinctrl-0 = <&vdd_sd_dv_pins_default>; 74*2517e476SAnshul Dalal regulator-min-microvolt = <1800000>; 75*2517e476SAnshul Dalal regulator-max-microvolt = <3300000>; 76*2517e476SAnshul Dalal regulator-boot-on; 77*2517e476SAnshul Dalal vin-supply = <&vcc_5v0>; 78*2517e476SAnshul Dalal gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; 79*2517e476SAnshul Dalal states = <1800000 0x0>, 80*2517e476SAnshul Dalal <3300000 0x1>; 81*2517e476SAnshul Dalal bootph-all; 82*2517e476SAnshul Dalal }; 83*2517e476SAnshul Dalal 84*2517e476SAnshul Dalal vcc_1v8: regulator-5 { 85*2517e476SAnshul Dalal /* output of TPS6282518DMQ */ 86*2517e476SAnshul Dalal compatible = "regulator-fixed"; 87*2517e476SAnshul Dalal regulator-name = "vcc_1v8"; 88*2517e476SAnshul Dalal regulator-min-microvolt = <1800000>; 89*2517e476SAnshul Dalal regulator-max-microvolt = <1800000>; 90*2517e476SAnshul Dalal vin-supply = <&vcc_3v3_sys>; 91*2517e476SAnshul Dalal regulator-always-on; 92*2517e476SAnshul Dalal regulator-boot-on; 93*2517e476SAnshul Dalal }; 94*2517e476SAnshul Dalal}; 95*2517e476SAnshul Dalal 96*2517e476SAnshul Dalal&main_pmx0 { 97*2517e476SAnshul Dalal main_mmc0_pins_default: main-mmc0-default-pins { 98*2517e476SAnshul Dalal bootph-all; 99*2517e476SAnshul Dalal pinctrl-single,pins = < 100*2517e476SAnshul Dalal AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3) MMC0_CMD */ 101*2517e476SAnshul Dalal AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (AB1) MMC0_CLK */ 102*2517e476SAnshul Dalal AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (AA2) MMC0_DAT0 */ 103*2517e476SAnshul Dalal AM62X_IOPAD(0x210, PIN_INPUT_PULLUP, 0) /* (AA1) MMC0_DAT1 */ 104*2517e476SAnshul Dalal AM62X_IOPAD(0x20c, PIN_INPUT_PULLUP, 0) /* (AA3) MMC0_DAT2 */ 105*2517e476SAnshul Dalal AM62X_IOPAD(0x208, PIN_INPUT_PULLUP, 0) /* (Y4) MMC0_DAT3 */ 106*2517e476SAnshul Dalal AM62X_IOPAD(0x204, PIN_INPUT_PULLUP, 0) /* (AB2) MMC0_DAT4 */ 107*2517e476SAnshul Dalal AM62X_IOPAD(0x200, PIN_INPUT_PULLUP, 0) /* (AC1) MMC0_DAT5 */ 108*2517e476SAnshul Dalal AM62X_IOPAD(0x1fc, PIN_INPUT_PULLUP, 0) /* (AD2) MMC0_DAT6 */ 109*2517e476SAnshul Dalal AM62X_IOPAD(0x1f8, PIN_INPUT_PULLUP, 0) /* (AC2) MMC0_DAT7 */ 110*2517e476SAnshul Dalal >; 111*2517e476SAnshul Dalal }; 112*2517e476SAnshul Dalal 113*2517e476SAnshul Dalal main_rgmii2_pins_default: main-rgmii2-default-pins { 114*2517e476SAnshul Dalal bootph-all; 115*2517e476SAnshul Dalal pinctrl-single,pins = < 116*2517e476SAnshul Dalal AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */ 117*2517e476SAnshul Dalal AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */ 118*2517e476SAnshul Dalal AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */ 119*2517e476SAnshul Dalal AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */ 120*2517e476SAnshul Dalal AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */ 121*2517e476SAnshul Dalal AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */ 122*2517e476SAnshul Dalal AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */ 123*2517e476SAnshul Dalal AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */ 124*2517e476SAnshul Dalal AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */ 125*2517e476SAnshul Dalal AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */ 126*2517e476SAnshul Dalal AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */ 127*2517e476SAnshul Dalal AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ 128*2517e476SAnshul Dalal >; 129*2517e476SAnshul Dalal }; 130*2517e476SAnshul Dalal 131*2517e476SAnshul Dalal ospi0_pins_default: ospi0-default-pins { 132*2517e476SAnshul Dalal bootph-all; 133*2517e476SAnshul Dalal pinctrl-single,pins = < 134*2517e476SAnshul Dalal AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */ 135*2517e476SAnshul Dalal AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */ 136*2517e476SAnshul Dalal AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */ 137*2517e476SAnshul Dalal AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */ 138*2517e476SAnshul Dalal AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */ 139*2517e476SAnshul Dalal AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */ 140*2517e476SAnshul Dalal AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */ 141*2517e476SAnshul Dalal AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */ 142*2517e476SAnshul Dalal AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */ 143*2517e476SAnshul Dalal AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */ 144*2517e476SAnshul Dalal AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */ 145*2517e476SAnshul Dalal >; 146*2517e476SAnshul Dalal }; 147*2517e476SAnshul Dalal 148*2517e476SAnshul Dalal vdd_sd_dv_pins_default: vdd-sd-dv-default-pins { 149*2517e476SAnshul Dalal pinctrl-single,pins = < 150*2517e476SAnshul Dalal AM62X_IOPAD(0x07c, PIN_OUTPUT, 7) /* (P25) GPMC0_CLK.GPIO0_31 */ 151*2517e476SAnshul Dalal >; 152*2517e476SAnshul Dalal bootph-all; 153*2517e476SAnshul Dalal }; 154*2517e476SAnshul Dalal 155*2517e476SAnshul Dalal main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-default-pins { 156*2517e476SAnshul Dalal pinctrl-single,pins = < 157*2517e476SAnshul Dalal AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ 158*2517e476SAnshul Dalal >; 159*2517e476SAnshul Dalal bootph-all; 160*2517e476SAnshul Dalal }; 161*2517e476SAnshul Dalal}; 162*2517e476SAnshul Dalal 163*2517e476SAnshul Dalal&main_gpio0 { 164*2517e476SAnshul Dalal bootph-all; 165*2517e476SAnshul Dalal}; 166*2517e476SAnshul Dalal 167*2517e476SAnshul Dalal&main_gpio1 { 168*2517e476SAnshul Dalal bootph-all; 169*2517e476SAnshul Dalal}; 170*2517e476SAnshul Dalal 171*2517e476SAnshul Dalal&main_i2c1 { 172*2517e476SAnshul Dalal exp1: gpio@22 { 173*2517e476SAnshul Dalal compatible = "ti,tca6424"; 174*2517e476SAnshul Dalal reg = <0x22>; 175*2517e476SAnshul Dalal pinctrl-names = "default"; 176*2517e476SAnshul Dalal pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>; 177*2517e476SAnshul Dalal interrupt-parent = <&main_gpio1>; 178*2517e476SAnshul Dalal interrupts = <23 IRQ_TYPE_EDGE_FALLING>; 179*2517e476SAnshul Dalal interrupt-controller; 180*2517e476SAnshul Dalal #interrupt-cells = <2>; 181*2517e476SAnshul Dalal gpio-controller; 182*2517e476SAnshul Dalal #gpio-cells = <2>; 183*2517e476SAnshul Dalal gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST", 184*2517e476SAnshul Dalal "PRU_DETECT", "MMC1_SD_EN", 185*2517e476SAnshul Dalal "VPP_LDO_EN", "EXP_PS_3V3_En", 186*2517e476SAnshul Dalal "EXP_PS_5V0_En", "EXP_HAT_DETECT", 187*2517e476SAnshul Dalal "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn", 188*2517e476SAnshul Dalal "UART1_FET_BUF_EN", "WL_LT_EN", 189*2517e476SAnshul Dalal "GPIO_HDMI_RSTn", "CSI_GPIO1", 190*2517e476SAnshul Dalal "CSI_GPIO2", "PRU_3V3_EN", 191*2517e476SAnshul Dalal "HDMI_INTn", "PD_I2C_IRQ", 192*2517e476SAnshul Dalal "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", 193*2517e476SAnshul Dalal "MCASP1_FET_SEL", "UART1_FET_SEL", 194*2517e476SAnshul Dalal "TSINT#", "IO_EXP_TEST_LED"; 195*2517e476SAnshul Dalal bootph-all; 196*2517e476SAnshul Dalal }; 197*2517e476SAnshul Dalal}; 198*2517e476SAnshul Dalal 199*2517e476SAnshul Dalal&sdhci0 { 200*2517e476SAnshul Dalal bootph-all; 201*2517e476SAnshul Dalal status = "okay"; 202*2517e476SAnshul Dalal pinctrl-names = "default"; 203*2517e476SAnshul Dalal pinctrl-0 = <&main_mmc0_pins_default>; 204*2517e476SAnshul Dalal disable-wp; 205*2517e476SAnshul Dalal}; 206*2517e476SAnshul Dalal 207*2517e476SAnshul Dalal&sdhci1 { 208*2517e476SAnshul Dalal vmmc-supply = <&vdd_mmc1>; 209*2517e476SAnshul Dalal vqmmc-supply = <&vdd_sd_dv>; 210*2517e476SAnshul Dalal}; 211*2517e476SAnshul Dalal 212*2517e476SAnshul Dalal&cpsw3g { 213*2517e476SAnshul Dalal pinctrl-names = "default"; 214*2517e476SAnshul Dalal pinctrl-0 = <&main_rgmii1_pins_default>, <&main_rgmii2_pins_default>; 215*2517e476SAnshul Dalal}; 216*2517e476SAnshul Dalal 217*2517e476SAnshul Dalal&cpsw_port2 { 218*2517e476SAnshul Dalal /* PCB provides an internal delay of 2ns */ 219*2517e476SAnshul Dalal phy-mode = "rgmii-rxid"; 220*2517e476SAnshul Dalal phy-handle = <&cpsw3g_phy1>; 221*2517e476SAnshul Dalal}; 222*2517e476SAnshul Dalal 223*2517e476SAnshul Dalal&cpsw3g_mdio { 224*2517e476SAnshul Dalal cpsw3g_phy1: ethernet-phy@1 { 225*2517e476SAnshul Dalal reg = <1>; 226*2517e476SAnshul Dalal ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 227*2517e476SAnshul Dalal ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 228*2517e476SAnshul Dalal ti,min-output-impedance; 229*2517e476SAnshul Dalal }; 230*2517e476SAnshul Dalal}; 231*2517e476SAnshul Dalal 232*2517e476SAnshul Dalal&fss { 233*2517e476SAnshul Dalal bootph-all; 234*2517e476SAnshul Dalal}; 235*2517e476SAnshul Dalal 236*2517e476SAnshul Dalal&ospi0 { 237*2517e476SAnshul Dalal status = "okay"; 238*2517e476SAnshul Dalal pinctrl-names = "default"; 239*2517e476SAnshul Dalal pinctrl-0 = <&ospi0_pins_default>; 240*2517e476SAnshul Dalal 241*2517e476SAnshul Dalal flash@0 { 242*2517e476SAnshul Dalal compatible = "jedec,spi-nor"; 243*2517e476SAnshul Dalal reg = <0x0>; 244*2517e476SAnshul Dalal spi-tx-bus-width = <8>; 245*2517e476SAnshul Dalal spi-rx-bus-width = <8>; 246*2517e476SAnshul Dalal spi-max-frequency = <25000000>; 247*2517e476SAnshul Dalal cdns,tshsl-ns = <60>; 248*2517e476SAnshul Dalal cdns,tsd2d-ns = <60>; 249*2517e476SAnshul Dalal cdns,tchsh-ns = <60>; 250*2517e476SAnshul Dalal cdns,tslch-ns = <60>; 251*2517e476SAnshul Dalal cdns,read-delay = <4>; 252*2517e476SAnshul Dalal 253*2517e476SAnshul Dalal partitions { 254*2517e476SAnshul Dalal compatible = "fixed-partitions"; 255*2517e476SAnshul Dalal #address-cells = <1>; 256*2517e476SAnshul Dalal #size-cells = <1>; 257*2517e476SAnshul Dalal bootph-all; 258*2517e476SAnshul Dalal 259*2517e476SAnshul Dalal partition@0 { 260*2517e476SAnshul Dalal label = "ospi.tiboot3"; 261*2517e476SAnshul Dalal reg = <0x0 0x80000>; 262*2517e476SAnshul Dalal }; 263*2517e476SAnshul Dalal 264*2517e476SAnshul Dalal partition@80000 { 265*2517e476SAnshul Dalal label = "ospi.tispl"; 266*2517e476SAnshul Dalal reg = <0x80000 0x200000>; 267*2517e476SAnshul Dalal }; 268*2517e476SAnshul Dalal 269*2517e476SAnshul Dalal partition@280000 { 270*2517e476SAnshul Dalal label = "ospi.u-boot"; 271*2517e476SAnshul Dalal reg = <0x280000 0x400000>; 272*2517e476SAnshul Dalal }; 273*2517e476SAnshul Dalal 274*2517e476SAnshul Dalal partition@680000 { 275*2517e476SAnshul Dalal label = "ospi.env"; 276*2517e476SAnshul Dalal reg = <0x680000 0x40000>; 277*2517e476SAnshul Dalal }; 278*2517e476SAnshul Dalal 279*2517e476SAnshul Dalal partition@6c0000 { 280*2517e476SAnshul Dalal label = "ospi.env.backup"; 281*2517e476SAnshul Dalal reg = <0x6c0000 0x40000>; 282*2517e476SAnshul Dalal }; 283*2517e476SAnshul Dalal 284*2517e476SAnshul Dalal partition@800000 { 285*2517e476SAnshul Dalal label = "ospi.rootfs"; 286*2517e476SAnshul Dalal reg = <0x800000 0x37c0000>; 287*2517e476SAnshul Dalal }; 288*2517e476SAnshul Dalal 289*2517e476SAnshul Dalal partition@3fc0000 { 290*2517e476SAnshul Dalal bootph-pre-ram; 291*2517e476SAnshul Dalal label = "ospi.phypattern"; 292*2517e476SAnshul Dalal reg = <0x3fc0000 0x40000>; 293*2517e476SAnshul Dalal }; 294*2517e476SAnshul Dalal }; 295*2517e476SAnshul Dalal }; 296*2517e476SAnshul Dalal}; 297