dt-bindings: arm: ti: Add BeagleY-AI
Subsystems (2)
PATCH v3 1/2 dt-bindings: arm: ti: Add BeagleY-AI
This board is based on ti,j722s family using the am67a variation.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-ai
---
Changes since v2:
- cc more maintainers and [email protected]
Changes since v1:
- switched to the TI model am67a over the family name j722s
--- Documentation/devicetree/bindings/arm/ti/k3.yaml | 1 + 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/ti/k3.yaml +1 -0
@@ -140,6 +140,7 @@ properties: - description: K3 J722S SoC and Boards items: - enum: + - beagle,am67a-beagley-ai - ti,j722s-evm - const: ti,j722s
Signature · 1 line
2.39.2
PATCH v3 2/2 arm64: dts: ti: Add k3-am67a-beagley-ai
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-ai
---
Changes since v2:
- added led indictors
- sdhci1 use MMC1_SDCD.GPIO1_48 for card detect
- cleaned up order of status = "okay"
- wkup_i2c0 moved to 100000
- eeprom added atmel,24c32
- rtc added dallas,ds1340
- sdhci1 use ti,fails-without-test-cd
Changes since v1:
- fixed incorrect vdd-3v3-sd-pins-default name
- updated hdmi VDD_1V2 regulator for production pcb
- switched device tree name from k3-j722s-beagley-ai to k3-am67a-beagley-ai
- removed cpsw_port2 node
- enable UHS support for MMCSD
--- arch/arm64/boot/dts/ti/Makefile | 1 + .../arm64/boot/dts/ti/k3-am67a-beagley-ai.dts | 406 ++++++++++++++++++ 2 files changed, 407 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts
arch/arm64/boot/dts/ti/Makefile +1 -0
@@ -110,6 +110,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm-pcie1-ep.dtbo # Boards with J722s SoC +dtb-$(CONFIG_ARCH_K3) += k3-am67a-beagley-ai.dtb dtb-$(CONFIG_ARCH_K3) += k3-j722s-evm.dtb # Boards with J784s4 SoC
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +406 -0
406 lines not on this page · raw message
Signature · 1 line
2.39.2
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 19 lines · Robert Nelson
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-aiSigned-off-by Robert Nelson <[email protected]>CC Rob Herring <[email protected]>CC Krzysztof Kozlowski <[email protected]>CC Conor Dooley <[email protected]>CC Vignesh Raghavendra <[email protected]>CC Nishanth Menon <[email protected]>CC Andrew Davis <[email protected]>CC Jai Luthra <[email protected]>CC Roger Quadros <[email protected]>
Quoted 8 lines
CC Siddharth Vadapalli <[email protected]>CC Jared McArthur <[email protected]>CC Jason Kridner <[email protected]>CC Deepak Khatri <[email protected]>CC Drew Fustini <[email protected]>
Please drop the autogenerated scripts/get_maintainer.pl CC-entries from commit msg. There is no single need to store automated output of get_maintainers.pl in the git log. It can be easily re-created at any given time, thus its presence in the git history is redundant and obfuscates the log.
If you need it for your own patch management purposes, keep it under the --- separator.
Quoted 26 lines
---
Changes since v2:
- added led indictors
- sdhci1 use MMC1_SDCD.GPIO1_48 for card detect
- cleaned up order of status = "okay"
-wkup_i2c0moved to 100000
- eeprom added atmel,24c32
- rtc added dallas,ds1340
- sdhci1 use ti,fails-without-test-cd
Changes since v1:
- fixed incorrect vdd-3v3-sd-pins-default name
- updated hdmiVDD_1V2regulator for production pcb
- switched device tree name from k3-j722s-beagley-ai to k3-am67a-beagley-ai
- removedcpsw_port2node
- enable UHS support for MMCSD--- arch/arm64/boot/dts/ti/Makefile | 1 + .../arm64/boot/dts/ti/k3-am67a-beagley-ai.dts | 406 ++++++++++++++++++ 2 files changed, 407 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtsarch/arm64/boot/dts/ti/Makefile +0
-0
arch/arm64/boot/dts/ti/Makefile dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm.dtb · line 113
Quoted 4 lines
arch/arm64/boot/dts/ti/Makefile +1
-0@@ -110,6 +110,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm-pcie1-ep.dtbo # Boards with J722s SoC +dtb-$(CONFIG_ARCH_K3) += k3-am67a-beagley-ai.dtb
So am67 is J772s? Then why calling it am67a?
Quoted 16 lines
arch/arm64/boot/dts/ti/Makefile +0
-0dtb-$(CONFIG_ARCH_K3) += k3-j722s-evm.dtb # Boards with J784s4 SoCarch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +7
-0@@ -0,0 +1,406 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * https://beagley-ai.org/ + * + * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/ + * Copyright (C) 2024 Robert Nelson, BeagleBoard.org Foundation + */
...
Quoted 11 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +11
-0+ vsys_5v0: regulator-1 { + compatible = "regulator-fixed"; + regulator-name = "vsys_5v0"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + regulator-boot-on; + bootph-all; + }; + + vdd_3v3: regulator-2 {
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 81
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ compatible = "regulator-fixed"; + regulator-name = "vdd_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vsys_5v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-mmc1 {
Keep consistent naming of the nodes. Why this is sometimes "1" sometimes "mmc"?
Please use name for all fixed regulators which matches current format
recommendation: 'regulator-[0-9]v[0-9]'
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/regulator/fixed-regulator.yaml?h=v6.11-rc1#n46
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 94
Quoted 13 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +13
-0+ compatible = "regulator-fixed"; + regulator-name = "vdd_mmc1"; + pinctrl-names = "default"; + pinctrl-0 = <&vdd_3v3_sd_pins_default>; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + enable-active-high; + gpio = <&main_gpio1 50 GPIO_ACTIVE_HIGH>; + bootph-all; + }; + + vdd_sd_dv: regulator-TLV71033 {
No upper-case characters.
See DTS coding style.
Quoted 44 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +44
-0+ compatible = "regulator-gpio"; + regulator-name = "tlv71033"; + pinctrl-names = "default"; + pinctrl-0 = <&vdd_sd_dv_pins_default>; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + vin-supply = <&vsys_5v0>; + gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>; + states = <1800000 0x0>, + <3300000 0x1>; + bootph-all; + }; + + vsys_io_1v8: regulator-vsys-io-1v8 { + compatible = "regulator-fixed"; + regulator-name = "vsys_io_1v8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + }; + + vsys_io_1v2: regulator-vsys-io-1v2 { + compatible = "regulator-fixed"; + regulator-name = "vsys_io_1v2"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + }; + + leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&led_pins_default>; + + led-0 { + gpios = <&main_gpio0 11 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-off"; + default-state = "off"; + }; + + led-1 {
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 148
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ gpios = <&main_gpio0 12 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_HEARTBEAT; + linux,default-trigger = "heartbeat"; + default-state = "on"; + }; + }; +}; + +&main_pmx0 { +
Drop blank line.
Quoted 111 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +111
-0+ main_i2c0_pins_default: main-i2c0-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01e0, PIN_INPUT_PULLUP, 0) /* (D23) I2C0_SCL */ + J722S_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (B22) I2C0_SDA */ + >; + bootph-all; + }; + + main_uart0_pins_default: main-uart0-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01c8, PIN_INPUT, 0) /* (A22) UART0_RXD */ + J722S_IOPAD(0x01cc, PIN_OUTPUT, 0) /* (B22) UART0_TXD */ + >; + bootph-all; + }; + + vdd_sd_dv_pins_default: vdd-sd-dv-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0244, PIN_OUTPUT, 7) /* (A24) MMC1_SDWP.GPIO1_49 */ + >; + bootph-all; + }; + + main_mmc1_pins_default: main-mmc1-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x023c, PIN_INPUT, 0) /* (H22) MMC1_CMD */ + J722S_IOPAD(0x0234, PIN_OUTPUT, 0) /* (H24) MMC1_CLK */ + J722S_IOPAD(0x0230, PIN_INPUT, 0) /* (H23) MMC1_DAT0 */ + J722S_IOPAD(0x022c, PIN_INPUT_PULLUP, 0) /* (H20) MMC1_DAT1 */ + J722S_IOPAD(0x0228, PIN_INPUT_PULLUP, 0) /* (J23) MMC1_DAT2 */ + J722S_IOPAD(0x0224, PIN_INPUT_PULLUP, 0) /* (H25) MMC1_DAT3 */ + J722S_IOPAD(0x0240, PIN_INPUT, 7) /* (B24) MMC1_SDCD.GPIO1_48 */ + >; + bootph-all; + }; + + mdio_pins_default: mdio-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0160, PIN_OUTPUT, 0) /* (AC24) MDIO0_MDC */ + J722S_IOPAD(0x015c, PIN_INPUT, 0) /* (AD25) MDIO0_MDIO */ + >; + }; + + rgmii1_pins_default: rgmii1-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x014c, PIN_INPUT, 0) /* (AC25) RGMII1_RD0 */ + J722S_IOPAD(0x0150, PIN_INPUT, 0) /* (AD27) RGMII1_RD1 */ + J722S_IOPAD(0x0154, PIN_INPUT, 0) /* (AE24) RGMII1_RD2 */ + J722S_IOPAD(0x0158, PIN_INPUT, 0) /* (AE26) RGMII1_RD3 */ + J722S_IOPAD(0x0148, PIN_INPUT, 0) /* (AE27) RGMII1_RXC */ + J722S_IOPAD(0x0144, PIN_INPUT, 0) /* (AD23) RGMII1_RX_CTL */ + J722S_IOPAD(0x0134, PIN_OUTPUT, 0) /* (AF27) RGMII1_TD0 */ + J722S_IOPAD(0x0138, PIN_OUTPUT, 0) /* (AE23) RGMII1_TD1 */ + J722S_IOPAD(0x013c, PIN_OUTPUT, 0) /* (AG25) RGMII1_TD2 */ + J722S_IOPAD(0x0140, PIN_OUTPUT, 0) /* (AF24) RGMII1_TD3 */ + J722S_IOPAD(0x0130, PIN_OUTPUT, 0) /* (AG26) RGMII1_TXC */ + J722S_IOPAD(0x012c, PIN_OUTPUT, 0) /* (AF25) RGMII1_TX_CTL */ + >; + }; + + led_pins_default: led-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x002c, PIN_OUTPUT, 7) /* (K26) OSPI0_CSn0.GPIO0_11 */ + J722S_IOPAD(0x0030, PIN_OUTPUT, 7) /* (K23) OSPI0_CSn1.GPIO0_12 */ + >; + }; + + pmic_irq_pins_default: pmic-irq-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01f4, PIN_INPUT_PULLUP, 0) /* (B23) EXTINTn */ + >; + }; + + vdd_3v3_sd_pins_default: vdd-3v3-sd-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0254, PIN_OUTPUT, 7) /* (E25) USB0_DRVVBUS.GPIO1_50 */ + >; + }; +}; + +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>; + + assigned-clocks = <&k3_clks 227 0>; + assigned-clock-parents = <&k3_clks 227 6>; + status = "okay"; +}; + +&cpsw3g_mdio { + pinctrl-names = "default"; + pinctrl-0 = <&mdio_pins_default>; + status = "okay"; + + cpsw3g_phy0: ethernet-phy@0 { + reg = <0>; + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; + ti,min-output-impedance; + }; +}; + +&cpsw_port1 { + phy-mode = "rgmii-rxid"; + phy-handle = <&cpsw3g_phy0>; + status = "okay"; +}; + +&main_gpio1 { + status = "okay"; +};
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 269
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ +&main_uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&main_uart0_pins_default>; + bootph-all; + status = "okay"; +}; + +&mcu_pmx0 { +
Drop blank line
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 278
Quoted 9 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +9
-0+ wkup_uart0_pins_default: wkup-uart0-default-pins { + pinctrl-single,pins = < + J722S_MCU_IOPAD(0x02c, PIN_INPUT, 0) /* (C7) WKUP_UART0_CTSn */ + J722S_MCU_IOPAD(0x030, PIN_OUTPUT, 0) /* (C6) WKUP_UART0_RTSn */ + J722S_MCU_IOPAD(0x024, PIN_INPUT, 0) /* (D8) WKUP_UART0_RXD */ + J722S_MCU_IOPAD(0x028, PIN_OUTPUT, 0) /* (D7) WKUP_UART0_TXD */ + >; + bootph-all; + };
Best regards,
Krzysztof
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 4 lines
Quoted 2 lines
# Boards with J722s SoC
+dtb-$(CONFIG_ARCH_K3) += k3-am67a-beagley-ai.dtbSo am67 is J772s? Then why calling it am67a?
I agree, it's stupid.. Back in April with v1, i called this J772s, then TI and TI marketing got involved.. J772s is a family, am67 and am67a are parts in that family... From the current docs, am67a is a fully efused J772s..
Anywho that was TI's decision back in April, thousands of boards have now shipped, so for user's sake, it's now locked in at beagleboard.org forever as k3-am67a-beagley-ai.dtb
Quoted 45 lines
Quoted 17 lines
dtb-$(CONFIG_ARCH_K3) += k3-j722s-evm.dtb
# Boards with J784s4 SoC
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +7
-0@@ -0,0 +1,406 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * https://beagley-ai.org/ + * + * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/ + * Copyright (C) 2024 Robert Nelson, BeagleBoard.org Foundation + */...
Quoted 11 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +11
-0+ vsys_5v0: regulator-1 { + compatible = "regulator-fixed"; + regulator-name = "vsys_5v0"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + regulator-boot-on; + bootph-all; + }; + + vdd_3v3: regulator-2 {arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 81
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ compatible = "regulator-fixed"; + regulator-name = "vdd_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vsys_5v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-mmc1 {Keep consistent naming of the nodes. Why this is sometimes "1" sometimes "mmc"?
Quoted 3 lines
Please use name for all fixed regulators which matches current format
recommendation: 'regulator-[0-9]v[0-9]'
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/regulator/fixed-regulator.yaml?h=v6.11-rc1#n46
Okay, i'll change these... I already see a problem, as I've got two 3v3... can we use 'regulator-[0-9]v[0-9]-X' ?
Quoted 15 lines
Quoted 4 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +3
-0+ compatible = "regulator-fixed"; + regulator-name = "vdd_mmc1"; + pinctrl-names = "default";arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 94
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ pinctrl-0 = <&vdd_3v3_sd_pins_default>; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + enable-active-high; + gpio = <&main_gpio1 50 GPIO_ACTIVE_HIGH>; + bootph-all; + }; + + vdd_sd_dv: regulator-TLV71033 {
Quoted 3 lines
No upper-case characters.
See DTS coding style.
I'll fix it..
Quoted 49 lines
Quoted 49 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +48
-0+ compatible = "regulator-gpio"; + regulator-name = "tlv71033"; + pinctrl-names = "default"; + pinctrl-0 = <&vdd_sd_dv_pins_default>; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + vin-supply = <&vsys_5v0>; + gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>; + states = <1800000 0x0>, + <3300000 0x1>; + bootph-all; + }; + + vsys_io_1v8: regulator-vsys-io-1v8 { + compatible = "regulator-fixed"; + regulator-name = "vsys_io_1v8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + }; + + vsys_io_1v2: regulator-vsys-io-1v2 { + compatible = "regulator-fixed"; + regulator-name = "vsys_io_1v2"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + }; + + leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&led_pins_default>; + + led-0 { + gpios = <&main_gpio0 11 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-off"; + default-state = "off"; + }; + + led-1 { + gpios = <&main_gpio0 12 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_HEARTBEAT; + linux,default-trigger = "heartbeat"; + default-state = "on";
Quoted 8 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 148
Quoted 6 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +6
-0+ }; + }; +}; + +&main_pmx0 { +Drop blank line.
I'll fix it..
Quoted 116 lines
Quoted 116 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +115
-0+ main_i2c0_pins_default: main-i2c0-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01e0, PIN_INPUT_PULLUP, 0) /* (D23) I2C0_SCL */ + J722S_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (B22) I2C0_SDA */ + >; + bootph-all; + }; + + main_uart0_pins_default: main-uart0-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01c8, PIN_INPUT, 0) /* (A22) UART0_RXD */ + J722S_IOPAD(0x01cc, PIN_OUTPUT, 0) /* (B22) UART0_TXD */ + >; + bootph-all; + }; + + vdd_sd_dv_pins_default: vdd-sd-dv-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0244, PIN_OUTPUT, 7) /* (A24) MMC1_SDWP.GPIO1_49 */ + >; + bootph-all; + }; + + main_mmc1_pins_default: main-mmc1-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x023c, PIN_INPUT, 0) /* (H22) MMC1_CMD */ + J722S_IOPAD(0x0234, PIN_OUTPUT, 0) /* (H24) MMC1_CLK */ + J722S_IOPAD(0x0230, PIN_INPUT, 0) /* (H23) MMC1_DAT0 */ + J722S_IOPAD(0x022c, PIN_INPUT_PULLUP, 0) /* (H20) MMC1_DAT1 */ + J722S_IOPAD(0x0228, PIN_INPUT_PULLUP, 0) /* (J23) MMC1_DAT2 */ + J722S_IOPAD(0x0224, PIN_INPUT_PULLUP, 0) /* (H25) MMC1_DAT3 */ + J722S_IOPAD(0x0240, PIN_INPUT, 7) /* (B24) MMC1_SDCD.GPIO1_48 */ + >; + bootph-all; + }; + + mdio_pins_default: mdio-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0160, PIN_OUTPUT, 0) /* (AC24) MDIO0_MDC */ + J722S_IOPAD(0x015c, PIN_INPUT, 0) /* (AD25) MDIO0_MDIO */ + >; + }; + + rgmii1_pins_default: rgmii1-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x014c, PIN_INPUT, 0) /* (AC25) RGMII1_RD0 */ + J722S_IOPAD(0x0150, PIN_INPUT, 0) /* (AD27) RGMII1_RD1 */ + J722S_IOPAD(0x0154, PIN_INPUT, 0) /* (AE24) RGMII1_RD2 */ + J722S_IOPAD(0x0158, PIN_INPUT, 0) /* (AE26) RGMII1_RD3 */ + J722S_IOPAD(0x0148, PIN_INPUT, 0) /* (AE27) RGMII1_RXC */ + J722S_IOPAD(0x0144, PIN_INPUT, 0) /* (AD23) RGMII1_RX_CTL */ + J722S_IOPAD(0x0134, PIN_OUTPUT, 0) /* (AF27) RGMII1_TD0 */ + J722S_IOPAD(0x0138, PIN_OUTPUT, 0) /* (AE23) RGMII1_TD1 */ + J722S_IOPAD(0x013c, PIN_OUTPUT, 0) /* (AG25) RGMII1_TD2 */ + J722S_IOPAD(0x0140, PIN_OUTPUT, 0) /* (AF24) RGMII1_TD3 */ + J722S_IOPAD(0x0130, PIN_OUTPUT, 0) /* (AG26) RGMII1_TXC */ + J722S_IOPAD(0x012c, PIN_OUTPUT, 0) /* (AF25) RGMII1_TX_CTL */ + >; + }; + + led_pins_default: led-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x002c, PIN_OUTPUT, 7) /* (K26) OSPI0_CSn0.GPIO0_11 */ + J722S_IOPAD(0x0030, PIN_OUTPUT, 7) /* (K23) OSPI0_CSn1.GPIO0_12 */ + >; + }; + + pmic_irq_pins_default: pmic-irq-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x01f4, PIN_INPUT_PULLUP, 0) /* (B23) EXTINTn */ + >; + }; + + vdd_3v3_sd_pins_default: vdd-3v3-sd-default-pins { + pinctrl-single,pins = < + J722S_IOPAD(0x0254, PIN_OUTPUT, 7) /* (E25) USB0_DRVVBUS.GPIO1_50 */ + >; + }; +}; + +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>; + + assigned-clocks = <&k3_clks 227 0>; + assigned-clock-parents = <&k3_clks 227 6>; + status = "okay"; +}; + +&cpsw3g_mdio { + pinctrl-names = "default"; + pinctrl-0 = <&mdio_pins_default>; + status = "okay"; + + cpsw3g_phy0: ethernet-phy@0 { + reg = <0>; + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; + ti,min-output-impedance; + }; +}; + +&cpsw_port1 { + phy-mode = "rgmii-rxid"; + phy-handle = <&cpsw3g_phy0>; + status = "okay"; +}; + +&main_gpio1 { + status = "okay"; +}; + +&main_uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&main_uart0_pins_default>;
Quoted 8 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 269
Quoted 6 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +6
-0+ bootph-all; + status = "okay"; +}; + +&mcu_pmx0 { +Drop blank line
I'll fix it..
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 278
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +9
-0+ wkup_uart0_pins_default: wkup-uart0-default-pins { + pinctrl-single,pins = < + J722S_MCU_IOPAD(0x02c, PIN_INPUT, 0) /* (C7) WKUP_UART0_CTSn */ + J722S_MCU_IOPAD(0x030, PIN_OUTPUT, 0) /* (C6) WKUP_UART0_RTSn */ + J722S_MCU_IOPAD(0x024, PIN_INPUT, 0) /* (D8) WKUP_UART0_RXD */ + J722S_MCU_IOPAD(0x028, PIN_OUTPUT, 0) /* (D7) WKUP_UART0_TXD */ + >; + bootph-all; + };
Thanks!
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
In reply to Robert NelsonHi,
Quoted 68 lines · Robert Nelson
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-aiSigned-off-by Robert Nelson <[email protected]>CC Rob Herring <[email protected]>CC Krzysztof Kozlowski <[email protected]>CC Conor Dooley <[email protected]>CC Vignesh Raghavendra <[email protected]>CC Nishanth Menon <[email protected]>CC Andrew Davis <[email protected]>CC Jai Luthra <[email protected]>CC Roger Quadros <[email protected]>CC Siddharth Vadapalli <[email protected]>CC Jared McArthur <[email protected]>CC Jason Kridner <[email protected]>CC Deepak Khatri <[email protected]>CC Drew Fustini <[email protected]>---
Changes since v2:
- added led indictors
- sdhci1 use MMC1_SDCD.GPIO1_48 for card detect
- cleaned up order of status = "okay"
-wkup_i2c0moved to 100000
- eeprom added atmel,24c32
- rtc added dallas,ds1340
- sdhci1 use ti,fails-without-test-cd
Changes since v1:
- fixed incorrect vdd-3v3-sd-pins-default name
- updated hdmiVDD_1V2regulator for production pcb
- switched device tree name from k3-j722s-beagley-ai to k3-am67a-beagley-ai
- removedcpsw_port2node
- enable UHS support for MMCSD--- arch/arm64/boot/dts/ti/Makefile | 1 + .../arm64/boot/dts/ti/k3-am67a-beagley-ai.dts | 406 ++++++++++++++++++ 2 files changed, 407 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtsarch/arm64/boot/dts/ti/Makefile +1
-0@@ -110,6 +110,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721s2-evm-pcie1-ep.dtbo # Boards with J722s SoC +dtb-$(CONFIG_ARCH_K3) += k3-am67a-beagley-ai.dtb dtb-$(CONFIG_ARCH_K3) += k3-j722s-evm.dtb # Boards with J784s4 SoCarch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-0@@ -0,0 +1,406 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/*
<snip>
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 231
Quoted 4 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +4
-0+ +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>;
Why do you need OBSCLK for Ethernet MAC?
The OBSCLK is connected to the Ethernet PHY via C406 which is not even populated. It seems that the PHY is clocked by a crystal oscillator X5 so doesn't really need OBSCLK in the stock configuration?
Quoted 175 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +175
-0+ + assigned-clocks = <&k3_clks 227 0>; + assigned-clock-parents = <&k3_clks 227 6>; + status = "okay"; +}; + +&cpsw3g_mdio { + pinctrl-names = "default"; + pinctrl-0 = <&mdio_pins_default>; + status = "okay"; + + cpsw3g_phy0: ethernet-phy@0 { + reg = <0>; + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; + ti,min-output-impedance; + }; +}; + +&cpsw_port1 { + phy-mode = "rgmii-rxid"; + phy-handle = <&cpsw3g_phy0>; + status = "okay"; +}; + +&main_gpio1 { + status = "okay"; +}; + +&main_uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&main_uart0_pins_default>; + bootph-all; + status = "okay"; +}; + +&mcu_pmx0 { + + wkup_uart0_pins_default: wkup-uart0-default-pins { + pinctrl-single,pins = < + J722S_MCU_IOPAD(0x02c, PIN_INPUT, 0) /* (C7) WKUP_UART0_CTSn */ + J722S_MCU_IOPAD(0x030, PIN_OUTPUT, 0) /* (C6) WKUP_UART0_RTSn */ + J722S_MCU_IOPAD(0x024, PIN_INPUT, 0) /* (D8) WKUP_UART0_RXD */ + J722S_MCU_IOPAD(0x028, PIN_OUTPUT, 0) /* (D7) WKUP_UART0_TXD */ + >; + bootph-all; + }; + + wkup_i2c0_pins_default: wkup-i2c0-default-pins { + pinctrl-single,pins = < + J722S_MCU_IOPAD(0x04c, PIN_INPUT_PULLUP, 0) /* (C7) WKUP_I2C0_SCL */ + J722S_MCU_IOPAD(0x050, PIN_INPUT_PULLUP, 0) /* (C6) WKUP_I2C1_SDA */ + >; + bootph-all; + }; + + gbe_pmx_obsclk: gbe-pmx-obsclk-default-pins { + pinctrl-single,pins = < + J722S_MCU_IOPAD(0x0004, PIN_OUTPUT, 1) /* (A10) MCU_SPI0_CS1.MCU_OBSCLK0 */ + >; + }; +}; + +&wkup_uart0 { + /* WKUP UART0 is used by Device Manager firmware */ + pinctrl-names = "default"; + pinctrl-0 = <&wkup_uart0_pins_default>; + bootph-all; + status = "reserved"; +}; + +&wkup_i2c0 { + pinctrl-names = "default"; + pinctrl-0 = <&wkup_i2c0_pins_default>; + clock-frequency = <100000>; + bootph-all; + status = "okay"; + + tps65219: pmic@30 { + compatible = "ti,tps65219"; + reg = <0x30>; + buck1-supply = <&vsys_5v0>; + buck2-supply = <&vsys_5v0>; + buck3-supply = <&vsys_5v0>; + ldo1-supply = <&vdd_3v3>; + ldo3-supply = <&vdd_3v3>; + ldo4-supply = <&vdd_3v3>; + + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins_default>; + interrupt-parent = <&gic500>; + interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller; + #interrupt-cells = <1>; + + system-power-controller; + ti,power-button; + bootph-all; + + regulators { + buck1_reg: buck1 { + regulator-name = "VDD_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + buck2_reg: buck2 { + regulator-name = "VDD_1V8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo1_reg: ldo1 { + regulator-name = "VDDSHV5_SDIO"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-allow-bypass; + regulator-boot-on; + regulator-always-on; + }; + + ldo2_reg: ldo2 { + regulator-name = "VDD_1V2"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo3_reg: ldo3 { + regulator-name = "VDDA_PHY_1V8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo4_reg: ldo4 { + regulator-name = "VDDA_PLL_1V8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + }; + }; + + eeprom@50 { + compatible = "atmel,24c32"; + reg = <0x50>; + }; + + rtc: rtc@68 { + compatible = "dallas,ds1340"; + reg = <0x68>; + }; +}; + +&sdhci1 { + /* SD/MMC */ + vmmc-supply = <&vdd_mmc1>; + vqmmc-supply = <&vdd_sd_dv>; + pinctrl-names = "default"; + pinctrl-0 = <&main_mmc1_pins_default>; + disable-wp; + cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>; + cd-debounce-delay-ms = <100>; + ti,fails-without-test-cd; + bootph-all; + status = "okay"; +};
Signature · 2 lines
cheers, -roger
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 9 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 231
Quoted 4 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +4
-0+ +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>;Why do you need OBSCLK for Ethernet MAC?
The OBSCLK is connected to the Ethernet PHY via C406 which is not even populated. It seems that the PHY is clocked by a crystal oscillator X5 so doesn't really need OBSCLK in the stock configuration?
Ah crap, I'll take a look at this... I bet it's left over from the first pcb, (all my first rev pcb's are now locked up so i don't use them anymore).. Seeed/BeagleBoard was playing it safe and designing in both options.. Once the internal clocks were verified newer revisions removed the external clock.
Yeah, I'm pretty sure final production boards removed every external clock option.
Thanks!
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 11 lines · Robert Nelson
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 231
Quoted 5 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +4
-0+ +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>;Why do you need OBSCLK for Ethernet MAC?
The OBSCLK is connected to the Ethernet PHY via C406 which is not even populated. It seems that the PHY is clocked by a crystal oscillator X5 so doesn't really need OBSCLK in the stock configuration?
Quoted 8 lines
Ah crap, I'll take a look at this... I bet it's left over from the first pcb, (all my first rev pcb's are now locked up so i don't use them anymore).. Seeed/BeagleBoard was playing it safe and designing in both options.. Once the internal clocks were verified newer revisions removed the external clock.
Yeah, I'm pretty sure final production boards removed every external clock option.
Yeap, external clock is the default for all production boards, i removed this internal clock configuration.
Thanks
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 18 lines · Robert Nelson
Quoted 17 lines · Robert Nelson
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 231
Quoted 5 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +4
-0+ +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>;Why do you need OBSCLK for Ethernet MAC?
The OBSCLK is connected to the Ethernet PHY via C406 which is not even populated. It seems that the PHY is clocked by a crystal oscillator X5 so doesn't really need OBSCLK in the stock configuration?Ah crap, I'll take a look at this... I bet it's left over from the first pcb, (all my first rev pcb's are now locked up so i don't use them anymore).. Seeed/BeagleBoard was playing it safe and designing in both options.. Once the internal clocks were verified newer revisions removed the external clock.
Quoted 5 lines
Quoted 2 lines
Yeah, I'm pretty sure final production boards removed every external clock option.
Yeap, external clock is the default for all production boards, i removed this internal clock configuration.
Did you mean internal clock is the default?
Earlier you mentioned
"after verification newer versions removed the external clock"
Signature · 2 lines
cheers, -roger
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 25 lines · Roger Quadros
Quoted 21 lines · Robert Nelson
Quoted 19 lines · Robert Nelson
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 231
Quoted 5 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +4
-0+ +&cpsw3g { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii1_pins_default>, <&gbe_pmx_obsclk>;Why do you need OBSCLK for Ethernet MAC?
The OBSCLK is connected to the Ethernet PHY via C406 which is not even populated. It seems that the PHY is clocked by a crystal oscillator X5 so doesn't really need OBSCLK in the stock configuration?Ah crap, I'll take a look at this... I bet it's left over from the first pcb, (all my first rev pcb's are now locked up so i don't use them anymore).. Seeed/BeagleBoard was playing it safe and designing in both options.. Once the internal clocks were verified newer revisions removed the external clock.
Yeah, I'm pretty sure final production boards removed every external clock option.
Quoted 6 lines
Quoted 2 lines
Yeap, external clock is the default for all production boards, i removed this internal clock configuration.
Did you mean internal clock is the default?
Earlier you mentioned
"after verification newer versions removed the external clock"
Yeah sorry Roger, screwed up on my previous message... I thought one of our goals was to have an internal clock for everything. But @Aldea, Andrei reminded me Monday night, that Ethernet was external..
Regards,
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Nishanth Menon
maintainerRe: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
In reply to Robert NelsonOn 12:04-20240822, Robert Nelson wrote:
Minor nmits below:
Quoted 7 lines
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
[...]
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 81
Quoted 12 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +12
-0+ + vdd_3v3: regulator-2 { + compatible = "regulator-fixed"; + regulator-name = "vdd_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vsys_5v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-mmc1 {
Also responding:
Quoted 2 lines
Okay, i'll change these... I already see a problem, as I've got two 3v3... can we use 'regulator-[0-9]v[0-9]-X' ?
let us just call them regulator-3 and so on incrementally. You can already name with regulator-name property. We really don't need the "v' specification here.
[...]
Quoted 17 lines
+&wkup_i2c0 {
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +16
-0+ pinctrl-names = "default"; + pinctrl-0 = <&wkup_i2c0_pins_default>; + clock-frequency = <100000>; + bootph-all; + status = "okay"; + + tps65219: pmic@30 { + compatible = "ti,tps65219"; + reg = <0x30>; + buck1-supply = <&vsys_5v0>; + buck2-supply = <&vsys_5v0>; + buck3-supply = <&vsys_5v0>; + ldo1-supply = <&vdd_3v3>; + ldo3-supply = <&vdd_3v3>; + ldo4-supply = <&vdd_3v3>; +
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 329
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +10
-0+ pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins_default>; + interrupt-parent = <&gic500>; + interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller; + #interrupt-cells = <1>; + + system-power-controller; + ti,power-button; + bootph-all;
Flip the bootph-all above the system-power-controller to stay within the coding style boundaries?
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 331
Quoted 2 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-0+ + regulators {
[...]
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 404
Quoted 13 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +13
-0+}; + +&sdhci1 { + /* SD/MMC */ + vmmc-supply = <&vdd_mmc1>; + vqmmc-supply = <&vdd_sd_dv>; + pinctrl-names = "default"; + pinctrl-0 = <&main_mmc1_pins_default>; + disable-wp; + cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>; + cd-debounce-delay-ms = <100>; + ti,fails-without-test-cd; + bootph-all;
Nit: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/dts-coding-style.rst#n117
keep the bootph property above the vendor prefixed ones..
Quoted 5 lines
(quoted diff) +2
-0+ status = "okay"; +};Signature · 1 line
2.39.2
Additionally, with dtbs_check on next-20240823, I get:
/workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0: Unevaluated properties are not allowed ('linux,default-trigger' was unexpected) /workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one must be fixed:
Please fix appropriately.
Signature · 3 lines
Regards, Nishanth Menon Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 27 lines · Nishanth Menon
On 12:04-20240822, Robert Nelson wrote:
Minor nmits below:Quoted 7 lines
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
[...]
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 81
Quoted 12 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +12
-0+ + vdd_3v3: regulator-2 { + compatible = "regulator-fixed"; + regulator-name = "vdd_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vsys_5v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-mmc1 {Also responding:
Quoted 7 lines
Quoted 2 lines
Okay, i'll change these... I already see a problem, as I've got two 3v3... can we use 'regulator-[0-9]v[0-9]-X' ?
let us just call them regulator-3 and so on incrementally. You can already name with regulator-name property. We really don't need the "v' specification here.
Okay, renamed all as regulator-X
Quoted 24 lines
[...]
Quoted 22 lines
+&wkup_i2c0 {
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +21
-0+ pinctrl-names = "default"; + pinctrl-0 = <&wkup_i2c0_pins_default>; + clock-frequency = <100000>; + bootph-all; + status = "okay"; + + tps65219: pmic@30 { + compatible = "ti,tps65219"; + reg = <0x30>; + buck1-supply = <&vsys_5v0>; + buck2-supply = <&vsys_5v0>; + buck3-supply = <&vsys_5v0>; + ldo1-supply = <&vdd_3v3>; + ldo3-supply = <&vdd_3v3>; + ldo4-supply = <&vdd_3v3>; + + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins_default>; + interrupt-parent = <&gic500>; + interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller;
Quoted 8 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 329
Quoted 5 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +5
-0+ #interrupt-cells = <1>; + + system-power-controller; + ti,power-button; + bootph-all;Flip the bootph-all above the system-power-controller to stay within the coding style boundaries?
Fixed!
Quoted 4 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 331
Quoted 3 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-0+ + regulators {[...]
Quoted 16 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 404
Quoted 13 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +13
-0+}; + +&sdhci1 { + /* SD/MMC */ + vmmc-supply = <&vdd_mmc1>; + vqmmc-supply = <&vdd_sd_dv>; + pinctrl-names = "default"; + pinctrl-0 = <&main_mmc1_pins_default>; + disable-wp; + cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>; + cd-debounce-delay-ms = <100>; + ti,fails-without-test-cd; + bootph-all;Nit: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/dts-coding-style.rst#n117
keep the bootph property above the vendor prefixed ones..
Fixed!
Quoted 8 lines
Quoted 6 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-1+ status = "okay"; +}; --2.39.2
Quoted 6 lines
Additionally, with
dtbs_checkon next-20240823, I get:/workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0: Unevaluated properties are not allowed ('linux,default-trigger' was unexpected) /workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one must be fixed:
Please fix appropriately.
fixed with: linux,default-trigger = "off";
Thanks!
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 106 lines · Robert Nelson
Quoted 27 lines · Nishanth Menon
On 12:04-20240822, Robert Nelson wrote:
Minor nmits below:Quoted 7 lines
BeagleBoard.org BeagleY-AI is an easy to use, affordable open source hardware single board computer based on the Texas Instruments AM67A, which features a quad-core 64-bit Arm CPU subsystem, 2 general-purpose digital-signal-processors (DSP) and matrix-multiply-accelerators (MMA), GPU, vision and deep learning accelerators, and multiple Arm Cortex-R5 cores for low-power, low-latency GPIO control.
[...]
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 81
Quoted 12 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +12
-0+ + vdd_3v3: regulator-2 { + compatible = "regulator-fixed"; + regulator-name = "vdd_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vsys_5v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-mmc1 {Also responding:
Quoted 7 lines
Quoted 2 lines
Okay, i'll change these... I already see a problem, as I've got two 3v3... can we use 'regulator-[0-9]v[0-9]-X' ?
let us just call them regulator-3 and so on incrementally. You can already name with regulator-name property. We really don't need the "v' specification here.
Okay, renamed all as
regulator-XQuoted 24 lines
[...]
Quoted 22 lines
+&wkup_i2c0 {
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +21
-0+ pinctrl-names = "default"; + pinctrl-0 = <&wkup_i2c0_pins_default>; + clock-frequency = <100000>; + bootph-all; + status = "okay"; + + tps65219: pmic@30 { + compatible = "ti,tps65219"; + reg = <0x30>; + buck1-supply = <&vsys_5v0>; + buck2-supply = <&vsys_5v0>; + buck3-supply = <&vsys_5v0>; + ldo1-supply = <&vdd_3v3>; + ldo3-supply = <&vdd_3v3>; + ldo4-supply = <&vdd_3v3>; + + pinctrl-names = "default"; + pinctrl-0 = <&pmic_irq_pins_default>; + interrupt-parent = <&gic500>; + interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller;Quoted 8 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 329
Quoted 5 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +5
-0+ #interrupt-cells = <1>; + + system-power-controller; + ti,power-button; + bootph-all;Flip the bootph-all above the system-power-controller to stay within the coding style boundaries?
Fixed!
Quoted 4 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 331
Quoted 3 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-0+ + regulators {[...]Quoted 16 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts line 404
Quoted 13 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +13
-0+}; + +&sdhci1 { + /* SD/MMC */ + vmmc-supply = <&vdd_mmc1>; + vqmmc-supply = <&vdd_sd_dv>; + pinctrl-names = "default"; + pinctrl-0 = <&main_mmc1_pins_default>; + disable-wp; + cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>; + cd-debounce-delay-ms = <100>; + ti,fails-without-test-cd; + bootph-all;Nit: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/dts-coding-style.rst#n117
keep the bootph property above the vendor prefixed ones..Fixed!
Quoted 8 lines
Quoted 6 lines
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts new file +2
-1+ status = "okay"; +}; --2.39.2
Quoted 8 lines
Quoted 6 lines
Additionally, with
dtbs_checkon next-20240823, I get:/workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0: Unevaluated properties are not allowed ('linux,default-trigger' was unexpected) /workdir/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb: leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one must be fixed:
Please fix appropriately.
fixed with: linux,default-trigger = "off";
Nope, also not allowed..
/builds/RobertCNelson/arm64-multiplatform/KERNEL/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb:
leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one
must be fixed:
'off' is not one of ['backlight', 'default-on', 'heartbeat',
'disk-activity', 'disk-read', 'disk-write', 'timer', 'pattern',
'audio-micmute', 'audio-mute', 'bluetooth-power', 'flash',
'kbd-capslock', 'mtd', 'nand-disk', 'none', 'torch', 'usb-gadget',
'usb-host', 'usbport']
I guess, 'none' is close... off/etc..
Thanks
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Nishanth Menon
maintainerRe: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
On 11:34-20240828, Robert Nelson wrote:
[...]
Quoted 10 lines
/builds/RobertCNelson/arm64-multiplatform/KERNEL/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb:
leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one
must be fixed:
'off' is not one of ['backlight', 'default-on', 'heartbeat',
'disk-activity', 'disk-read', 'disk-write', 'timer', 'pattern',
'audio-micmute', 'audio-mute', 'bluetooth-power', 'flash',
'kbd-capslock', 'mtd', 'nand-disk', 'none', 'torch', 'usb-gadget',
'usb-host', 'usbport']
Quoted 2 lines
I guess, 'none' is close... off/etc..
I'd just suggest to drop the property since you already use heartbeat.
Also function = is alternate option, if you choose to go down the road of enabling a function
Signature · 3 lines
Regards, Nishanth Menon Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
Re: [PATCH v3 2/2] arm64: dts: ti: Add k3-am67a-beagley-ai
Quoted 16 lines · Nishanth Menon
On 11:34-20240828, Robert Nelson wrote:
[...]Quoted 10 lines
/builds/RobertCNelson/arm64-multiplatform/KERNEL/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dtb:
leds: led-0:linux,default-trigger: 'oneOf' conditional failed, one
must be fixed:
'off' is not one of ['backlight', 'default-on', 'heartbeat',
'disk-activity', 'disk-read', 'disk-write', 'timer', 'pattern',
'audio-micmute', 'audio-mute', 'bluetooth-power', 'flash',
'kbd-capslock', 'mtd', 'nand-disk', 'none', 'torch', 'usb-gadget',
'usb-host', 'usbport']Quoted 2 lines
I guess, 'none' is close... off/etc..
Quoted 8 lines
I'd just suggest to drop the property since you already use heartbeat.
Also function = is alternate option, if you choose to go down the road of enabling a function
I can drop it, we basically have two leds on the board... Red and Green.. Jason didn't like the Red being activity as it looks like something is wrong, we just turn it off once into Linux.. Thus Green became heartbeat..
From a user perspective (when they don't have a serial cable), Blinking red = in u-boot board starting up... Blinking Green = in Linux finishing bootup..
Regards,
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Quoted 6 lines · Robert Nelson
This board is based on ti,j722s family using the am67a variation.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-aiSigned-off-by Robert Nelson <[email protected]>
<form letter>
This is a friendly reminder during the review process.
It looks like you received a tag and forgot to add it.
If you do not know the process, here is a short explanation: Please add Acked-by/Reviewed-by/Tested-by tags when posting new versions, under or above your Signed-off-by tag. Tag is "received", when provided in a message replied to you on the mailing list. Tools like b4 can help here. However, there's no need to repost patches *only* to add the tags. The upstream maintainer will do that for tags received on the version they apply.
https://elixir.bootlin.com/linux/v6.5-rc3/source/Documentation/process/submitting-patches.rst#L577
If a tag was not added on purpose, please state why and what changed. </form letter>
Quoted 6 lines
CC Nishanth Menon <[email protected]>CC Vignesh Raghavendra <[email protected]>CC Tero Kristo <[email protected]>CC Rob Herring <[email protected]>CC Krzysztof Kozlowski <[email protected]>CC Conor Dooley <[email protected]>
Quoted 8 lines
CC Andrew Davis <[email protected]>CC Jared McArthur <[email protected]>CC Jason Kridner <[email protected]>CC Deepak Khatri <[email protected]>CC Drew Fustini <[email protected]>
Please drop the autogenerated scripts/get_maintainer.pl CC-entries from commit msg. There is no single need to store automated output of get_maintainers.pl in the git log. It can be easily re-created at any given time, thus its presence in the git history is redundant and obfuscates the log.
If you need it for your own patch management purposes, keep it under the --- separator.
Best regards,
Krzysztof
Quoted 14 lines · Krzysztof Kozlowski
Quoted 6 lines · Robert Nelson
This board is based on ti,j722s family using the am67a variation.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-aiSigned-off-by Robert Nelson <[email protected]><form letter>
This is a friendly reminder during the review process.It looks like you received a tag and forgot to add it.
Quoted 7 lines
If you do not know the process, here is a short explanation: Please add Acked-by/Reviewed-by/Tested-by tags when posting new versions, under or above your Signed-off-by tag. Tag is "received", when provided in a message replied to you on the mailing list. Tools like b4 can help here. However, there's no need to repost patches *only* to add the tags. The upstream maintainer will do that for tags received on the version they apply.
Yeah, Rob's ack was for v1.. then TI got involved and renamed the part family, so i emailed on v2 of the change j722s -> am67a, it was 95% of the patch, didn't know to add it back..
Regards,
Signature · 2 lines
Robert Nelson https://rcn-ee.com/
Quoted 6 lines · Robert Nelson
This board is based on ti,j722s family using the am67a variation.
https://beagley-ai.org/
https://openbeagle.org/beagley-ai/beagley-aiSigned-off-by Robert Nelson <[email protected]>
Best regards,
Krzysztof