// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Copyright (c) Toradex * * Common dtsi for Verdin AM62 SoM on Zinnia carrier board * * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62 * https://www.toradex.com/products/carrier-board/zinnia-carrier-board */ #include #include / { leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_zinnia_leds>; /* LED1 Red - SODIMM 48 - LED1_R */ led-0 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <1>; gpios = <&main_gpio0 33 GPIO_ACTIVE_HIGH>; }; /* LED1 Blue - SODIMM 46 - LED1_B */ led-1 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <1>; gpios = <&main_gpio0 34 GPIO_ACTIVE_HIGH>; }; /* LED3 Red - SODIMM 44 - LED3_R */ led-2 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <3>; gpios = <&main_gpio0 37 GPIO_ACTIVE_HIGH>; }; /* LED3 Green - SODIMM 54 - LED3_G */ led-3 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <3>; gpios = <&main_gpio0 11 GPIO_ACTIVE_HIGH>; }; /* LED3 Blue - SODIMM 36 - LED3_B */ led-4 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <3>; gpios = <&main_gpio1 9 GPIO_ACTIVE_HIGH>; }; /* LED4 Red - SODIMM 34 - LED4_R */ led-5 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <4>; gpios = <&main_gpio1 10 GPIO_ACTIVE_HIGH>; }; /* LED4 Green - SODIMM 32 - LED4_G */ led-6 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <4>; gpios = <&main_gpio1 12 GPIO_ACTIVE_HIGH>; }; /* LED4 Blue - SODIMM 30 - LED4_B */ led-7 { color = ; default-state = "off"; function = LED_FUNCTION_STATUS; function-enumerator = <4>; gpios = <&main_gpio1 11 GPIO_ACTIVE_HIGH>; }; }; zinnia-1v8-voltage { compatible = "voltage-divider"; /* Verdin ADC_4 */ io-channels = <&verdin_som_adc 4>; full-ohms = <39000>; /* 12K + 27K */ output-ohms = <27000>; }; zinnia-3v3-voltage { compatible = "voltage-divider"; /* Verdin ADC_3 */ io-channels = <&verdin_som_adc 5>; full-ohms = <54000>; /* 27K + 27K */ output-ohms = <27000>; }; zinnia-5v-voltage { compatible = "voltage-divider"; /* Verdin ADC_2 */ io-channels = <&verdin_som_adc 6>; full-ohms = <39000>; /* 27K + 12K */ output-ohms = <12000>; }; /* Zinnia Power Supply Input Voltage */ zinnia-input-voltage { compatible = "voltage-divider"; /* Verdin ADC_1 */ io-channels = <&verdin_som_adc 7>; full-ohms = <204700>; /* 200K + 4.7K */ output-ohms = <4700>; }; }; &main_pmx0 { pinctrl_zinnia_leds: zinnia-leds-default-pins { pinctrl-single,pins = < AM62X_IOPAD(0x019c, PIN_INPUT, 7) /* (B18) MCASP0_AXR1.GPIO1_9 */ /* SODIMM 36 */ AM62X_IOPAD(0x01a0, PIN_INPUT, 7) /* (B20) MCASP0_AXR0.GPIO1_10 */ /* SODIMM 34 */ AM62X_IOPAD(0x01a4, PIN_INPUT, 7) /* (A19) MCASP0_ACLKX.GPIO1_11 */ /* SODIMM 30 */ AM62X_IOPAD(0x01a8, PIN_INPUT, 7) /* (A20) MCASP0_AFSX.GPIO1_12 */ /* SODIMM 32 */ AM62X_IOPAD(0x0088, PIN_INPUT, 7) /* (L17) GPMC0_OEn_REn.GPIO0_33 */ /* SODIMM 48 */ AM62X_IOPAD(0x0098, PIN_INPUT, 7) /* (R18) GPMC0_WAIT0.GPIO0_37 */ /* SODIMM 44 */ AM62X_IOPAD(0x008c, PIN_INPUT, 7) /* (L25) GPMC0_WEn.GPIO0_34 */ /* SODIMM 46 */ AM62X_IOPAD(0x002c, PIN_INPUT, 7) /* (F23) OSPI0_CSn0.GPIO0_11 */ /* SODIMM 54 */ >; }; }; &mcu_pmx0 { pinctrl_zinnia_spi1_cs0_gpio: mcu-gpio0-11-default-pins { pinctrl-single,pins = < AM62X_MCU_IOPAD(0x002c, PIN_INPUT, 7) /* (C6) WKUP_UART0_CTSn.GPIO0_11 */ /* SODIMM 143 */ >; }; }; /* Verdin ETH */ &cpsw3g { status = "okay"; }; /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ &cpsw3g_mdio { status = "okay"; cpsw3g_phy1: ethernet-phy@2 { reg = <2>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_eth2_rgmii_int>; interrupt-parent = <&main_gpio0>; interrupts = <38 IRQ_TYPE_EDGE_FALLING>; ti,rx-internal-delay = ; }; }; /* Verdin ETH_1 */ &cpsw_port1 { status = "okay"; }; /* Verdin ETH_2_RGMII */ &cpsw_port2 { phy-handle = <&cpsw3g_phy1>; phy-mode = "rgmii-id"; status = "okay"; }; &main_gpio0 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ctrl_sleep_moci>, <&pinctrl_gpio_5>, <&pinctrl_gpio_6>, <&pinctrl_gpio_7>, <&pinctrl_gpio_8>, <&pinctrl_qspi1_io0_gpio>; gpio-line-names = "", /* 0 */ "", "", "DI3_RB", /* SODIMM 56 */ "", "", "", "", "", "", "", /* 10 */ "", "", "", "", "", "", "", "", "", "", /* 20 */ "", "", "", "", "", "", "", "", "", "", /* 30 */ "", "", "", "", "", "DI2_EN", /* SODIMM 218 */ "", "", "", "DI2_RB", /* SODIMM 216 */ /* 40 */ "DO3_EN", /* SODIMM 220 */ "DI3_EN", /* SODIMM 222 */ "", "", "", "", "", "", "", "", /* 50 */ "", "", "", "", "", "", "", "", "", "", /* 60 */ "", "", "", "", "", "", "", "", "", "", /* 70 */ "", "", "", "", "", "", "", "", "", "", /* 80 */ "", "", "", "", "", ""; }; &main_gpio1 { gpio-line-names = "", /* 0 */ "", "", "", "", "", "", "", "", "", "", /* 10 */ "", "", "", "", "", "", "", "", "", "", /* 20 */ "", "", "", "", "", "", "", "", "", "", /* 30 */ "", "", "", "", "", "", "", "", "", "", /* 40 */ "", "", "", "", "", "", "", "", "", "", /* 50 */ "", "", "", "", "", "", "", "", "", "", /* 60 */ "", "", "", "", "", "", "", "", "", "", /* 70 */ "", "", "", "", "", "", "", "", "", "", /* 80 */ "", "", "", "", "", "", ""; }; /* Verdin I2C_1 */ &main_i2c1 { status = "okay"; temperature-sensor@4f { compatible = "ti,tmp1075"; reg = <0x4f>; }; eeprom@57 { compatible = "st,24c02", "atmel,24c02"; reg = <0x57>; pagesize = <16>; }; }; /* Verdin CAN_1 */ &main_mcan0 { status = "okay"; }; /* Verdin SPI_1 */ &main_spi1 { pinctrl-0 = <&pinctrl_spi1>, <&pinctrl_zinnia_spi1_cs0_gpio>, <&pinctrl_spi1_cs_gpio>; cs-gpios = <&mcu_gpio0 11 GPIO_ACTIVE_LOW>, <&main_gpio0 7 GPIO_ACTIVE_LOW>; status = "okay"; tpm@1 { compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; reg = <1>; spi-max-frequency = <18500000>; }; }; /* Verdin UART_3 */ &main_uart0 { status = "okay"; }; /* Verdin UART_1 */ &main_uart1 { status = "okay"; }; &mcu_gpio0 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_gpio_1>, <&pinctrl_gpio_2>, <&pinctrl_gpio_3>, <&pinctrl_gpio_4>, <&pinctrl_pcie_1_reset>; gpio-line-names = "", "DO1_EN", /* SODIMM 206 */ "DI1_EN", /* SODIMM 208 */ "DI1_RB", /* SODIMM 210 */ "DO2_EN", /* SODIMM 212 */ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""; }; /* Verdin SD_1 */ &sdhci1 { status = "okay"; }; /* Verdin USB_1 */ &usb0 { status = "okay"; }; /* Verdin USB_2 */ &usb1 { status = "okay"; }; /* Verdin USB_1 */ &usbss0 { status = "okay"; }; /* Verdin USB_2 */ &usbss1 { status = "okay"; }; /* Verdin PCIE_1_RESET# */ &verdin_pcie_1_reset_hog { status = "okay"; }; /* Verdin UART_2 */ &wkup_uart0 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_wkup_uart0>, <&pinctrl_wkup_uart0_rts>; rs485-rts-active-low; rs485-rx-during-tx; linux,rs485-enabled-at-boot-time; status = "okay"; };