* [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading
@ 2026-04-17 13:42 Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM Ernest Van Hoecke
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Ernest Van Hoecke @ 2026-04-17 13:42 UTC (permalink / raw)
To: u-boot
Cc: Tom Rini, Francesco Dolcini, Apurva Nandan, Vitor Soares,
Ernest Van Hoecke
This patch series migrates the Aquila AM69 to OF_UPSTREAM to receive
automatic device tree updates. It also adds remoteproc firmware
pre-loading to the environment.
Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
---
Ernest Van Hoecke (1):
arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM
Vitor Soares (1):
board: toradex: aquila-am69: add remoteproc firmware pre-loading
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 -
board/toradex/aquila-am69/aquila-am69.env | 21 +
configs/aquila-am69_a72_defconfig | 3 +-
8 files changed, 26 insertions(+), 2419 deletions(-)
---
base-commit: 70fd0c3bb7c26d42f24d10145dd5f3168ac92eac
change-id: 20260417-elb-6911-aquila69-ofupstr-1c0e85e4e7b7
Best regards,
--
Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM
2026-04-17 13:42 [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Ernest Van Hoecke
@ 2026-04-17 13:42 ` Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 2/2] board: toradex: aquila-am69: add remoteproc firmware pre-loading Ernest Van Hoecke
2026-04-18 7:43 ` [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Francesco Dolcini
2 siblings, 0 replies; 4+ messages in thread
From: Ernest Van Hoecke @ 2026-04-17 13:42 UTC (permalink / raw)
To: u-boot
Cc: Tom Rini, Francesco Dolcini, Apurva Nandan, Vitor Soares,
Ernest Van Hoecke
From: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
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 <ernest.vanhoecke@toradex.com>
---
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(-)
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 4085d4c2de12..c2144c840257 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 5b8b8539da3f..63b37e522927 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 c7ce804eac70..000000000000
--- 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 <dt-bindings/pwm/pwm.h>
-#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 = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
- sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
- 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 5e1f92fc85f6..000000000000
--- 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 <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/net/ti-dp83867.h>
-#include <dt-bindings/phy/phy-cadence.h>
-#include <dt-bindings/usb/pd.h>
-#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 = <KEY_POWER>;
- };
- };
-
- 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 = <KEY_WAKEUP>;
- 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 = <DP83867_RGMIIDCTL_2_00_NS>;
- ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
- };
-};
-
-&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 = <PHY_TYPE_PCIE>;
- };
-
- /* 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 = <PHY_TYPE_PCIE>;
- };
-
- /* 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 = <PHY_TYPE_USB3>;
- };
-};
-
-&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 = <PHY_TYPE_PCIE>;
- };
-
- /* 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 = <PHY_TYPE_PCIE>;
- };
-};
-
-&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 = <PHY_TYPE_SGMII>;
- };
-};
-
-&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 = <PHY_TYPE_DP>;
- };
-};
-
-&serdes_refclk {
- clock-frequency = <100000000>;
- status = "okay";
-};
-
-&serdes_ln_ctrl {
- idle-states = <J784S4_SERDES0_LANE0_PCIE1_LANE0>, /* Aquila PCIE_2 L0 */
- <J784S4_SERDES0_LANE1_PCIE1_LANE1>, /* Aquila PCIE_2 L1 */
- <J784S4_SERDES0_LANE2_PCIE3_LANE0>, /* On-module PCIe Wi-Fi */
- <J784S4_SERDES0_LANE3_USB>, /* Aquila USB0 SS */
- <J784S4_SERDES1_LANE0_PCIE0_LANE0>, /* Aquila PCIE_1 L0 */
- <J784S4_SERDES1_LANE1_PCIE0_LANE1>, /* Aquila PCIE_1 L1 */
- <J784S4_SERDES1_LANE2_PCIE2_LANE0>, /* On-module PCIe USB Bridge */
- <J784S4_SERDES1_LANE3_QSGMII_LANE2>, /* Aquila SGMII MSP_9 */
- <J784S4_SERDES2_LANE0_QSGMII_LANE5>, /* Aquila SGMII MSP_6 */
- <J784S4_SERDES2_LANE1_QSGMII_LANE6>, /* Aquila SGMII MSP_7 */
- <J784S4_SERDES2_LANE2_QSGMII_LANE7>, /* Aquila SGMII MSP_8 */
- <J784S4_SERDES2_LANE3_QSGMII_LANE8>, /* Aquila ETH_2 xGMII */
- <J784S4_SERDES4_LANE0_EDP_LANE0>, /* Aquila DP L0 */
- <J784S4_SERDES4_LANE1_EDP_LANE1>, /* Aquila DP L1 */
- <J784S4_SERDES4_LANE2_EDP_LANE2>, /* Aquila DP L2 */
- <J784S4_SERDES4_LANE3_EDP_LANE3>; /* 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 fff44dbf7c9a..f5447b0b836f 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 f629ba4a019e..014e7e99b0b0 100644
--- a/board/toradex/aquila-am69/MAINTAINERS
+++ b/board/toradex/aquila-am69/MAINTAINERS
@@ -3,9 +3,7 @@ M: Francesco Dolcini <francesco.dolcini@toradex.com>
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 0f85b228b063..b15f86552cb4 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
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] board: toradex: aquila-am69: add remoteproc firmware pre-loading
2026-04-17 13:42 [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM Ernest Van Hoecke
@ 2026-04-17 13:42 ` Ernest Van Hoecke
2026-04-18 7:43 ` [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Francesco Dolcini
2 siblings, 0 replies; 4+ messages in thread
From: Ernest Van Hoecke @ 2026-04-17 13:42 UTC (permalink / raw)
To: u-boot
Cc: Tom Rini, Francesco Dolcini, Apurva Nandan, Vitor Soares,
Ernest Van Hoecke
From: Vitor Soares <vitor.soares@toradex.com>
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 <vitor.soares@toradex.com>
---
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 f8b7363dcf51..d61898091aa9 100644
--- a/board/toradex/aquila-am69/aquila-am69.env
+++ b/board/toradex/aquila-am69/aquila-am69.env
@@ -1,3 +1,5 @@
+#include <env/ti/k3_rproc.env>
+
#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
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading
2026-04-17 13:42 [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 2/2] board: toradex: aquila-am69: add remoteproc firmware pre-loading Ernest Van Hoecke
@ 2026-04-18 7:43 ` Francesco Dolcini
2 siblings, 0 replies; 4+ messages in thread
From: Francesco Dolcini @ 2026-04-18 7:43 UTC (permalink / raw)
To: Ernest Van Hoecke
Cc: u-boot, Tom Rini, Francesco Dolcini, Apurva Nandan, Vitor Soares,
Ernest Van Hoecke
On Fri, Apr 17, 2026 at 03:42:02PM +0200, Ernest Van Hoecke wrote:
> This patch series migrates the Aquila AM69 to OF_UPSTREAM to receive
> automatic device tree updates. It also adds remoteproc firmware
> pre-loading to the environment.
Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-04-18 7:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-17 13:42 [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 1/2] arm: dts: k3-am69-aquila: migrate to OF_UPSTREAM Ernest Van Hoecke
2026-04-17 13:42 ` [PATCH 2/2] board: toradex: aquila-am69: add remoteproc firmware pre-loading Ernest Van Hoecke
2026-04-18 7:43 ` [PATCH 0/2] k3-am69-aquila: Migrate to OF_UPSTREAM and add remoteproc FW pre-loading Francesco Dolcini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox