From 26b52c083eff8728663d0b5f7c1c7832a6972190 Mon Sep 17 00:00:00 2001 From: Ernest Van Hoecke Date: Fri, 17 Apr 2026 15:42:03 +0200 Subject: [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM Enable CONFIG_OF_UPSTREAM to receive automatic device tree updates for the Aquila AM69. Remove the now-obsolete device tree files: - arch/arm/dts/k3-am69-aquila-dev.dts - arch/arm/dts/k3-am69-aquila.dtsi Signed-off-by: Ernest Van Hoecke Acked-by: Francesco Dolcini --- arch/arm/dts/Makefile | 3 +- arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi | 2 +- arch/arm/dts/k3-am69-aquila-dev.dts | 576 ------ arch/arm/dts/k3-am69-aquila.dtsi | 1837 ------------------- arch/arm/mach-k3/j784s4/Kconfig | 1 + board/toradex/aquila-am69/MAINTAINERS | 2 - configs/aquila-am69_a72_defconfig | 3 +- 7 files changed, 5 insertions(+), 2419 deletions(-) delete mode 100644 arch/arm/dts/k3-am69-aquila-dev.dts delete mode 100644 arch/arm/dts/k3-am69-aquila.dtsi diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 4085d4c2de1..c2144c84025 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -1079,8 +1079,7 @@ dtb-$(CONFIG_SOC_K3_J7200) += k3-j7200-r5-common-proc-board.dtb dtb-$(CONFIG_SOC_K3_J721S2) += k3-am68-sk-r5-base-board.dtb\ k3-j721s2-r5-common-proc-board.dtb -dtb-$(CONFIG_SOC_K3_J784S4) += k3-am69-aquila-dev.dtb \ - k3-am69-r5-aquila-dev.dtb \ +dtb-$(CONFIG_SOC_K3_J784S4) += k3-am69-r5-aquila-dev.dtb \ k3-am69-r5-sk.dtb \ k3-j784s4-r5-evm.dtb diff --git a/arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi b/arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi index 5b8b8539da3..63b37e52292 100644 --- a/arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi +++ b/arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi @@ -3,7 +3,7 @@ * Copyright (C) 2025 Toradex - https://www.toradex.com/ */ -#define SPL_BOARD_DTB "spl/dts/k3-am69-aquila-dev.dtb" +#define SPL_BOARD_DTB "spl/dts/ti/k3-am69-aquila-dev.dtb" #define BOARD_DESCRIPTION "k3-am69-aquila" #define UBOOT_BOARD_DESCRIPTION "U-Boot for AM69 Aquila board" diff --git a/arch/arm/dts/k3-am69-aquila-dev.dts b/arch/arm/dts/k3-am69-aquila-dev.dts deleted file mode 100644 index c7ce804eac7..00000000000 --- a/arch/arm/dts/k3-am69-aquila-dev.dts +++ /dev/null @@ -1,576 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (C) 2025 Toradex - * - * https://www.toradex.com/computer-on-modules/aquila-arm-family/ti-am69 - * https://www.toradex.com/products/carrier-board/aquila-development-board-kit - */ - -/dts-v1/; - -#include -#include "k3-am69-aquila.dtsi" - -/ { - model = "Toradex Aquila AM69 on Aquila Development Board"; - compatible = "toradex,aquila-am69-dev", - "toradex,aquila-am69", - "ti,j784s4"; - - aliases { - eeprom1 = &carrier_eeprom; - }; - - reg_1v8_sw: regulator-1v8-sw { - compatible = "regulator-fixed"; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "Carrier_1V8"; - }; - - reg_3v3_dp: regulator-3v3-dp { - compatible = "regulator-fixed"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_gpio_21_dp>; - /* Aquila GPIO_21_DP (AQUILA B57) */ - gpio = <&main_gpio0 37 GPIO_ACTIVE_HIGH>; - enable-active-high; - regulator-max-microvolt = <3300000>; - regulator-min-microvolt = <3300000>; - regulator-name = "DP_3V3"; - startup-delay-us = <10000>; - }; - - dp0-connector { - compatible = "dp-connector"; - dp-pwr-supply = <®_3v3_dp>; - label = "Display Port"; - type = "full-size"; - - port { - dp0_connector_in: endpoint { - remote-endpoint = <&dp0_out>; - }; - }; - }; - - sound { - compatible = "simple-audio-card"; - simple-audio-card,bitclock-master = <&codec_dai>; - simple-audio-card,format = "i2s"; - simple-audio-card,frame-master = <&codec_dai>; - simple-audio-card,name = "aquila-wm8904"; - simple-audio-card,mclk-fs = <256>; - simple-audio-card,routing = - "Headphone Jack", "HPOUTL", - "Headphone Jack", "HPOUTR", - "IN2L", "Line In Jack", - "IN2R", "Line In Jack", - "Microphone Jack", "MICBIAS", - "IN1L", "Microphone Jack", - "IN1R", "Digital Mic"; - simple-audio-card,widgets = - "Microphone", "Microphone Jack", - "Microphone", "Digital Mic", - "Headphone", "Headphone Jack", - "Line", "Line In Jack"; - - codec_dai: simple-audio-card,codec { - sound-dai = <&wm8904_1a>; - }; - - simple-audio-card,cpu { - sound-dai = <&mcasp4>; - }; - }; -}; - -/* Aquila CTRL_PWR_BTN_MICO# */ -&aquila_key_power { - status = "okay"; -}; - -/* Aquila CTRL_WAKE1_MICO# */ -&aquila_key_wake { - status = "okay"; -}; - -/* On-module ETH_1 MDIO */ -&davinci_mdio { - status = "okay"; -}; - -&dp0_ports { - port@4 { - reg = <4>; - dp0_out: endpoint { - remote-endpoint = <&dp0_connector_in>; - }; - }; -}; - -&dss { - status = "okay"; -}; - -&main0_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&main0_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&main0_alert1>; - }; - }; -}; - -&main1_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&main1_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&main1_alert1>; - }; - }; -}; - -&main2_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&main2_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&main2_alert1>; - }; - }; -}; - -&main3_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&main3_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&main3_alert1>; - }; - }; -}; - -&main4_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&main4_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&main4_alert1>; - }; - }; -}; - -/* Aquila ETH_2 */ -&main_cpsw0 { - status = "okay"; -}; - -/* Aquila ETH_2 SGMII PHY */ -&main_cpsw0_port8 { - phy-handle = <&cpsw0_port8_phy4>; - status = "okay"; -}; - -/* Aquila ETH_2_XGMII_MDIO */ -&main_cpsw0_mdio { - status = "okay"; - - cpsw0_port8_phy4: ethernet-phy@4 { - reg = <4>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_eth2_int>; - interrupt-parent = <&main_gpio0>; - interrupts = <44 IRQ_TYPE_EDGE_FALLING>; - }; -}; - -/* Aquila PWM_1 */ -&main_ehrpwm0 { - status = "okay"; -}; - -/* Aquila PWM_4_DP */ -&main_ehrpwm2 { - status = "okay"; -}; - -/* Aquila PWM_2 */ -&main_ehrpwm1 { - status = "okay"; -}; - -/* Aquila PWM_3_DSI */ -&main_ehrpwm5 { - status = "okay"; -}; - -&main_gpio0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_gpio_01>, /* Aquila GPIO_01 */ - <&pinctrl_gpio_02>, /* Aquila GPIO_02 */ - <&pinctrl_gpio_03>; /* Aquila GPIO_03 */ -}; - -/* Aquila I2C_3_DSI1 */ -&main_i2c0 { - status = "okay"; - - i2c-mux@70 { - compatible = "nxp,pca9543"; - reg = <0x70>; - #address-cells = <1>; - #size-cells = <0>; - - /* I2C on DSI Connector Pin #4 and #6 */ - i2c_dsi_0: i2c@0 { - reg = <0>; - #address-cells = <1>; - #size-cells = <0>; - }; - - /* I2C on DSI Connector Pin #52 and #54 */ - i2c_dsi_1: i2c@1 { - reg = <1>; - #address-cells = <1>; - #size-cells = <0>; - }; - }; -}; - -/* Aquila I2C_4_CSI1 */ -&main_i2c1 { - status = "okay"; -}; - -/* Aquila I2C_5_CSI2 */ -&main_i2c2 { - status = "okay"; -}; - -/* Aquila I2C_6 */ -&main_i2c5 { - status = "okay"; -}; - -/* Aquila CAN_1 */ -&main_mcan10 { - status = "okay"; -}; - -/* Aquila CAN_3 */ -&main_mcan13 { - status = "okay"; -}; - -/* Aquila SD_1 */ -&main_sdhci1 { - status = "okay"; -}; - -/* Aquila SPI_2 */ -&main_spi0 { - status = "okay"; -}; - -/* Aquila SPI_1 */ -&main_spi2 { - status = "okay"; -}; - -/* Aquila UART_1 */ -&main_uart4 { - status = "okay"; -}; - -/* Aquila UART_3, used as the Linux console */ -&main_uart8 { - status = "okay"; -}; - -/* Aquila I2S_1 */ -&mcasp4 { - status = "okay"; -}; - -&mcu_cpsw { - status = "okay"; -}; - -/* On-module ETH_1 RGMII */ -&mcu_cpsw_port1 { - status = "okay"; -}; - -/* Aquila I2C_1 */ -&mcu_i2c0 { - clock-frequency = <100000>; - status = "okay"; - - fan_controller: fan@18 { - compatible = "ti,amc6821"; - reg = <0x18>; - #pwm-cells = <2>; - - fan: fan { - cooling-levels = <102 179 255>; - #cooling-cells = <2>; - pwms = <&fan_controller 40000 PWM_POLARITY_INVERTED>; - }; - }; - - wm8904_1a: audio-codec@1a { - compatible = "wlf,wm8904"; - reg = <0x1a>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_audio_extrefclk1>; - #sound-dai-cells = <0>; - clocks = <&audio_refclk1>; - clock-names = "mclk"; - AVDD-supply = <®_1v8_sw>; - CPVDD-supply = <®_1v8_sw>; - DBVDD-supply = <®_1v8_sw>; - DCVDD-supply = <®_1v8_sw>; - MICVDD-supply = <®_1v8_sw>; - - wlf,drc-cfg-names = "default", "peaklimiter"; - /* - * Config registers per name, respectively: - * KNEE_IP = 0, KNEE_OP = 0, HI_COMP = 1, LO_COMP = 1 - * KNEE_IP = -24, KNEE_OP = -6, HI_COMP = 1/4, LO_COMP = 1 - */ - wlf,drc-cfg-regs = /bits/ 16 <0x01af 0x3248 0x0000 0x0000>, - /bits/ 16 <0x04af 0x324b 0x0010 0x0408>; - - /* GPIO1 = DMIC_CLK, don't touch others */ - wlf,gpio-cfg = <0x0018>, <0xffff>, <0xffff>, <0xffff>; - - wlf,in1r-as-dmicdat2; - }; - - /* Current measurement into module VCC */ - hwmon@41 { - compatible = "ti,ina226"; - reg = <0x41>; - shunt-resistor = <5000>; - }; - - temperature-sensor@4f { - compatible = "ti,tmp1075"; - reg = <0x4f>; - }; - - /* USB-C OTG (TCPC USB PD PHY) */ - tcpc@52 { - compatible = "nxp,ptn5110", "tcpci"; - reg = <0x52>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usb1_int>; - interrupt-parent = <&main_gpio0>; - interrupts = <28 IRQ_TYPE_EDGE_FALLING>; - - connector { - compatible = "usb-c-connector"; - data-role = "dual"; - label = "USB-C OTG"; - power-role = "dual"; - try-power-role = "sink"; - self-powered; - source-pdos = ; - sink-pdos = ; - op-sink-microwatt = <1000000>; - - ports { - #address-cells = <1>; - #size-cells = <0>; - - port@0 { - reg = <0>; - - usb_1_con_hs: endpoint { - remote-endpoint = <&usb0_hs>; - }; - }; - - port@1 { - reg = <1>; - - usb_1_con_ss: endpoint { - remote-endpoint = <&usb0_ss_mux>; - }; - }; - }; - }; - }; - - carrier_eeprom: eeprom@57 { - compatible = "st,24c02", "atmel,24c02"; - reg = <0x57>; - pagesize = <16>; - }; -}; - -/* Aquila I2C_2 */ -&mcu_i2c1 { - status = "okay"; -}; - -/* Aquila CAN_2 */ -&mcu_mcan0 { - status = "okay"; -}; - -/* Aquila CAN_4 */ -&mcu_mcan1 { - status = "okay"; -}; - -/* Aquila UART_4 */ -&mcu_uart0 { - status = "okay"; -}; - -&mhdp { - status = "okay"; -}; - -/* Aquila QSPI_1 */ -&ospi0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_ospi0_4bit>, <&pinctrl_mcu_ospi0_cs0>; - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0x0>; - spi-max-frequency = <66000000>; - spi-rx-bus-width = <4>; - spi-tx-bus-width = <4>; - cdns,read-delay = <0>; - cdns,tchsh-ns = <3>; - cdns,tsd2d-ns = <10>; - cdns,tshsl-ns = <30>; - cdns,tslch-ns = <8>; - }; -}; - -/* Aquila PCIE_1 */ -&pcie0_rc { - status = "okay"; -}; - -/* Aquila PCIE_2 */ -&pcie1_rc { - status = "okay"; -}; - -&serdes2 { - status = "okay"; -}; - -&serdes4 { - status = "okay"; -}; - -&serdes_wiz2 { - status = "okay"; -}; - -&serdes_wiz4 { - status = "okay"; -}; - -/* Aquila ADC_[1-4] */ -&tscadc0 { - status = "okay"; -}; - -&usbss0 { - status = "okay"; -}; - -&usb0ss_mux { - status = "okay"; - - port { - usb0_ss_mux: endpoint { - remote-endpoint = <&usb_1_con_ss>; - }; - }; -}; - -&usb0 { - status = "okay"; - - port { - usb0_hs: endpoint { - remote-endpoint = <&usb_1_con_hs>; - }; - }; -}; - -&wkup0_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&wkup0_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&wkup0_alert1>; - }; - }; -}; - -&wkup1_thermal { - cooling-maps { - map0 { - cooling-device = <&fan 1 1>; - trip = <&wkup1_alert0>; - }; - - map1 { - cooling-device = <&fan 2 2>; - trip = <&wkup1_alert1>; - }; - }; -}; - -&wkup_gpio0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_gpio_04>, /* Aquila GPIO_04 */ - <&pinctrl_gpio_05>, /* Aquila GPIO_05 */ - <&pinctrl_gpio_06>, /* Aquila GPIO_06 */ - <&pinctrl_gpio_07>, /* Aquila GPIO_07 */ - <&pinctrl_gpio_08>; /* Aquila GPIO_08 */ -}; - -/* Aquila UART_2, through RS485 transceiver */ -&wkup_uart0 { - linux,rs485-enabled-at-boot-time; - rs485-rx-during-tx; - status = "okay"; -}; diff --git a/arch/arm/dts/k3-am69-aquila.dtsi b/arch/arm/dts/k3-am69-aquila.dtsi deleted file mode 100644 index 5e1f92fc85f..00000000000 --- a/arch/arm/dts/k3-am69-aquila.dtsi +++ /dev/null @@ -1,1837 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (C) 2025 Toradex - * - * https://www.toradex.com/computer-on-modules/aquila-arm-family/ti-am69 - */ - -#include -#include -#include -#include -#include -#include "k3-j784s4.dtsi" - -/ { - chosen { - stdout-path = "serial2:115200n8"; - }; - - aliases { - can0 = &main_mcan10; - can1 = &mcu_mcan0; - can2 = &main_mcan13; - can3 = &mcu_mcan1; - eeprom0 = &som_eeprom; - ethernet0 = &mcu_cpsw_port1; - ethernet1 = &main_cpsw0_port8; - i2c0 = &wkup_i2c0; - i2c1 = &mcu_i2c0; - i2c2 = &mcu_i2c1; - i2c3 = &main_i2c0; - i2c4 = &main_i2c1; - i2c5 = &main_i2c2; - i2c6 = &main_i2c5; - mmc0 = &main_sdhci0; - mmc1 = &main_sdhci1; - rtc0 = &rtc_i2c; - serial0 = &main_uart4; - serial1 = &wkup_uart0; - serial2 = &main_uart8; - serial3 = &mcu_uart0; - usb0 = &usb0; - }; - - aquila_key_power: gpio-key-power { - compatible = "gpio-keys"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwr_btn_int>; - status = "disabled"; - - key-power { - /* Aquila CTRL_PWR_BTN_MICO# (AQUILA B93) */ - gpios = <&wkup_gpio0 36 GPIO_ACTIVE_LOW>; - label = "Power Button"; - linux,code = ; - }; - }; - - aquila_key_wake: gpio-key-wakeup { - compatible = "gpio-keys"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ctrl_wake1_mico>; - status = "disabled"; - - key-wakeup { - /* Aquila CTRL_WAKE1_MICO# (AQUILA D6) */ - gpios = <&wkup_gpio0 49 GPIO_ACTIVE_LOW>; - label = "Wake Up"; - linux,code = ; - wakeup-source; - }; - }; - - /* Aquila CTRL_RESET_MICO# (AQUILA B92) */ - gpio-restart { - compatible = "gpio-restart"; - /* COLD_RESET_REQ */ - gpios = <&som_gpio_expander 1 GPIO_ACTIVE_HIGH>; - priority = <192>; - }; - - /* PWR_DOWN_REQ */ - gpio-poweroff { - compatible = "gpio-poweroff"; - /* PWR_DOWN_REQ */ - gpios = <&som_gpio_expander 2 GPIO_ACTIVE_HIGH>; - timeout-ms = <3000>; - }; - - memory@80000000 { - device_type = "memory"; - /* 32G RAM */ - reg = <0x00 0x80000000 0x00 0x80000000>, - <0x08 0x80000000 0x07 0x80000000>; - }; - - reserved_memory: reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - - secure_ddr: optee@9e800000 { - reg = <0x00 0x9e800000 0x00 0x01800000>; - no-map; - }; - - mcu_r5fss0_core0_dma_memory_region: memory@a0000000 { - compatible = "shared-dma-pool"; - reg = <0x00 0xa0000000 0x00 0x100000>; - no-map; - }; - - mcu_r5fss0_core0_memory_region: memory@a0100000 { - compatible = "shared-dma-pool"; - reg = <0x00 0xa0100000 0x00 0xf00000>; - no-map; - }; - }; - - /* Module Power Supply (VCC) */ - reg_vin: regulator-vin { - compatible = "regulator-fixed"; - regulator-name = "+V_IN"; - }; - - /* Enabled by EN_3V3_VIO (PMIC_GPIO_9) */ - reg_1v1_usb_bridge: regulator-1v1-vio { - compatible = "regulator-fixed"; - regulator-max-microvolt = <1100000>; - regulator-min-microvolt = <1100000>; - regulator-name = "+V1.1_VIO"; - vin-supply = <®_vin>; - }; - - reg_3v3_wifi: regulator-3v3-wifi { - compatible = "regulator-fixed"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_en_3v3_wifi>; - gpio = <&wkup_gpio0 57 GPIO_ACTIVE_HIGH>; - enable-active-high; - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <3300000>; - regulator-min-microvolt = <3300000>; - regulator-name = "+V3.3_WIFI"; - startup-delay-us = <20000>; - vin-supply = <®_vin>; - }; - - reg_1v8_stby: regulator-1v8-stby { - compatible = "regulator-fixed"; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "+V1.8_STBY"; - vin-supply = <®_vin>; - }; - - /* Aquila SD_1_PWR_EN */ - reg_sdhc1_vmmc: regulator-sdhci1 { - compatible = "regulator-fixed"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_sd1_pwr_en>; - /* Aquila SD_1_PWR_EN (AQUILA A6) */ - gpio = <&main_gpio0 52 GPIO_ACTIVE_HIGH>; - enable-active-high; - off-on-delay-us = <100000>; - regulator-max-microvolt = <3300000>; - regulator-min-microvolt = <3300000>; - regulator-name = "+3V3_SD"; - startup-delay-us = <20000>; - }; - - reg_sdhc1_vqmmc: regulator-sdhci1-vqmmc { - compatible = "regulator-gpio"; - /* SDIO_PWR_SEL_3.3V */ - gpios = <&som_gpio_expander 7 GPIO_ACTIVE_HIGH>; - regulator-max-microvolt = <3300000>; - regulator-min-microvolt = <1800000>; - regulator-name = "+VDD_SD_DV"; - states = <1800000 0x0>, - <3300000 0x1>; - }; - - /* On-module USB_1_SS mux */ - usb0ss_mux: gpio-sbu-mux { - compatible = "ti,tmuxhs4212", "gpio-sbu-mux"; - orientation-switch; - /* USB_MUX_SEL */ - select-gpios = <&som_gpio_expander 0 GPIO_ACTIVE_HIGH>; - status = "disabled"; - }; -}; - -&main_pmx0 { - /* Aquila DP_1_HPD */ - pinctrl_main_dp0_hpd: main-dp0-hpd-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x014, PIN_INPUT, 13) /* (AG33) MCAN14_TX.DP0_HPD */ /* AQUILA B59 */ - >; - }; - - /* Aquila PWM_1 */ - pinctrl_main_ehrpwm0_b: main-ehrpwm0b-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x064, PIN_OUTPUT, 9) /* (AF38) MCAN0_TX.EHRPWM0_B */ /* AQUILA C25 */ - >; - }; - - /* Aquila PWM_2 */ - pinctrl_main_ehrpwm1_a: main-ehrpwm1a-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x060, PIN_OUTPUT, 9) /* (AE36) MCASP2_AXR1.EHRPWM1_A */ /* AQUILA C26 */ - >; - }; - - /* Aquila PWM_3_DSI */ - pinctrl_main_ehrpwm5_a: main-ehrpwm5a-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x084, PIN_OUTPUT, 9) /* (AG38) MCASP0_AXR5.EHRPWM5_A */ /* AQUILA B46 */ - >; - }; - - /* Aquila PWM_4_DP */ - pinctrl_main_ehrpwm2_a: main-ehrpwm2a-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x040, PIN_INPUT, 9) /* (AF37) MCASP0_AXR0.EHRPWM2_A */ /* AQUILA B58 */ - >; - }; - - /* PMIC_INT# */ - pinctrl_pmic_int: main-gpio0-0-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x000, PIN_INPUT, 7) /* (AN35) EXTINTn.GPIO0_0 */ - >; - }; - - /* Aquila GPIO_09_CSI_1 */ - pinctrl_gpio_09_csi_1: main-gpio0-1-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x004, PIN_INPUT, 7) /* (AG36) MCAN12_TX.GPIO0_1 */ /* AQUILA B17 */ - >; - }; - - /* Aquila GPIO_10_CSI_1 */ - pinctrl_gpio_10_csi_1: main-gpio0-2-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x008, PIN_INPUT, 7) /* (AJ33) MCAN12_RX.GPIO0_2 */ /* AQUILA B18 */ - >; - }; - - /* Aquila USB_1_OC# */ - pinctrl_usb1_oc: main-gpio0-10-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x028, PIN_INPUT, 7) /* (AE33) MCAN16_RX.GPIO0_10 */ /* AQUILA B75 */ - >; - }; - - /* Aquila USB_1_EN */ - pinctrl_usb1_en_gpio: main-gpio0-11-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x02c, PIN_INPUT, 7) /* (AL32) GPIO0_11 */ /* AQUILA B77 */ - >; - }; - - /* Aquila GPIO_17_DSI_1 */ - pinctrl_gpio_17_dsi_1: main-gpio0-12-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x030, PIN_INPUT, 7) /* (AK37) GPIO0_12 */ /* AQUILA B42 */ - >; - }; - - /* Aquila GPIO_19_DSI_1 */ - pinctrl_gpio_19_dsi_1: main-gpio0-13-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x034, PIN_INPUT, 7) /* (AJ34) PMIC_WAKE0n.GPIO0_13 */ /* AQUILA B44 */ - >; - }; - - /* Aquila GPIO_02 */ - pinctrl_gpio_02: main-gpio0-17-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x044, PIN_INPUT, 7) /* (AG37) MCASP0_AXR1.GPIO0_17 */ /* AQUILA D24 */ - >; - }; - - /* Aquila GPIO_20_DSI_1 */ - pinctrl_gpio_20_dsi_1: main-gpio0-18-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x048, PIN_INPUT, 7) /* (AK33) MCASP0_AXR2.GPIO0_18 */ /* AQUILA B45 */ - >; - }; - - /* Aquila GPIO_21_DP */ - pinctrl_gpio_21_dp: main-gpio0-21-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x054, PIN_INPUT, 7) /* (AD37) MCASP2_ACLKX.GPIO0_21 */ /* AQUILA B57 */ - >; - }; - - /* Aquila USB_1_INT# */ - pinctrl_usb1_int: main-gpio0-28-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x070, PIN_INPUT, 7) /* (AH38) MCAN1_RX.GPIO0_28 */ /* AQUILA B74 */ - >; - }; - - /* Aquila GPIO_03 */ - pinctrl_gpio_03: main-gpio0-29-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x074, PIN_INPUT, 7) /* (AC33) MCAN2_TX.GPIO0_29 */ /* AQUILA D25 */ - >; - }; - - /* Aquila GPIO_18_DSI_1 */ - pinctrl_gpio_18_dsi_1: main-gpio0-31-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x07c, PIN_INPUT, 7) /* (AJ38) MCASP0_AXR3.GPIO0_31 */ /* AQUILA B43 */ - >; - }; - - /* Aquila PCIE_1_RESET# */ - pinctrl_pcie0_reset: main-gpio0-32-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x080, PIN_INPUT, 7) /* (AK34) MCASP0_AXR4.GPIO0_32 */ /* AQUILA C38 */ - >; - }; - - /* Aquila PWM_3_DSI as GPIO */ - pinctrl_pwm3_dsi_gpio: main-gpio0-33-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x084, PIN_INPUT, 7) /* (AG38) MCASP0_AXR5.GPIO0_33 */ /* AQUILA B46 */ - >; - }; - - /* Aquila GPIO_01 */ - pinctrl_gpio_01: main-gpio0-34-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x088, PIN_INPUT, 7) /* (AF36) MCASP0_AXR6.GPIO0_34 */ /* AQUILA D23 */ - >; - }; - - /* Aquila PCIE_2_RESET# */ - pinctrl_pcie1_reset: main-gpio0-41-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0a4, PIN_INPUT, 7) /* (AJ36) MCASP0_AXR13.GPIO0_41 */ /* AQUILA C35 */ - >; - }; - - /* Aquila ETH_2_xGMII_INT# */ - pinctrl_eth2_int: main-gpio0-44-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0b0, PIN_INPUT_PULLUP, 7) /* (AL33) MCASP1_AXR3.GPIO0_44 */ /* AQUILA B81 */ - >; - }; - - /* Aquila GPIO_11_CSI_1 */ - pinctrl_gpio_11_csi_1: main-gpio0-47-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0bc, PIN_INPUT, 7) /* (AD33) MCASP1_AFSX.GPIO0_47 */ /* AQUILA A11 */ - >; - }; - - /* Aquila GPIO_12_CSI_1 */ - pinctrl_gpio_12_csi_1: main-gpio0-48-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0c0, PIN_INPUT, 7) /* (AD38) MCASP1_AXR0.GPIO0_48 */ /* AQUILA B19 */ - >; - }; - - /* Aquila SD_1_PWR_EN */ - pinctrl_sd1_pwr_en: main-gpio0-52-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0d0, PIN_INPUT, 7) /* (AP38) SPI0_CS1.GPIO0_52 */ /* AQUILA A6 */ - >; - }; - - /* Aquila SD_1_CD# as GPIO */ - pinctrl_sd1_cd_gpio: main-gpio0-58-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0e8, PIN_INPUT_PULLUP, 7) /* (AR38) TIMER_IO0.GPIO0_58 */ /* AQUILA A1 */ - >; - }; - - /* Aquila I2C_3_DSI1 */ - pinctrl_main_i2c0: main-i2c0-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0e0, PIN_INPUT, 0) /* (AN36) I2C0_SCL */ /* AQUILA B41 */ - J784S4_IOPAD(0x0e4, PIN_INPUT, 0) /* (AP37) I2C0_SDA */ /* AQUILA B40 */ - >; - }; - - /* Aquila I2C_4_CSI1 */ - pinctrl_main_i2c1: main-i2c1-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x020, PIN_INPUT_PULLUP, 12) /* (AJ35) MCAN15_RX.I2C1_SCL */ /* AQUILA A13 */ - J784S4_IOPAD(0x024, PIN_INPUT_PULLUP, 12) /* (AH34) MCAN16_TX.I2C1_SDA */ /* AQUILA A12 */ - >; - }; - - /* Aquila I2C_5_CSI2 */ - pinctrl_main_i2c2: main-i2c2-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x04c, PIN_INPUT_PULLUP, 13) /* (AC32) MCASP1_AXR1.I2C2_SCL */ /* AQUILA C6 */ - J784S4_IOPAD(0x050, PIN_INPUT_PULLUP, 13) /* (AC37) MCASP1_AXR2.I2C2_SDA */ /* AQUILA C5 */ - >; - }; - - /* Aquila I2C_6 */ - pinctrl_main_i2c5: main-i2c5-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x01c, PIN_INPUT_PULLUP, 8) /* (AG34) MCAN15_TX.I2C5_SCL */ /* AQUILA C19 */ - J784S4_IOPAD(0x018, PIN_INPUT_PULLUP, 8) /* (AK36) MCAN14_RX.I2C5_SDA */ /* AQUILA C18 */ - >; - }; - - /* Aquila I2S_1_MCLK */ - pinctrl_audio_extrefclk1: audio-extrefclk1-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x078, PIN_OUTPUT, 1) /* (AH37) MCAN2_RX.AUDIO_EXT_REFCLK1 */ /* AQUILA B24 */ - >; - }; - - /* Aquila CAN_1 */ - pinctrl_main_mcan10: main-mcan10-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0b8, PIN_INPUT, 0) /* (AC34) MCASP1_ACLKX.MCAN10_RX */ /* AQUILA B49 */ - J784S4_IOPAD(0x0b4, PIN_OUTPUT, 0) /* (AL34) MCASP1_AXR4.MCAN10_TX */ /* AQUILA B48 */ - >; - }; - - /* Aquila CAN_3 */ - pinctrl_main_mcan13: main-mcan13-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x010, PIN_INPUT, 0) /* (AH33) MCAN13_RX */ /* AQUILA B54 */ - J784S4_IOPAD(0x00c, PIN_OUTPUT, 0) /* (AF33) MCAN13_TX */ /* AQUILA B53 */ - >; - }; - - /* Aquila I2S_1 */ - pinctrl_main_mcasp4: main-mcasp4-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0c8, PIN_INPUT, 1) /* (AJ32) EXT_REFCLK1.MCASP4_ACLKX */ /* AQUILA B20 */ - J784S4_IOPAD(0x06c, PIN_INPUT, 1) /* (AJ37) MCAN1_TX.MCASP4_AFSX */ /* AQUILA B21 */ - J784S4_IOPAD(0x068, PIN_OUTPUT, 1) /* (AE38) MCAN0_RX.MCASP4_AXR1 */ /* AQUILA B22 */ - J784S4_IOPAD(0x0c4, PIN_INPUT, 1) /* (AD36) ECAP0_IN_APWM_OUT.MCASP4_AXR2 */ /* AQUILA B23 */ - >; - }; - - /* Aquila ETH_2_XGMII_MDIO */ - pinctrl_main_mdio1: main-mdio1-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x058, PIN_OUTPUT, 4) /* (AE37) MCASP2_AFSX.MDIO1_MDC */ /* AQUILA B90 */ - J784S4_IOPAD(0x05c, PIN_INPUT, 4) /* (AC36) MCASP2_AXR0.MDIO1_MDIO */ /* AQUILA B89 */ - >; - }; - - /* Aquila SD_1 */ - pinctrl_main_mmc1: main-mmc1-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x104, PIN_INPUT, 0) /* (AB38) MMC1_CLK */ /* AQUILA A5 */ - J784S4_IOPAD(0x108, PIN_INPUT, 0) /* (AB36) MMC1_CMD */ /* AQUILA A7 */ - J784S4_IOPAD(0x100, PIN_INPUT, 0) /* (No Pin) MMC1_CLKLB */ - J784S4_IOPAD(0x0fc, PIN_INPUT, 0) /* (AA33) MMC1_DAT0 */ /* AQUILA A3 */ - J784S4_IOPAD(0x0f8, PIN_INPUT, 0) /* (AB34) MMC1_DAT1 */ /* AQUILA A2 */ - J784S4_IOPAD(0x0f4, PIN_INPUT, 0) /* (AA32) MMC1_DAT2 */ /* AQUILA A10 */ - J784S4_IOPAD(0x0f0, PIN_INPUT, 0) /* (AC38) MMC1_DAT3 */ /* AQUILA A8 */ - >; - }; - - /* Aquila SPI_2 */ - pinctrl_main_spi0: main-spi0-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0d4, PIN_OUTPUT, 0) /* (AN38) SPI0_CLK */ /* AQUILA D14 */ - J784S4_IOPAD(0x0d8, PIN_INPUT, 0) /* (AM35) SPI0_D0 */ /* AQUILA D15 */ - J784S4_IOPAD(0x0dc, PIN_OUTPUT, 0) /* (AM36) SPI0_D1 */ /* AQUILA D17 */ - >; - }; - - /* Aquila SPI_2 CS */ - pinctrl_main_spi0_cs0: main-spi0-cs0-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0cc, PIN_OUTPUT, 0) /* (AM37) SPI0_CS0 */ /* AQUILA D16 */ - >; - }; - - /* Aquila SPI_1 */ - pinctrl_main_spi2: main-spi2-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x0a0, PIN_OUTPUT, 10) /* (AD34) MCASP0_AXR12.SPI2_CLK */ /* AQUILA D12 */ - J784S4_IOPAD(0x0a8, PIN_INPUT, 10) /* (AF34) MCASP0_AXR14.SPI2_D0 */ /* AQUILA D10 */ - J784S4_IOPAD(0x0ac, PIN_OUTPUT, 10) /* (AE34) MCASP0_AXR15.SPI2_D1 */ /* AQUILA D11 */ - >; - }; - - /* Aquila SPI_1 CS */ - pinctrl_main_spi2_cs0: main-spi2-cs0-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x09c, PIN_OUTPUT, 10) /* (AF35) MCASP0_AXR11.SPI2_CS1 */ /* AQUILA D9 */ - >; - }; - - /* Aquila UART_1 */ - pinctrl_main_uart4: main-uart4-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x094, PIN_INPUT, 11) /* (AG35) MCASP0_AXR9.UART4_CTSn */ /* AQUILA B36 */ - J784S4_IOPAD(0x098, PIN_OUTPUT, 11) /* (AH36) MCASP0_AXR10.UART4_RTSn */ /* AQUILA B38 */ - J784S4_IOPAD(0x08c, PIN_INPUT, 11) /* (AE35) MCASP0_AXR7.UART4_RXD */ /* AQUILA B35 */ - J784S4_IOPAD(0x090, PIN_OUTPUT, 11) /* (AC35) MCASP0_AXR8.UART4_TXD */ /* AQUILA B37 */ - >; - }; - - /* Aquila UART_3, used as the Linux console */ - pinctrl_main_uart8: main-uart8-default-pins { - pinctrl-single,pins = < - J784S4_IOPAD(0x038, PIN_INPUT, 11) /* (AK35) MCASP0_ACLKX.UART8_RXD */ /* AQUILA D19 */ - J784S4_IOPAD(0x03c, PIN_OUTPUT, 11) /* (AK38) MCASP0_AFSX.UART8_TXD */ /* AQUILA D20 */ - >; - }; -}; - -&wkup_pmx0 { - /* Aquila QSPI_1 (4-bit) */ - pinctrl_mcu_ospi0_4bit: mcu-ospi0-4bit-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x000, PIN_OUTPUT, 0) /* (E32) MCU_OSPI0_CLK */ /* AQUILA B65 */ - J784S4_WKUP_IOPAD(0x00c, PIN_INPUT, 0) /* (B33) MCU_OSPI0_D0 */ /* AQUILA B68 */ - J784S4_WKUP_IOPAD(0x010, PIN_INPUT, 0) /* (B32) MCU_OSPI0_D1 */ /* AQUILA B67 */ - J784S4_WKUP_IOPAD(0x014, PIN_INPUT, 0) /* (C33) MCU_OSPI0_D2 */ /* AQUILA B61 */ - J784S4_WKUP_IOPAD(0x018, PIN_INPUT, 0) /* (C35) MCU_OSPI0_D3 */ /* AQUILA B60 */ - J784S4_WKUP_IOPAD(0x008, PIN_INPUT, 0) /* (C34) MCU_OSPI0_DQS */ /* AQUILA B63 */ - >; - }; - - /* Aquila QSPI_1 (8-bit) */ - pinctrl_mcu_ospi0_8bit: mcu-ospi0-8bit-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x000, PIN_OUTPUT, 0) /* (E32) MCU_OSPI0_CLK */ /* AQUILA B65 */ - J784S4_WKUP_IOPAD(0x00c, PIN_INPUT, 0) /* (B33) MCU_OSPI0_D0 */ /* AQUILA B68 */ - J784S4_WKUP_IOPAD(0x010, PIN_INPUT, 0) /* (B32) MCU_OSPI0_D1 */ /* AQUILA B67 */ - J784S4_WKUP_IOPAD(0x014, PIN_INPUT, 0) /* (C33) MCU_OSPI0_D2 */ /* AQUILA B61 */ - J784S4_WKUP_IOPAD(0x018, PIN_INPUT, 0) /* (C35) MCU_OSPI0_D3 */ /* AQUILA B60 */ - J784S4_WKUP_IOPAD(0x01c, PIN_INPUT, 0) /* (D33) MCU_OSPI0_D4 */ /* AQUILA B70 */ - J784S4_WKUP_IOPAD(0x020, PIN_INPUT, 0) /* (D34) MCU_OSPI0_D5 */ /* AQUILA B71 */ - J784S4_WKUP_IOPAD(0x024, PIN_INPUT, 0) /* (E34) MCU_OSPI0_D6 */ /* AQUILA B72 */ - J784S4_WKUP_IOPAD(0x028, PIN_INPUT, 0) /* (E33) MCU_OSPI0_D7 */ /* AQUILA B73 */ - J784S4_WKUP_IOPAD(0x008, PIN_INPUT, 0) /* (C34) MCU_OSPI0_DQS */ /* AQUILA B63 */ - >; - }; - - /* Aquila QSPI_1_CS1# */ - pinctrl_mcu_ospi0_cs0: mcu-ospi0-cs0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x02c, PIN_OUTPUT, 0) /* (A32) MCU_OSPI0_CSn0 */ /* AQUILA B66 */ - >; - }; - - /* Aquila QSPI_1_CS2# */ - pinctrl_mcu_ospi0_cs1: mcu-ospi0-cs1-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x030, PIN_OUTPUT, 0) /* (A33) MCU_OSPI0_CSn1 */ /* AQUILA B62 */ - >; - }; - - /* Aquila QSPI_1_SCK as GPIO */ - pinctrl_wkup_gpio_16: wkup-gpio0-16-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x000, PIN_INPUT, 7) /* (E32) MCU_OSPI0_CLK.WKUP_GPIO0_16 */ /* AQUILA B65 */ - >; - }; - - /* Aquila GPIO_04 */ - pinctrl_gpio_04: wkup-gpio0-17-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x004, PIN_INPUT, 7) /* (D32) MCU_OSPI0_LBCLKO.WKUP_GPIO0_17 */ /* AQUILA C20 */ - >; - }; - - /* Aquila QSPI_1_DQS as GPIO */ - pinctrl_wkup_gpio_18: wkup-gpio0-18-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x008, PIN_INPUT, 7) /* (C34) MCU_OSPI0_DQS.WKUP_GPIO0_18 */ /* AQUILA B63 */ - >; - }; - - /* Aquila QSPI_1_IO0 as GPIO */ - pinctrl_wkup_gpio_19: wkup-gpio0-19-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x00c, PIN_INPUT, 7) /* (B33) MCU_OSPI0_D0.WKUP_GPIO0_19 */ /* AQUILA B68 */ - >; - }; - - /* Aquila QSPI_1_IO1 as GPIO */ - pinctrl_wkup_gpio_20: wkup-gpio0-20-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x010, PIN_INPUT, 7) /* (B32) MCU_OSPI0_D1.WKUP_GPIO0_20 */ /* AQUILA B67 */ - >; - }; - - /* Aquila QSPI_1_IO2 as GPIO */ - pinctrl_wkup_gpio_21: wkup-gpio0-21-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x014, PIN_INPUT, 7) /* (C33) MCU_OSPI0_D2.WKUP_GPIO0_21 */ /* AQUILA B61 */ - >; - }; - - /* Aquila QSPI_1_IO3 as GPIO */ - pinctrl_wkup_gpio_22: wkup-gpio0-22-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x018, PIN_INPUT, 7) /* (C35) MCU_OSPI0_D3.WKUP_GPIO0_22 */ /* AQUILA B60 */ - >; - }; - - /* Aquila QSPI_1_IO4 as GPIO */ - pinctrl_wkup_gpio_23: wkup-gpio0-23-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x01c, PIN_INPUT, 7) /* (D33) MCU_OSPI0_D4.WKUP_GPIO0_23 */ /* AQUILA B70 */ - >; - }; - - /* Aquila QSPI_1_IO5 as GPIO */ - pinctrl_wkup_gpio_24: wkup-gpio0-24-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x020, PIN_INPUT, 7) /* (D34) MCU_OSPI0_D5.WKUP_GPIO0_24 */ /* AQUILA B71 */ - >; - }; - - /* Aquila QSPI_1_IO6 as GPIO */ - pinctrl_wkup_gpio_25: wkup-gpio0-25-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x024, PIN_INPUT, 7) /* (E34) MCU_OSPI0_D6.WKUP_GPIO0_25 */ /* AQUILA B72 */ - >; - }; - - /* Aquila QSPI_1_IO7 as GPIO */ - pinctrl_wkup_gpio_26: wkup-gpio0-26-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x028, PIN_INPUT, 7) /* (E33) MCU_OSPI0_D7.WKUP_GPIO0_26 */ /* AQUILA B73 */ - >; - }; - - /* Aquila QSPI_1_CS#1 as GPIO */ - pinctrl_wkup_gpio_27: wkup-gpio0-27-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x02c, PIN_INPUT, 7) /* (A32) MCU_OSPI0_CSn0.WKUP_GPIO0_27 */ /* AQUILA B66 */ - >; - }; - - /* Aquila QSPI_1_CS#2 as GPIO */ - pinctrl_wkup_gpio_28: wkup-gpio0-28-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x030, PIN_INPUT, 7) /* (A33) MCU_OSPI0_CSn1.WKUP_GPIO0_28 */ /* AQUILA B62 */ - >; - }; -}; - -&wkup_pmx1 { - /* Aquila UART_4 (RXD) */ - pinctrl_mcu_uart0_rx: mcu-uart0-rx-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x018, PIN_INPUT, 4) /* (D31) MCU_OSPI1_D1.MCU_UART0_RXD */ /* AQUILA D21 */ - >; - }; - - /* Aquila GPIO_05 */ - pinctrl_gpio_05: wkup-gpio0-29-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x000, PIN_INPUT, 7) /* (B34) MCU_OSPI0_CSn2.WKUP_GPIO0_29 */ /* AQUILA C21 */ - >; - }; - - /* Aquila GPIO_06 */ - pinctrl_gpio_06: wkup-gpio0-30-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x004, PIN_INPUT, 7) /* (C32) MCU_OSPI0_CSn3.WKUP_GPIO0_30 */ /* AQUILA C22 */ - >; - }; - - /* Aquila GPIO_07 */ - pinctrl_gpio_07: wkup-gpio0-31-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x008, PIN_INPUT, 7) /* (F32) MCU_OSPI1_CLK.WKUP_GPIO0_31 */ /* AQUILA C23 */ - >; - }; - - /* Aquila GPIO_13_CSI_2 */ - pinctrl_gpio_13_csi_2: wkup-gpio0-32-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x00c, PIN_INPUT, 7) /* (C31) MCU_OSPI1_LBCLKO.WKUP_GPIO0_32 */ /* AQUILA C1 */ - >; - }; - - /* Aquila GPIO_14_CSI_2 */ - pinctrl_gpio_14_csi_2: wkup-gpio0-33-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x010, PIN_INPUT, 7) /* (F31) MCU_OSPI1_DQS.WKUP_GPIO0_33 */ /* AQUILA C2 */ - >; - }; - - /* RTC_IRQ# */ - pinctrl_rtc_irq: wkup-gpio0-34-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x014, PIN_INPUT, 7) /* (E35) MCU_OSPI1_D0.WKUP_GPIO0_34 */ - >; - }; - - /* Aquila CTRL_PWR_BTN_MICO# (PWR_BTN_INT#) */ - pinctrl_pwr_btn_int: wkup-gpio0-36-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x01c, PIN_INPUT_PULLUP, 7) /* (G31) MCU_OSPI1_D2.WKUP_GPIO0_36 */ /* AQUILA B92 */ - >; - }; - - /* Aquila GPIO_15_CSI_2 */ - pinctrl_gpio_15_csi_2: wkup-gpio0-37-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x020, PIN_INPUT, 7) /* (F33) MCU_OSPI1_D3.WKUP_GPIO0_37 */ /* AQUILA C3 */ - >; - }; - - /* Aquila GPIO_08 */ - pinctrl_gpio_08: wkup-gpio0-38-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x024, PIN_INPUT, 7) /* (G32) MCU_OSPI1_CSn0.WKUP_GPIO0_38 */ /* AQUILA C24 */ - >; - }; - - /* Aquila GPIO_16_CSI_2 */ - pinctrl_gpio_16_csi_2: wkup-gpio0-39-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x028, PIN_INPUT, 7) /* (G33) MCU_OSPI1_CSn1.WKUP_GPIO0_39 */ /* AQUILA C4 */ - >; - }; -}; - -&wkup_pmx2 { - /* Aquila ADC_[1-4] */ - pinctrl_mcu_adc0: mcu-adc0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x0cc, PIN_OUTPUT, 0) /* (P36) MCU_ADC0_AIN0 */ /* AQUILA D1 */ - J784S4_WKUP_IOPAD(0x0d0, PIN_OUTPUT, 0) /* (V36) MCU_ADC0_AIN1 */ /* AQUILA D2 */ - J784S4_WKUP_IOPAD(0x0d4, PIN_OUTPUT, 0) /* (T34) MCU_ADC0_AIN2 */ /* AQUILA D3 */ - J784S4_WKUP_IOPAD(0x0d8, PIN_OUTPUT, 0) /* (T36) MCU_ADC0_AIN3 */ /* AQUILA D4 */ - >; - }; - - /* Aquila CTRL_MCLK_MOCI */ - pinctrl_mcu_clkout0: mcu-clkout0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x084, PIN_OUTPUT, 6) /* (M38) WKUP_GPIO0_11.MCU_CLKOUT0 */ /* AQUILA A14 */ - >; - }; - - /* Aquila I2C_1 */ - pinctrl_mcu_i2c0: mcu-i2c0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x0a0, PIN_INPUT, 0) /* (M35) MCU_I2C0_SCL */ /* AQUILA D8 */ - J784S4_WKUP_IOPAD(0x0a4, PIN_INPUT, 0) /* (G34) MCU_I2C0_SDA */ /* AQUILA D7 */ - >; - }; - - /* Aquila I2C_2 */ - pinctrl_mcu_i2c1: mcu-i2c1-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x078, PIN_INPUT_PULLUP, 0) /* (L35) WKUP_GPIO0_8.MCU_I2C1_SCL */ /* AQUILA C17 */ - J784S4_WKUP_IOPAD(0x07c, PIN_INPUT_PULLUP, 0) /* (L34) WKUP_GPIO0_9.MCU_I2C1_SDA */ /* AQUILA C16 */ - >; - }; - - /* Aquila CAN_2 */ - pinctrl_mcu_mcan0: mcu-mcan0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x054, PIN_INPUT, 0) /* (F38) MCU_MCAN0_RX */ /* AQUILA B51 */ - J784S4_WKUP_IOPAD(0x050, PIN_OUTPUT, 0) /* (K33) MCU_MCAN0_TX */ /* AQUILA B50 */ - >; - }; - - /* Aquila CAN_4 */ - pinctrl_mcu_mcan1: mcu-mcan1-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x06c, PIN_INPUT, 0) /* (K36) WKUP_GPIO0_5.MCU_MCAN1_RX */ /* AQUILA B56 */ - J784S4_WKUP_IOPAD(0x068, PIN_OUTPUT, 0) /* (H35) WKUP_GPIO0_4.MCU_MCAN1_TX */ /* AQUILA B55 */ - >; - }; - - /* On-module ETH_1 MDIO */ - pinctrl_mcu_mdio: mcu-mdio-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x034, PIN_OUTPUT, 0) /* (A36) MCU_MDIO0_MDC */ - J784S4_WKUP_IOPAD(0x030, PIN_INPUT, 0) /* (B35) MCU_MDIO0_MDIO */ - >; - }; - - /* On-module ETH_1 RGMII */ - pinctrl_mcu_rgmii1: mcu-rgmii1-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x02c, PIN_INPUT, 0) /* (A35) MCU_RGMII1_RD0 */ - J784S4_WKUP_IOPAD(0x028, PIN_INPUT, 0) /* (B36) MCU_RGMII1_RD1 */ - J784S4_WKUP_IOPAD(0x024, PIN_INPUT, 0) /* (C36) MCU_RGMII1_RD2 */ - J784S4_WKUP_IOPAD(0x020, PIN_INPUT, 0) /* (D36) MCU_RGMII1_RD3 */ - J784S4_WKUP_IOPAD(0x01c, PIN_INPUT, 0) /* (B37) MCU_RGMII1_RXC */ - J784S4_WKUP_IOPAD(0x004, PIN_INPUT, 0) /* (C37) MCU_RGMII1_RX_CTL */ - J784S4_WKUP_IOPAD(0x014, PIN_OUTPUT, 0) /* (D37) MCU_RGMII1_TD0 */ - J784S4_WKUP_IOPAD(0x010, PIN_OUTPUT, 0) /* (D38) MCU_RGMII1_TD1 */ - J784S4_WKUP_IOPAD(0x00c, PIN_OUTPUT, 0) /* (E37) MCU_RGMII1_TD2 */ - J784S4_WKUP_IOPAD(0x008, PIN_OUTPUT, 0) /* (E38) MCU_RGMII1_TD3 */ - J784S4_WKUP_IOPAD(0x018, PIN_OUTPUT, 0) /* (E36) MCU_RGMII1_TXC */ - J784S4_WKUP_IOPAD(0x000, PIN_OUTPUT, 0) /* (C38) MCU_RGMII1_TX_CTL */ - >; - }; - - /* On-module SPI (TPM_SPI) */ - pinctrl_mcu_spi0: mcu-spi0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x038, PIN_OUTPUT, 0) /* (G38) MCU_SPI0_CLK */ - J784S4_WKUP_IOPAD(0x044, PIN_OUTPUT, 0) /* (F37) MCU_SPI0_CS0 */ - J784S4_WKUP_IOPAD(0x03c, PIN_INPUT, 0) /* (H36) MCU_SPI0_D0 */ - J784S4_WKUP_IOPAD(0x040, PIN_OUTPUT, 0) /* (J38) MCU_SPI0_D1 */ - >; - }; - - /* Aquila UART_4 (TX) */ - pinctrl_mcu_uart0_tx: mcu-uart0-tx-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x080, PIN_OUTPUT, 2) /* (L33) WKUP_GPIO0_10.MCU_UART0_TXD */ /* AQUILA D22 */ - >; - }; - - /* On-module Wi-Fi Power Enable */ - pinctrl_en_3v3_wifi: wkup-gpio0-57-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x114, PIN_INPUT, 7) /* (M36) WKUP_GPIO0_57 */ - >; - }; - - /* On-module TPM IRQ# */ - pinctrl_tpm_irq: wkup-gpio0-81-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x0f4, PIN_INPUT, 7) /* (V34) MCU_ADC1_AIN2.WKUP_GPIO0_81 */ - >; - }; - - /* On-module I2C - WKUP_I2C0 */ - pinctrl_wkup_i2c0: wkup-i2c0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x098, PIN_INPUT, 0) /* (N33) WKUP_I2C0_SCL */ - J784S4_WKUP_IOPAD(0x09c, PIN_INPUT, 0) /* (N35) WKUP_I2C0_SDA */ - >; - }; - - /* Aquila UART_2 */ - pinctrl_wkup_uart0: wkup-uart0-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x070, PIN_INPUT, 0) /* (L37) WKUP_GPIO0_6.WKUP_UART0_CTSn */ /* AQUILA B32 */ - J784S4_WKUP_IOPAD(0x074, PIN_OUTPUT, 0) /* (L36) WKUP_GPIO0_7.WKUP_UART0_RTSn */ /* AQUILA B34 */ - J784S4_WKUP_IOPAD(0x048, PIN_INPUT, 0) /* (K35) WKUP_UART0_RXD */ /* AQUILA B31 */ - J784S4_WKUP_IOPAD(0x04c, PIN_OUTPUT, 0) /* (K34) WKUP_UART0_TXD */ /* AQUILA B33 */ - >; - }; -}; - -&wkup_pmx3 { - /* Aquila CTRL_WAKE1_MICO# */ - pinctrl_ctrl_wake1_mico: wkup-gpio0-49-default-pins { - pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x000, PIN_INPUT_PULLUP, 7) /* (M33) WKUP_GPIO0_49 */ /* AQUILA D6 */ - >; - }; -}; - -/* Aquila I2S_1_MCLK */ -&audio_refclk1 { - assigned-clock-rates = <24576000>; -}; - -/* On-module ETH_1 MDIO */ -&davinci_mdio { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_mdio>; - status = "disabled"; - - mcu_phy0: ethernet-phy@0 { - reg = <0>; - interrupt-parent = <&wkup_gpio0>; - interrupts = <79 IRQ_TYPE_EDGE_FALLING>; - ti,rx-internal-delay = ; - ti,fifo-depth = ; - }; -}; - -&dss { - assigned-clocks = <&k3_clks 218 2>, - <&k3_clks 218 5>; - assigned-clock-parents = <&k3_clks 218 3>, - <&k3_clks 218 7>; - status = "disabled"; -}; - -&dss_ports { - #address-cells = <1>; - #size-cells = <0>; - - port@0 { - reg = <0>; - dpi0_out: endpoint { - remote-endpoint = <&dp0_in>; - }; - }; -}; - -&dp0_ports { - #address-cells = <1>; - #size-cells = <0>; - - port@0 { - reg = <0>; - dp0_in: endpoint { - remote-endpoint = <&dpi0_out>; - }; - }; -}; - -&main0_crit { - temperature = <105000>; -}; - -&main0_thermal { - trips { - main0_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - main0_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&main1_crit { - temperature = <105000>; -}; - -&main1_thermal { - trips { - main1_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - main1_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&main2_crit { - temperature = <105000>; -}; - -&main2_thermal { - trips { - main2_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - main2_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&main3_crit { - temperature = <105000>; -}; - -&main3_thermal { - trips { - main3_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - main3_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&main4_crit { - temperature = <105000>; -}; - -&main4_thermal { - trips { - main4_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - main4_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -/* Aquila ETH_2 SGMII PHY */ -&main_cpsw0_port8 { - phy-mode = "sgmii"; - phys = <&cpsw0_phy_gmii_sel 8>, <&serdes2_sgmii_link>; - phy-names = "mac", "serdes"; - status = "disabled"; -}; - -/* Aquila ETH_2_XGMII_MDIO */ -&main_cpsw0_mdio { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_mdio1>; -}; - -/* Aquila PWM_1 */ -&main_ehrpwm0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_ehrpwm0_b>; - status = "disabled"; -}; - -/* Aquila PWM_2 */ -&main_ehrpwm1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_ehrpwm1_a>; - status = "disabled"; -}; - -/* Aquila PWM_4_DP */ -&main_ehrpwm2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_ehrpwm2_a>; - status = "disabled"; -}; - -/* Aquila PWM_3_DSI */ -&main_ehrpwm5 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_ehrpwm5_a>; - status = "disabled"; -}; - -&main_gpio0 { - gpio-line-names = - "", /* 0 */ - "AQUILA_B17", - "AQUILA_B18", - "AQUILA_B53", - "AQUILA_B54", - "AQUILA_B59", - "AQUILA_C18", - "AQUILA_C19", - "AQUILA_A13", - "AQUILA_A12", - "AQUILA_B75", /* 10 */ - "AQUILA_B77", - "AQUILA_B42", - "AQUILA_B44", - "AQUILA_D19", - "AQUILA_D20", - "AQUILA_B58", - "AQUILA_D24", - "AQUILA_B45", - "AQUILA_C06", - "AQUILA_C05", /* 20 */ - "AQUILA_B57", - "AQUILA_B90", - "AQUILA_B89", - "AQUILA_C26", - "AQUILA_C25", - "AQUILA_B22", - "AQUILA_B21", - "AQUILA_B74", - "AQUILA_D25", - "AQUILA_B24", /* 30 */ - "AQUILA_B43", - "AQUILA_C38", - "AQUILA_B46", - "AQUILA_D23", - "AQUILA_B35", - "AQUILA_B37", - "AQUILA_B36", - "AQUILA_B38", - "AQUILA_D09", - "AQUILA_D12", /* 40 */ - "AQUILA_C35", - "AQUILA_D10", - "AQUILA_D11", - "AQUILA_B81", - "AQUILA_B48", - "AQUILA_B49", - "AQUILA_A11", - "AQUILA_B19", - "AQUILA_B23", - "AQUILA_B20", /* 50 */ - "AQUILA_D16", - "AQUILA_A06", - "AQUILA_D14", - "AQUILA_D15", - "AQUILA_D17", - "AQUILA_B41", - "AQUILA_B40", - "AQUILA_A01", - "", - "AQUILA_A08", /* 60 */ - "AQUILA_A10", - "AQUILA_A02", - "AQUILA_A03", - "AQUILA_A05", - "AQUILA_A07"; - - status = "okay"; -}; - -/* Aquila I2C_3_DSI1 */ -&main_i2c0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_i2c0>; - clock-frequency = <100000>; - status = "disabled"; -}; - -/* Aquila I2C_4_CSI1 */ -&main_i2c1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_i2c1>; - clock-frequency = <400000>; - status = "disabled"; -}; - -/* Aquila I2C_5_CSI2 */ -&main_i2c2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_i2c2>; - clock-frequency = <400000>; - status = "disabled"; -}; - -/* Aquila I2C_6 */ -&main_i2c5 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_i2c5>; - clock-frequency = <400000>; - status = "disabled"; -}; - -/* Aquila CAN_1 */ -&main_mcan10 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_mcan10>; - status = "disabled"; -}; - -/* Aquila CAN_3 */ -&main_mcan13 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_mcan13>; - status = "disabled"; -}; - -/* On-module eMMC */ -&main_sdhci0 { - disable-wp; - non-removable; - ti,driver-strength-ohm = <50>; - status = "okay"; -}; - -/* Aquila SD_1 */ -&main_sdhci1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_mmc1>, <&pinctrl_sd1_cd_gpio>; - cd-gpios = <&main_gpio0 58 GPIO_ACTIVE_LOW>; - disable-wp; - vmmc-supply = <®_sdhc1_vmmc>; - vqmmc-supply = <®_sdhc1_vqmmc>; - ti,driver-strength-ohm = <50>; - ti,fails-without-test-cd; - status = "disabled"; -}; - -/* Aquila SPI_2 */ -&main_spi0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_spi0>, <&pinctrl_main_spi0_cs0>; - status = "disabled"; -}; - -/* Aquila SPI_1 */ -&main_spi2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_spi2>, <&pinctrl_main_spi2_cs0>; - status = "disabled"; -}; - -/* Aquila UART_1 */ -&main_uart4 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_uart4>; - status = "disabled"; -}; - -/* Aquila UART_3, used as the Linux console */ -&main_uart8 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_uart8>; - status = "disabled"; -}; - -/* Aquila I2S_1 */ -&mcasp4 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_mcasp4>; - op-mode = <0>; /* MCASP_I2S_MODE */ - serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ - 0 1 2 0 - 0 0 0 0 - 0 0 0 0 - 0 0 0 0 - >; - tdm-slots = <2>; - #sound-dai-cells = <0>; - status = "disabled"; -}; - -&mcu_cpsw { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_rgmii1>; - status = "disabled"; -}; - -/* On-module ETH_1 RGMII */ -&mcu_cpsw_port1 { - phy-handle = <&mcu_phy0>; - phy-mode = "rgmii-id"; - status = "disabled"; -}; - -/* Aquila I2C_1 */ -&mcu_i2c0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_i2c0>; - clock-frequency = <400000>; - status = "disabled"; -}; - -/* Aquila I2C_2 */ -&mcu_i2c1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_i2c1>; - clock-frequency = <400000>; - status = "disabled"; -}; - -/* Aquila CAN_2 */ -&mcu_mcan0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_mcan0>; - status = "disabled"; -}; - -/* Aquila CAN_4 */ -&mcu_mcan1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_mcan1>; - status = "disabled"; -}; - -/* On-module SPI (TPM_SPI) */ -&mcu_spi0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_spi0>; - status = "okay"; - - tpm@0 { - compatible = "st,st33htpm-spi", "tcg,tpm_tis-spi"; - reg = <0>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_tpm_irq>; - interrupt-parent = <&wkup_gpio0>; - interrupts = <81 IRQ_TYPE_EDGE_FALLING>; - spi-max-frequency = <33000000>; - }; -}; - -/* Aquila UART_4 */ -&mcu_uart0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_uart0_rx>, <&pinctrl_mcu_uart0_tx>; - status = "disabled"; -}; - -&mhdp { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_main_dp0_hpd>; - phy-names = "dpphy"; - phys = <&serdes4_dp0_link>; - status = "disabled"; -}; - -/* Aquila QSPI_1 */ -&ospi0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_ospi0_8bit>, <&pinctrl_mcu_ospi0_cs0>; - status = "disabled"; -}; - -/* Aquila PCIE_1 */ -&pcie0_rc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pcie0_reset>; - clocks = <&k3_clks 332 0>, <&serdes1 CDNS_TORRENT_REFCLK_DRIVER>; - clock-names = "fck", "pcie_refclk"; - num-lanes = <2>; - phy-names = "pcie-phy"; - phys = <&serdes1_pcie0_2l_link>; - reset-gpios = <&main_gpio0 32 GPIO_ACTIVE_HIGH>; - ti,syscon-acspcie-proxy-ctrl = <&acspcie1_proxy_ctrl 0x3>; - status = "disabled"; -}; - -/* Aquila PCIE_2 */ -&pcie1_rc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pcie1_reset>; - clocks = <&k3_clks 333 0>, <&serdes0 CDNS_TORRENT_REFCLK_DRIVER>; - clock-names = "fck", "pcie_refclk"; - num-lanes = <2>; - phy-names = "pcie-phy"; - phys = <&serdes0_pcie1_2l_link>; - reset-gpios = <&main_gpio0 41 GPIO_ACTIVE_HIGH>; - ti,syscon-acspcie-proxy-ctrl = <&acspcie0_proxy_ctrl 0x3>; - status = "disabled"; -}; - -/* On-module PCIe USB Bridge */ -&pcie2_rc { - clocks = <&k3_clks 334 0>, <&serdes1 CDNS_TORRENT_REFCLK_DRIVER>; - clock-names = "fck", "pcie_refclk"; - num-lanes = <1>; - phy-names = "pcie-phy"; - phys = <&serdes1_pcie2_1l_link>; - reset-gpios = <&som_gpio_expander 3 GPIO_ACTIVE_HIGH>; - ti,syscon-acspcie-proxy-ctrl = <&acspcie1_proxy_ctrl 0x3>; - status = "okay"; - - pci@0,0 { - device_type = "pci"; - reg = <0x0 0x0 0x0 0x0 0x0>; - - #address-cells = <3>; - #size-cells = <2>; - ranges; - - usb@0 { - compatible = "pci104c,8241"; - reg = <0x0 0x0 0x0 0x0 0x0>; - ti,pwron-active-high; - }; - }; -}; - -/* PCIE for On-module Wi-Fi */ -&pcie3_rc { - clocks = <&k3_clks 335 0>, <&serdes0 CDNS_TORRENT_REFCLK_DRIVER>; - clock-names = "fck", "pcie_refclk"; - num-lanes = <1>; - phy-names = "pcie-phy"; - phys = <&serdes0_pcie3_1l_link>; - reset-gpios = <&som_gpio_expander 4 GPIO_ACTIVE_HIGH>; - ti,syscon-acspcie-proxy-ctrl = <&acspcie0_proxy_ctrl 0x3>; - status = "okay"; -}; - -&serdes0 { - status = "okay"; - - /* Aquila PCIE_2 */ - serdes0_pcie1_2l_link: phy@0 { - reg = <0>; - #phy-cells = <0>; - resets = <&serdes_wiz0 1>, <&serdes_wiz0 2>; - cdns,num-lanes = <2>; - cdns,phy-type = ; - }; - - /* On-module PCIe Wi-Fi */ - serdes0_pcie3_1l_link: phy@2 { - reg = <2>; - #phy-cells = <0>; - resets = <&serdes_wiz0 3>; - cdns,num-lanes = <1>; - cdns,phy-type = ; - }; - - /* Aquila USB0 SS */ - serdes0_usb0_ss_link: phy@3 { - reg = <3>; - #phy-cells = <0>; - resets = <&serdes_wiz0 4>; - cdns,num-lanes = <1>; - cdns,phy-type = ; - }; -}; - -&serdes1 { - status = "okay"; - - /* Aquila PCIE_1 */ - serdes1_pcie0_2l_link: phy@0 { - reg = <0>; - #phy-cells = <0>; - resets = <&serdes_wiz1 1>, <&serdes_wiz1 2>; - cdns,num-lanes = <2>; - cdns,phy-type = ; - }; - - /* On-module PCIe USB Bridge */ - serdes1_pcie2_1l_link: phy@2 { - reg = <2>; - #phy-cells = <0>; - resets = <&serdes_wiz1 3>; - cdns,num-lanes = <1>; - cdns,phy-type = ; - }; -}; - -&serdes2 { - status = "disabled"; - - /* Aquila ETH_2 xGMII */ - serdes2_sgmii_link: phy@3 { - reg = <3>; - #phy-cells = <0>; - resets = <&serdes_wiz2 4>; - cdns,num-lanes = <1>; - cdns,phy-type = ; - }; -}; - -&serdes4 { - status = "disabled"; - - /* Aquila DP_1 */ - serdes4_dp0_link: phy@0 { - reg = <0>; - #phy-cells = <0>; - resets = <&serdes_wiz4 1>, <&serdes_wiz4 2>, - <&serdes_wiz4 3>, <&serdes_wiz4 4>; - cdns,max-bit-rate = <5400>; - cdns,num-lanes = <4>; - cdns,phy-type = ; - }; -}; - -&serdes_refclk { - clock-frequency = <100000000>; - status = "okay"; -}; - -&serdes_ln_ctrl { - idle-states = , /* Aquila PCIE_2 L0 */ - , /* Aquila PCIE_2 L1 */ - , /* On-module PCIe Wi-Fi */ - , /* Aquila USB0 SS */ - , /* Aquila PCIE_1 L0 */ - , /* Aquila PCIE_1 L1 */ - , /* On-module PCIe USB Bridge */ - , /* Aquila SGMII MSP_9 */ - , /* Aquila SGMII MSP_6 */ - , /* Aquila SGMII MSP_7 */ - , /* Aquila SGMII MSP_8 */ - , /* Aquila ETH_2 xGMII */ - , /* Aquila DP L0 */ - , /* Aquila DP L1 */ - , /* Aquila DP L2 */ - ; /* Aquila DP L3 */ -}; - -&serdes_wiz0 { - status = "okay"; -}; - -&serdes_wiz1 { - status = "okay"; -}; - -&serdes_wiz2 { - status = "disabled"; -}; - -&serdes_wiz4 { - status = "disabled"; -}; - -/* Aquila ADC_[1-4] */ -&tscadc0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mcu_adc0>; - status = "disabled"; - - adc { - ti,adc-channels = <0 1 2 3>; - }; -}; - -&usb0 { - phys = <&serdes0_usb0_ss_link>; - phy-names = "cdns3,usb3-phy"; - dr_mode = "otg"; - maximum-speed = "super-speed"; - usb-role-switch; - status = "disabled"; -}; - -&usb_serdes_mux { - idle-states = <0>; /* USB0 to SERDES lane 3 */ -}; - -&usbss0 { - ti,vbus-divider; - status = "disabled"; -}; - -&wkup_gpio0 { - gpio-line-names = - "", /* 0 */ - "", - "", - "AQUILA_C53", - "AQUILA_B55", - "AQUILA_B56", - "AQUILA_B32", - "AQUILA_B34", - "AQUILA_C17", - "AQUILA_C16", - "AQUILA_D22", /* 10 */ - "", - "", - "", - "", - "", - "AQUILA_B65", - "AQUILA_C20", - "AQUILA_B63", - "AQUILA_B68", - "AQUILA_B67", /* 20 */ - "AQUILA_B61", - "AQUILA_B60", - "AQUILA_B70", - "AQUILA_B71", - "AQUILA_B72", - "AQUILC_B73", - "AQUILA_B66", - "AQUILA_B62", - "AQUILA_C21", - "AQUILA_C22", /* 30 */ - "AQUILA_C23", - "AQUILA_C01", - "AQUILA_C02", - "", - "AQUILA_D21", - "", - "AQUILA_C03", - "AQUILA_C24", - "AQUILA_C04", - "AQUILA_B84", /* 40 */ - "", - "AQUILA_B86", - "AQUILA_B87", - "", - "", - "AQUILA_B83", - "", - "", - "", - "", /* 50 */ - "", - "", - "", - "", - "", - "", - "", - "AQUILA_B31", - "AQUILA_B33", - "AQUILA_B50", /* 60 */ - "AQUILA_B51", - "", - "", - "", - "AQUILA_D08", - "", - "", - "", - "", - "", /* 70 */ - "AQUILA_D01", - "AQUILA_D02", - "AQUILA_D03", - "AQUILA_D04", - "AQUILA_D54", - "AQUILA_D55", - "AQUILA_C55", - "AQUILA_C56", - "", - "AQUILA_C36", /* 80 */ - "", - "", - "", - "", - "", - "", - "AQUILA_D07", - ""; - - status = "okay"; -}; - -/* On-module I2C - WKUP_I2C0 */ -&wkup_i2c0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wkup_i2c0>; - clock-frequency = <400000>; - status = "okay"; - - som_gpio_expander: gpio@21 { - compatible = "ti,tca6408"; - reg = <0x21>; - #gpio-cells = <2>; - gpio-controller; - gpio-line-names = - "USB_MUX_SEL", - "COLD_RESET_REQ", - "PWR_DOWN_REQ", - "PCIE_3_RESET#", - "PCIE_4_RESET#", - "WIFI_DISABLE", - "BT_DISABLE", - "SDIO_PWR_SEL_3.3V"; - }; - - rtc_i2c: rtc@32 { - compatible = "epson,rx8130"; - reg = <0x32>; - }; - - tps62873a: regulator@40 { - compatible = "ti,tps62873"; - reg = <0x40>; - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <900000>; - regulator-min-microvolt = <600000>; - regulator-name = "+VDD_CPU_AVS"; - }; - - tps62873b: regulator@43 { - compatible = "ti,tps62873"; - reg = <0x43>; - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <840000>; - regulator-min-microvolt = <760000>; - regulator-name = "+V0.8_VDD_CORE"; - }; - - pmic_tps6594: pmic@48 { - compatible = "ti,tps6594-q1"; - reg = <0x48>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pmic_int>; - interrupt-parent = <&main_gpio0>; - interrupts = <0 IRQ_TYPE_EDGE_FALLING>; - #gpio-cells = <2>; - gpio-controller; - buck12-supply = <®_vin>; - buck3-supply = <®_vin>; - buck4-supply = <®_vin>; - buck5-supply = <®_vin>; - ldo1-supply = <®_vin>; - ldo2-supply = <®_vin>; - ldo3-supply = <®_vin>; - ldo4-supply = <®_vin>; - system-power-controller; - ti,primary-pmic; - - regulators { - reg_vdd_ddr: buck12 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <1100000>; - regulator-min-microvolt = <1100000>; - regulator-name = "+V1.1_VDD_DDR (PMIC BUCK12)"; - }; - - reg_vdd_ram: buck3 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <850000>; - regulator-min-microvolt = <850000>; - regulator-name = "+V0.85_VDD_RAM (PMIC BUCK3)"; - }; - - reg_vdd_io: buck4 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "+V1.8_VDD_IO (PMIC BUCK4)"; - }; - - reg_3v3_vio: buck5 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <3300000>; - regulator-min-microvolt = <3300000>; - regulator-name = "+V3.3_VIO (PMIC BUCK5)"; - }; - - reg_vda_phy: ldo1 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "+V1.8_VDA_PHY (PMIC LDO1)"; - }; - - reg_2v5_eth: ldo2 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <2500000>; - regulator-min-microvolt = <2500000>; - regulator-name = "+V2.5_ETH (PMIC LDO2)"; - }; - - reg_vda_dll: ldo3 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <800000>; - regulator-min-microvolt = <800000>; - regulator-name = "+V0.8_VDA_DLL (PMIC LDO3)"; - }; - - reg_vda_pll: ldo4 { - regulator-always-on; - regulator-boot-on; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "+V0.8_VDA_PLL (PMIC LDO4)"; - }; - }; - }; - - temperature-sensor@4f { - compatible = "ti,tmp1075"; - reg = <0x4f>; - }; - - som_eeprom: eeprom@50 { - compatible = "st,24c02", "atmel,24c02"; - reg = <0x50>; - pagesize = <16>; - }; -}; - -&wkup0_crit { - temperature = <105000>; -}; - -&wkup0_thermal { - trips { - wkup0_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - wkup0_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&wkup1_crit { - temperature = <105000>; -}; - -&wkup1_thermal { - trips { - wkup1_alert0: trip-point0 { - temperature = <70000>; - hysteresis = <2000>; - type = "active"; - }; - - wkup1_alert1: trip-point1 { - temperature = <85000>; - hysteresis = <2000>; - type = "active"; - }; - }; -}; - -&wkup_gpio_intr { - status = "okay"; -}; - -/* Aquila UART_2 */ -&wkup_uart0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wkup_uart0>; - status = "disabled"; -}; diff --git a/arch/arm/mach-k3/j784s4/Kconfig b/arch/arm/mach-k3/j784s4/Kconfig index fff44dbf7c9..f5447b0b836 100644 --- a/arch/arm/mach-k3/j784s4/Kconfig +++ b/arch/arm/mach-k3/j784s4/Kconfig @@ -14,6 +14,7 @@ config TARGET_AQUILA_AM69_A72 select ARM64 select SYS_DISABLE_DCACHE_OPS select BINMAN + imply OF_UPSTREAM config TARGET_AQUILA_AM69_R5 bool "Toradex Aquila AM69 running on R5" diff --git a/board/toradex/aquila-am69/MAINTAINERS b/board/toradex/aquila-am69/MAINTAINERS index f629ba4a019..014e7e99b0b 100644 --- a/board/toradex/aquila-am69/MAINTAINERS +++ b/board/toradex/aquila-am69/MAINTAINERS @@ -3,9 +3,7 @@ M: Francesco Dolcini W: https://www.toradex.com/computer-on-modules/aquila-arm-family/ti-am69 S: Maintained F: arch/arm/dts/k3-am69-aquila-dev-u-boot.dtsi -F: arch/arm/dts/k3-am69-aquila-dev.dts F: arch/arm/dts/k3-am69-aquila-lpddr4-4266.dtsi -F: arch/arm/dts/k3-am69-aquila.dtsi F: arch/arm/dts/k3-am69-r5-aquila-dev.dts F: board/toradex/aquila-am69 F: configs/aquila-am69_a72_defconfig diff --git a/configs/aquila-am69_a72_defconfig b/configs/aquila-am69_a72_defconfig index 0f85b228b06..b15f86552cb 100644 --- a/configs/aquila-am69_a72_defconfig +++ b/configs/aquila-am69_a72_defconfig @@ -11,7 +11,7 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80480000 CONFIG_ENV_SIZE=0x2000 CONFIG_ENV_OFFSET=0xFFFFDE00 CONFIG_DM_GPIO=y -CONFIG_DEFAULT_DEVICE_TREE="k3-am69-aquila-dev" +CONFIG_DEFAULT_DEVICE_TREE="ti/k3-am69-aquila-dev" CONFIG_OF_LIBFDT_OVERLAY=y CONFIG_DM_RESET=y CONFIG_SPL_MMC=y @@ -76,6 +76,7 @@ CONFIG_CMD_EXT4_WRITE=y # CONFIG_SPL_EFI_PARTITION is not set CONFIG_OF_CONTROL=y CONFIG_SPL_OF_CONTROL=y +CONFIG_OF_UPSTREAM=y CONFIG_SPL_MULTI_DTB_FIT=y CONFIG_SPL_MULTI_DTB_FIT_NO_COMPRESSION=y CONFIG_ENV_OVERWRITE=y From cf8bb114418e7b96f1d18d4e38418ccf8eec957f Mon Sep 17 00:00:00 2001 From: Vitor Soares Date: Fri, 17 Apr 2026 15:42:04 +0200 Subject: [PATCH 2/2] board: toradex: aquila-am69: add remoteproc firmware pre-loading Some use cases require remoteproc firmware to be loaded before Linux boots. Introduce rprocsemmcboot and rproc_fw_binaries to load the remoteproc cores from U-Boot, relying on the TI k3_rproc framework which already handles the secure firmware variants, firmware loading, and proper initialization. The firmware binaries are expected to be present in the eMMC rootfs under /lib/firmware/. To activate, run rprocsemmcboot or add it to bootcmd: bootcmd=run rprocsemmcboot; bootflow scan -b The upstream U-Boot does not yet have the remoteproc DT nodes enabled for the Aquila AM69, making firmware loading fail. Marking as pending waiting for remoteproc enabling, which could happen along with the OF_UPSTREAM migration. Signed-off-by: Vitor Soares Acked-by: Francesco Dolcini --- board/toradex/aquila-am69/aquila-am69.env | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/board/toradex/aquila-am69/aquila-am69.env b/board/toradex/aquila-am69/aquila-am69.env index f8b7363dcf5..d61898091aa 100644 --- a/board/toradex/aquila-am69/aquila-am69.env +++ b/board/toradex/aquila-am69/aquila-am69.env @@ -1,3 +1,5 @@ +#include + #define CFG_RAMDISK_ADDR_R 0x90300000 #define CFG_SCRIPTADDR 0x90280000 @@ -39,3 +41,22 @@ update_uboot= setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200; mmc dev 0 1; mmc write ${loadaddr} 0x1400 ${blkcnt}; fi + +rprocsemmcboot= + env set boot mmc; + env set bootpart 0:2; + rproc init; + run boot_rprocs_mmc; + env set bootpart; + +rproc_fw_binaries= \ + 2 /lib/firmware/j784s4-main-r5f0_0-fw \ + 3 /lib/firmware/j784s4-main-r5f0_1-fw \ + 4 /lib/firmware/j784s4-main-r5f1_0-fw \ + 5 /lib/firmware/j784s4-main-r5f1_1-fw \ + 6 /lib/firmware/j784s4-main-r5f2_0-fw \ + 7 /lib/firmware/j784s4-main-r5f2_1-fw \ + 8 /lib/firmware/j784s4-c71_0-fw \ + 9 /lib/firmware/j784s4-c71_1-fw \ + 10 /lib/firmware/j784s4-c71_2-fw \ + 11 /lib/firmware/j784s4-c71_3-fw