1 // SPDX-License-Identifier: GPL-2.0-only OR MI !! 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * Copyright (C) 2022-2024 PHYTEC Messtechnik !! 3 * Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH 4 * Author: Wadim Egorov <w.egorov@phytec.de> 4 * Author: Wadim Egorov <w.egorov@phytec.de> 5 * 5 * 6 * Product homepage: 6 * Product homepage: 7 * https://www.phytec.com/product/phyboard-am6 7 * https://www.phytec.com/product/phyboard-am62x 8 */ 8 */ 9 9 >> 10 #include <dt-bindings/gpio/gpio.h> >> 11 #include <dt-bindings/input/input.h> >> 12 #include <dt-bindings/leds/common.h> >> 13 #include <dt-bindings/net/ti-dp83867.h> 10 #include "k3-am625.dtsi" 14 #include "k3-am625.dtsi" 11 #include "k3-am62-phycore-som.dtsi" 15 #include "k3-am62-phycore-som.dtsi" 12 #include "k3-am62x-phyboard-lyra.dtsi" << 13 16 14 / { 17 / { 15 compatible = "phytec,am625-phyboard-ly 18 compatible = "phytec,am625-phyboard-lyra-rdk", 16 "phytec,am62-phycore-som" 19 "phytec,am62-phycore-som", "ti,am625"; 17 model = "PHYTEC phyBOARD-Lyra AM625"; 20 model = "PHYTEC phyBOARD-Lyra AM625"; >> 21 >> 22 aliases { >> 23 serial2 = &main_uart0; >> 24 serial3 = &main_uart1; >> 25 mmc1 = &sdhci1; >> 26 usb0 = &usb0; >> 27 usb1 = &usb1; >> 28 ethernet1 = &cpsw_port2; >> 29 }; >> 30 >> 31 can_tc1: can-phy0 { >> 32 compatible = "ti,tcan1042"; >> 33 #phy-cells = <0>; >> 34 max-bitrate = <5000000>; >> 35 standby-gpios = <&gpio_exp 1 GPIO_ACTIVE_HIGH>; >> 36 }; >> 37 >> 38 keys { >> 39 compatible = "gpio-keys"; >> 40 autorepeat; >> 41 pinctrl-names = "default"; >> 42 pinctrl-0 = <&gpio_keys_pins_default>; >> 43 >> 44 key-home { >> 45 label = "home"; >> 46 linux,code = <KEY_HOME>; >> 47 gpios = <&main_gpio1 23 GPIO_ACTIVE_HIGH>; >> 48 }; >> 49 >> 50 key-menu { >> 51 label = "menu"; >> 52 linux,code = <KEY_MENU>; >> 53 gpios = <&gpio_exp 4 GPIO_ACTIVE_HIGH>; >> 54 }; >> 55 }; >> 56 >> 57 leds { >> 58 compatible = "gpio-leds"; >> 59 pinctrl-names = "default"; >> 60 pinctrl-0 = <&leds_pins_default>, <&user_leds_pins_default>; >> 61 >> 62 led-1 { >> 63 gpios = <&main_gpio0 32 GPIO_ACTIVE_HIGH>; >> 64 linux,default-trigger = "mmc0"; >> 65 }; >> 66 >> 67 led-2 { >> 68 gpios = <&gpio_exp 2 GPIO_ACTIVE_HIGH>; >> 69 linux,default-trigger = "mmc1"; >> 70 }; >> 71 }; >> 72 >> 73 vcc_3v3_mmc: regulator-vcc-3v3-mmc { >> 74 compatible = "regulator-fixed"; >> 75 regulator-name = "VCC_3V3_MMC"; >> 76 regulator-min-microvolt = <3300000>; >> 77 regulator-max-microvolt = <3300000>; >> 78 regulator-always-on; >> 79 regulator-boot-on; >> 80 }; >> 81 }; >> 82 >> 83 &main_pmx0 { >> 84 gpio_keys_pins_default: gpio-keys-default-pins { >> 85 pinctrl-single,pins = < >> 86 AM62X_IOPAD(0x1d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ >> 87 >; >> 88 }; >> 89 >> 90 gpio_exp_int_pins_default: gpio-exp-int-default-pins { >> 91 pinctrl-single,pins = < >> 92 AM62X_IOPAD(0x244, PIN_INPUT, 7) /* (C17) MMC1_SDWP.GPIO1_49 */ >> 93 >; >> 94 }; >> 95 >> 96 main_i2c1_pins_default: main-i2c1-default-pins { >> 97 pinctrl-single,pins = < >> 98 AM62X_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */ >> 99 AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */ >> 100 >; >> 101 }; >> 102 >> 103 main_mcan0_pins_default: main-mcan0-default-pins { >> 104 pinctrl-single,pins = < >> 105 AM62X_IOPAD(0x1dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */ >> 106 AM62X_IOPAD(0x1d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */ >> 107 >; >> 108 }; >> 109 >> 110 main_mmc1_pins_default: main-mmc1-default-pins { >> 111 pinctrl-single,pins = < >> 112 AM62X_IOPAD(0x23c, PIN_INPUT_PULLUP, 0) /* (A21) MMC1_CMD */ >> 113 AM62X_IOPAD(0x234, PIN_INPUT_PULLDOWN, 0) /* (B22) MMC1_CLK */ >> 114 AM62X_IOPAD(0x230, PIN_INPUT_PULLUP, 0) /* (A22) MMC1_DAT0 */ >> 115 AM62X_IOPAD(0x22c, PIN_INPUT_PULLUP, 0) /* (B21) MMC1_DAT1 */ >> 116 AM62X_IOPAD(0x228, PIN_INPUT_PULLUP, 0) /* (C21) MMC1_DAT2 */ >> 117 AM62X_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (D22) MMC1_DAT3 */ >> 118 AM62X_IOPAD(0x240, PIN_INPUT_PULLUP, 0) /* (D17) MMC1_SDCD */ >> 119 >; >> 120 }; >> 121 >> 122 main_rgmii2_pins_default: main-rgmii2-default-pins { >> 123 pinctrl-single,pins = < >> 124 AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */ >> 125 AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */ >> 126 AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */ >> 127 AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */ >> 128 AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */ >> 129 AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */ >> 130 AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */ >> 131 AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */ >> 132 AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */ >> 133 AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */ >> 134 AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */ >> 135 AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ >> 136 >; >> 137 }; >> 138 >> 139 main_uart0_pins_default: main-uart0-default-pins { >> 140 pinctrl-single,pins = < >> 141 AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */ >> 142 AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */ >> 143 >; >> 144 }; >> 145 >> 146 main_uart1_pins_default: main-uart1-default-pins { >> 147 pinctrl-single,pins = < >> 148 AM62X_IOPAD(0x194, PIN_INPUT, 2) /* (B19) MCASP0_AXR3.UART1_CTSn */ >> 149 AM62X_IOPAD(0x198, PIN_OUTPUT, 2) /* (A19) MCASP0_AXR2.UART1_RTSn */ >> 150 AM62X_IOPAD(0x1ac, PIN_INPUT, 2) /* (E19) MCASP0_AFSR.UART1_RXD */ >> 151 AM62X_IOPAD(0x1b0, PIN_OUTPUT, 2) /* (A20) MCASP0_ACLKR.UART1_TXD */ >> 152 >; >> 153 }; >> 154 >> 155 main_usb1_pins_default: main-usb1-default-pins { >> 156 pinctrl-single,pins = < >> 157 AM62X_IOPAD(0x258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */ >> 158 >; >> 159 }; >> 160 >> 161 user_leds_pins_default: user-leds-default-pins { >> 162 pinctrl-single,pins = < >> 163 AM62X_IOPAD(0x084, PIN_OUTPUT, 7) /* (L23) GPMC0_ADVn_ALE.GPIO0_32 */ >> 164 >; >> 165 }; >> 166 }; >> 167 >> 168 &cpsw3g { >> 169 pinctrl-names = "default"; >> 170 pinctrl-0 = <&main_rgmii1_pins_default>, <&main_rgmii2_pins_default>; >> 171 }; >> 172 >> 173 &cpsw_port2 { >> 174 phy-mode = "rgmii-rxid"; >> 175 phy-handle = <&cpsw3g_phy3>; >> 176 }; >> 177 >> 178 &cpsw3g_mdio { >> 179 cpsw3g_phy3: ethernet-phy@3 { >> 180 compatible = "ethernet-phy-id2000.a231", "ethernet-phy-ieee802.3-c22"; >> 181 reg = <3>; >> 182 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; >> 183 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; >> 184 }; >> 185 }; >> 186 >> 187 &main_i2c1 { >> 188 pinctrl-names = "default"; >> 189 pinctrl-0 = <&main_i2c1_pins_default>; >> 190 clock-frequency = <400000>; >> 191 status = "okay"; >> 192 >> 193 gpio_exp: gpio-expander@21 { >> 194 pinctrl-names = "default"; >> 195 pinctrl-0 = <&gpio_exp_int_pins_default>; >> 196 compatible = "nxp,pcf8574"; >> 197 reg = <0x21>; >> 198 interrupt-parent = <&main_gpio1>; >> 199 interrupts = <49 0>; >> 200 #gpio-cells = <2>; >> 201 gpio-controller; >> 202 interrupt-controller; >> 203 #interrupt-cells = <2>; >> 204 gpio-line-names = "GPIO0_HDMI_RST", "GPIO1_CAN0_nEN", >> 205 "GPIO2_LED2", "GPIO3_LVDS_GPIO", >> 206 "GPIO4_BUT2", "GPIO5_LVDS_BKLT_EN", >> 207 "GPIO6_ETH1_USER_RESET", "GPIO7_AUDIO_USER_RESET"; >> 208 }; >> 209 >> 210 eeprom@51 { >> 211 compatible = "atmel,24c02"; >> 212 pagesize = <16>; >> 213 reg = <0x51>; >> 214 }; >> 215 }; >> 216 >> 217 &main_mcan0 { >> 218 pinctrl-names = "default"; >> 219 pinctrl-0 = <&main_mcan0_pins_default>; >> 220 phys = <&can_tc1>; >> 221 status = "okay"; >> 222 }; >> 223 >> 224 &main_uart0 { >> 225 pinctrl-names = "default"; >> 226 pinctrl-0 = <&main_uart0_pins_default>; >> 227 status = "okay"; >> 228 }; >> 229 >> 230 &main_uart1 { >> 231 pinctrl-names = "default"; >> 232 pinctrl-0 = <&main_uart1_pins_default>; >> 233 /* Main UART1 may be used by TIFS firmware */ >> 234 status = "okay"; >> 235 }; >> 236 >> 237 &sdhci1 { >> 238 vmmc-supply = <&vcc_3v3_mmc>; >> 239 vqmmc-supply = <&vddshv5_sdio>; >> 240 pinctrl-names = "default"; >> 241 pinctrl-0 = <&main_mmc1_pins_default>; >> 242 ti,driver-strength-ohm = <50>; >> 243 disable-wp; >> 244 no-1-8-v; >> 245 status = "okay"; >> 246 }; >> 247 >> 248 &usbss0 { >> 249 ti,vbus-divider; >> 250 status = "okay"; >> 251 }; >> 252 >> 253 &usbss1 { >> 254 ti,vbus-divider; >> 255 status = "okay"; >> 256 }; >> 257 >> 258 &usb0 { >> 259 dr_mode = "peripheral"; >> 260 }; >> 261 >> 262 &usb1 { >> 263 dr_mode = "host"; >> 264 pinctrl-names = "default"; >> 265 pinctrl-0 = <&main_usb1_pins_default>; 18 }; 266 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.