dt-bindings: arm: ti: Add bindings for BeagleBone AI-64
Subsystems (2)
PATCH v5 1/2 dt-bindings: arm: ti: Add bindings for BeagleBone AI-64
This board is based on the ti,j721e
https://beagleboard.org/ai-64
https://git.beagleboard.org/beagleboard/beaglebone-ai-64
---
Changes since v4:
- no changes
Changes since v3:
- added Acked-by from Rob Herring
Changes since v2:
- rebased on next after k3.yaml alphabetical sort
Changes since v1:
- added documenation links
- add board in alphabetical order
--- Documentation/devicetree/bindings/arm/ti/k3.yaml | 1 + 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/ti/k3.yaml +1 -0
@@ -61,6 +61,7 @@ properties: - const: ti,j721e - items: - enum: + - beagle,j721e-beagleboneai64 - ti,j721e-evm - ti,j721e-sk - const: ti,j721e
Signature · 1 line
2.30.2
PATCH v5 2/2 arm64: dts: ti: add k3-j721e-beagleboneai64
BeagleBoard.org BeagleBone AI-64 is an open source hardware single board computer based on the Texas Instruments TDA4VM SoC featuring dual-core 2.0GHz Arm Cortex-A72 processor, C7x+MMA and 2 C66x floating-point VLIW DSPs, 3x dual Arm Cortex-R5 co-processors, 2x 6-core Programmable Real-Time Unit and Industrial Communication SubSystem, PowerVR Rogue 8XE GE8430 3D GPU. The board features 4GB DDR4, USB3.0 Type-C, 2x USB SS Type-A, miniDisplayPort, 2x 4-lane CSI, DSI, 16GB eMMC flash, 1G Ethernet, M.2 E-key for WiFi/BT, and BeagleBone expansion headers.
This board family can be indentified by the BBONEAI-64-B0 in the at24 eeprom:
[aa 55 33 ee 01 37 00 10 2e 00 42 42 4f 4e 45 41 |.U3..7....BBONEA|] [49 2d 36 34 2d 42 30 2d 00 00 42 30 30 30 37 38 |I-64-B0-..B00078|]
https://beagleboard.org/ai-64
https://git.beagleboard.org/beagleboard/beaglebone-ai-64
---
Changes since v4:
- secure_ddr - removed alignment property
- gpio-keys - removed un-needed autorepeat
- gpio-keys - use button over switch label
- davinci_mdio - move mcu_mdio_pins_default into davinci_mdio node
- main_r5fss0_core0 - remove firmware name till upstream gets it sorted out
Changes since v3:
- rebased on next after enable/disable device-tree level changes
- Enable UART nodes at the board level
- Enable I2C nodes at the board level
- Enable Mailbox nodes at the board level
- Enable MCASP nodes at the board level
Changes since v2:
- drop bootargs
- use generic node names for regulators
- corrected main-i2c*pins node-names
Changes since v1:
- added product url to license section
- added aliases for serial, mmc and i2c
- use switch-X syntax for switches
- switch-1 removed disabled status
- use led-X syntax for leds
- led-x dropped labels, using functions
- dp_pwr_3v3 removed extra comment, always on regulator setting
- added i2c interfaces that map with BeagleBone Family
- corrected mcu-adc*-pins-default node-names
- main_uart0 corrected comment on TIFS firmware.
- main_gpio0 - removed un-needed okay
- main_gpio1 - removed un-needed okay
- mhdp added missing phy
- main_r5fss0_core0 - corrected missing space
- added tscadc0/tscadc1 pins brought out on board
- marked disabled nodes as unused in this design
--- arch/arm64/boot/dts/ti/Makefile | 1 + .../boot/dts/ti/k3-j721e-beagleboneai64.dts | 1110 +++++++++++++++++ 2 files changed, 1111 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts
arch/arm64/boot/dts/ti/Makefile +1 -0
@@ -12,6 +12,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic-pg2.dtb dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced.dtb dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-pg2.dtb +dtb-$(CONFIG_ARCH_K3) += k3-j721e-beagleboneai64.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721e-sk.dtb
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +1110 -0
1,110 lines not on this page · raw message
Signature · 1 line
2.30.2
Nishanth Menon
maintainerRe: [PATCH v5 2/2] arm64: dts: ti: add k3-j721e-beagleboneai64
On 15:58-20221114, Robert Nelson wrote:
[...]
Quoted 19 lines
arch/arm64/boot/dts/ti/Makefile +1
-0@@ -12,6 +12,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic-pg2.dtb dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced.dtb dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-pg2.dtb +dtb-$(CONFIG_ARCH_K3) += k3-j721e-beagleboneai64.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb dtb-$(CONFIG_ARCH_K3) += k3-j721e-sk.dtbarch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +1
-0@@ -0,0 +1,1110 @@ +// SPDX-License-Identifier: GPL-2.0
[...]
Quoted 22 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +22
-0+ leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&led_pins_default>; + + led-0 { + gpios = <&main_gpio0 96 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_HEARTBEAT; + linux,default-trigger = "heartbeat"; + }; + + led-1 { + gpios = <&main_gpio0 95 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_DISK_ACTIVITY; + linux,default-trigger = "mmc0"; + }; + + led-2 { + gpios = <&main_gpio0 97 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_CPU; + linux,default-trigger = "cpu"; + };
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 217
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +10
-0+ + led-3 { + gpios = <&main_gpio0 110 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_DISK_ACTIVITY; + linux,default-trigger = "mmc1"; + }; + + led-4 { + gpios = <&main_gpio0 109 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy0tx";
we'd be Violating the oneOf conditions here.
Quoted 38 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +38
-0+ function = LED_FUNCTION_WLAN; + default-state = "off"; + }; + }; + + evm_12v0: regulator-0 { + /* main supply */ + compatible = "regulator-fixed"; + regulator-name = "evm_12v0"; + regulator-min-microvolt = <12000000>; + regulator-max-microvolt = <12000000>; + regulator-always-on; + regulator-boot-on; + }; + + vsys_3v3: regulator-1 { + /* Output of LMS140 */ + compatible = "regulator-fixed"; + regulator-name = "vsys_3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&evm_12v0>; + regulator-always-on; + regulator-boot-on; + }; + + vsys_5v0: regulator-2 { + /* Output of LM5140 */ + compatible = "regulator-fixed"; + regulator-name = "vsys_5v0"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + vin-supply = <&evm_12v0>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_mmc1: regulator-3 {
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 265
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +10
-0+ compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&sd_pwr_en_pins_default>; + regulator-name = "vdd_mmc1"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + enable-active-high; + vin-supply = <&vsys_3v3>; + gpios = <&main_gpio0 82 GPIO_ACTIVE_HIGH>;
s/gpios/gpio ?
Quoted 14 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +14
-0+ }; + + vdd_sd_dv_alt: regulator-4 { + compatible = "regulator-gpio"; + pinctrl-names = "default"; + pinctrl-0 = <&vdd_sd_dv_alt_pins_default>; + regulator-name = "tlv71033"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + vin-supply = <&vsys_5v0>; + gpios = <&main_gpio0 117 GPIO_ACTIVE_HIGH>; + states = <1800000 0x0>, + <3300000 0x1>;
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 289
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +10
-0+ }; + + dp_pwr_3v3: regulator-5 { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&dp0_3v3_en_pins_default>; + regulator-name = "dp-pwr"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpios = <&main_gpio0 49 GPIO_ACTIVE_HIGH>; /* DP0_PWR_SW_EN */
Same here - gpio ?
Quoted 2 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +2
-0+ enable-active-high; + };
[...]
Quoted 19 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +19
-0+ + +&main_gpio0 { + gpio-line-names = "", "P9_11", "P9_13", "P8_17", "P8_18", /* 0-4 */ + "P8_22", "P8_24", "P8_34", "P8_36", "P8_38A", /* 5-9 */ + "P9_23", "P8_37B", "P9_26B", "P9_24B", "P8_08", /* 10-14 */ + "P8_07", "P8_10", "P8_09", "P9_42B", "", /* 15-19 */ + "P8_03", "TYPEC_PWR_ST", "M2_RSTz", "M2_I2C_ALERT#", "P8_35A", /* 20-24 */ + "P8_33A", "P8_32A", "", "P9_17A", "", /* 25-29 */ + "P8_21", "P8_23", "P8_31A", "P8_05", "P8_06", /* 30-34 */ + "P8_25", "M2_W_DISABLE1#", "M2_W_DISABLE2#", "P9_22A (BOOTMODE1)", "P9_21A", /* 35-39 */ + "P9_18A", "DSI_I2C_SCL", "DSI_I2C_SDA", "P9_28B", "P9_30B", /* 40-44 */ + "P9_12", "P9_27A", "P9_15", "P8_04 (BOOTMODE2)", "VCC_DP_EN", /* 45-49 */ + "P9_33B", "P8_26", "P9_31B", "P9_29B", "P9_39B", /* 50-54 */ + "P9_35B", "P9_36B", "P9_37B", "P9_38B", "P8_12", /* 55-59 */ + "P8_11 (BOOTMODE7)", "P8_15", "P8_16", "", "", /* 60-64 */ + "P8_43", "P8_44", "P8_41", "P8_42 (BOOTMODE6)", "P8_39", /* 65-69 */ + "P8_40", "P8_27", "P8_28", "P8_29", "P8_30", /* 70-74 */ + "P8_14", "P8_20", "P9_20B", "P9_19B", "P8_45", /* 75-79 */
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 678
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts new file +10
-0+ "P8_46 (BOOTMODE3)", "P9_40B", "VDD_SD_EN", "CSI_I2C_SCL", "CSI_I2C_SDA", /* 80-84 */ + "M2_I2S_SCK", "M2_I2S_WS", "M2_I2S_IN", "P8_19", "P8_13", /* 85-89 */ + "P9_21B", "P9_22B", "M2_I2S_OUT", "P9_14", "P9_16", /* 90-94 */ + "USR1", "USR0", "USR2", "DSI_GPIO1", "FAN_PWM", /* 95-99 */ + "FAN_TACH", "CSI1_GPIO1", "CSI0_GPIO2", "CSI0_GPIO1", "P9_25B", /* 100-104 */ + "P8_38B", "P8_37A", "CSI1_GPIO2", "DSI_GPIO2", "USR4", /* 105-109 */ + "USR3", "P8_33B", "DP_HPD", "M2_UART_CTSn", "M2_UART_RTSn", /* 110-114 */ + "P9_17B", "P8_35B", "VDD_SD_SEL", "P9_26A", "P9_24A", /* 115-119 */ + "P9_18B", "CONSOLE_RX", "CONSOLE_TX", "P9_42A", "P9_27B", /* 120-124 */ + "M2_UART_RX", "M2_UART_TX", "P9_25A"; /* 125-127 */
Can we drop the gpio-line-names description for now?
gpio-line-names: maxItems: 32 in Documentation/devicetree/bindings/gpio/ti,omap-gpio.yaml - that probably should be fixed prior to this else we get the dtbs_check warning around this. The max count actually depends on ti,ngpio - So, I think the schema is probably not accurate here.
Signature · 3 lines
Regards, Nishanth Menon Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
Re: [PATCH v5 2/2] arm64: dts: ti: add k3-j721e-beagleboneai64
Thanks Nishanth
Quoted 10 lines · Nishanth Menon
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 217
Quoted 6 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts +4
-0+ + led-4 { + gpios = <&main_gpio0 109 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy0tx";we'd be Violating the oneOf conditions here.
Removed..
Quoted 13 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 265
Quoted 12 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts +12
-0+ + vdd_mmc1: regulator-3 { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&sd_pwr_en_pins_default>; + regulator-name = "vdd_mmc1"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + enable-active-high; + vin-supply = <&vsys_3v3>; + gpios = <&main_gpio0 82 GPIO_ACTIVE_HIGH>;
Quoted 3 lines
s/gpios/gpio ?
cleaned up these old gpios -> gpio references...
Quoted 28 lines
Quoted 17 lines
+&main_gpio0 {
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts +16
-0+ gpio-line-names = "", "P9_11", "P9_13", "P8_17", "P8_18", /* 0-4 */ + "P8_22", "P8_24", "P8_34", "P8_36", "P8_38A", /* 5-9 */ + "P9_23", "P8_37B", "P9_26B", "P9_24B", "P8_08", /* 10-14 */ + "P8_07", "P8_10", "P8_09", "P9_42B", "", /* 15-19 */ + "P8_03", "TYPEC_PWR_ST", "M2_RSTz", "M2_I2C_ALERT#", "P8_35A", /* 20-24 */ + "P8_33A", "P8_32A", "", "P9_17A", "", /* 25-29 */ + "P8_21", "P8_23", "P8_31A", "P8_05", "P8_06", /* 30-34 */ + "P8_25", "M2_W_DISABLE1#", "M2_W_DISABLE2#", "P9_22A (BOOTMODE1)", "P9_21A", /* 35-39 */ + "P9_18A", "DSI_I2C_SCL", "DSI_I2C_SDA", "P9_28B", "P9_30B", /* 40-44 */ + "P9_12", "P9_27A", "P9_15", "P8_04 (BOOTMODE2)", "VCC_DP_EN", /* 45-49 */ + "P9_33B", "P8_26", "P9_31B", "P9_29B", "P9_39B", /* 50-54 */ + "P9_35B", "P9_36B", "P9_37B", "P9_38B", "P8_12", /* 55-59 */ + "P8_11 (BOOTMODE7)", "P8_15", "P8_16", "", "", /* 60-64 */ + "P8_43", "P8_44", "P8_41", "P8_42 (BOOTMODE6)", "P8_39", /* 65-69 */ + "P8_40", "P8_27", "P8_28", "P8_29", "P8_30", /* 70-74 */ + "P8_14", "P8_20", "P9_20B", "P9_19B", "P8_45", /* 75-79 */arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts line 678
Quoted 10 lines
arch/arm64/boot/dts/ti/k3-j721e-beagleboneai64.dts +10
-0+ "P8_46 (BOOTMODE3)", "P9_40B", "VDD_SD_EN", "CSI_I2C_SCL", "CSI_I2C_SDA", /* 80-84 */ + "M2_I2S_SCK", "M2_I2S_WS", "M2_I2S_IN", "P8_19", "P8_13", /* 85-89 */ + "P9_21B", "P9_22B", "M2_I2S_OUT", "P9_14", "P9_16", /* 90-94 */ + "USR1", "USR0", "USR2", "DSI_GPIO1", "FAN_PWM", /* 95-99 */ + "FAN_TACH", "CSI1_GPIO1", "CSI0_GPIO2", "CSI0_GPIO1", "P9_25B", /* 100-104 */ + "P8_38B", "P8_37A", "CSI1_GPIO2", "DSI_GPIO2", "USR4", /* 105-109 */ + "USR3", "P8_33B", "DP_HPD", "M2_UART_CTSn", "M2_UART_RTSn", /* 110-114 */ + "P9_17B", "P8_35B", "VDD_SD_SEL", "P9_26A", "P9_24A", /* 115-119 */ + "P9_18B", "CONSOLE_RX", "CONSOLE_TX", "P9_42A", "P9_27B", /* 120-124 */ + "M2_UART_RX", "M2_UART_TX", "P9_25A"; /* 125-127 */
Quoted 6 lines
Can we drop the gpio-line-names description for now?
gpio-line-names: maxItems: 32 inDocumentation/devicetree/bindings/gpio/ti,omap-gpio.yaml- that probably should be fixed prior to this else we get thedtbs_checkwarning around this. The max count actually depends on ti,ngpio - So, I think the schema is probably not accurate here.
Removed for now, till we are ready..
Regards,
Signature · 2 lines
Robert Nelson https://rcn-ee.com/