Other Parts Discussed in Thread: DP83869HM
I have a custom HW with the AM64X processor.
My SW is Linux kernel 5.10.41.
I have 2 DP83869HM PHYs connected to ICSSG1-pru1 and ICSSG1-pru0
I am using the am65x-sr2- firmware from 08.04.00.003 :
am65x-sr2-pru0-prueth-fw.elf am65x-sr2-rtu1-prueth-fw.elf
am65x-sr2-pru1-prueth-fw.elf am65x-sr2-txpru0-prueth-fw.elf
am65x-sr2-rtu0-prueth-fw.elf am65x-sr2-txpru1-prueth-fw.elf
I can detect the link of the 2 PHYs on the MDIO bus but can't transmit/receive data through the MII bus (RGMII).
I guess something is not defined correctly in the device tree or I am using the wrong firmware.
When I'm trying to ping the outside world the TX counter increases, but the RX counter remains 0.
Using tcpdump on another machine I verified that the data from my HW is not actually sent.
device tree:
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
*/
/dts-v1/;
#include <dt-bindings/phy/phy.h>
#include <dt-bindings/mux/ti-serdes.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/net/ti-dp83869.h>
#include "k3-am642.dtsi"
/ {
compatible = "ti,am642-evm", "ti,am642";
model = "Texas Instruments AM642 SolidRun Board";
chosen {
stdout-path = "serial2:115200n8";
bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
};
aliases {
ethernet2 = &icssg1_emac0;
ethernet3 = &icssg1_emac1;
};
memory@80000000 {
device_type = "memory";
/* 1G RAM */
reg = <0x0 0x80000000 0 0x40000000>;
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
secure_ddr: optee@9e800000 {
reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
alignment = <0x1000>;
no-map;
};
main_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa0000000 0x00 0x100000>;
no-map;
};
main_r5fss0_core0_memory_region: r5f-memory@a0100000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa0100000 0x00 0xf00000>;
no-map;
};
main_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa1000000 0x00 0x100000>;
no-map;
};
main_r5fss0_core1_memory_region: r5f-memory@a1100000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa1100000 0x00 0xf00000>;
no-map;
};
main_r5fss1_core0_dma_memory_region: r5f-dma-memory@a2000000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa2000000 0x00 0x100000>;
no-map;
};
main_r5fss1_core0_memory_region: r5f-memory@a2100000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa2100000 0x00 0xf00000>;
no-map;
};
main_r5fss1_core1_dma_memory_region: r5f-dma-memory@a3000000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa3000000 0x00 0x100000>;
no-map;
};
main_r5fss1_core1_memory_region: r5f-memory@a3100000 {
compatible = "shared-dma-pool";
reg = <0x00 0xa3100000 0x00 0xf00000>;
no-map;
};
rtos_ipc_memory_region: ipc-memories@a5000000 {
reg = <0x00 0xa5000000 0x00 0x00800000>;
alignment = <0x1000>;
no-map;
};
};
evm_12v0: fixedregulator-evm12v0 {
/* main DC jack */
compatible = "regulator-fixed";
regulator-name = "evm_12v0";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
regulator-always-on;
regulator-boot-on;
};
vsys_5v0: fixedregulator-vsys5v0 {
/* 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;
};
vsys_3v3: fixedregulator-vsys3v3 {
/* output of LM5140 */
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;
};
vdd_mmc1: fixed-regulator-sd {
/* TPS2051BD */
compatible = "regulator-fixed";
regulator-name = "vdd_mmc1";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
enable-active-high;
vin-supply = <&vsys_3v3>;
gpio = <&exp1 6 GPIO_ACTIVE_HIGH>;
};
vddb: fixedregulator-vddb {
compatible = "regulator-fixed";
regulator-name = "vddb_3v3_display";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vsys_3v3>;
regulator-always-on;
regulator-boot-on;
};
leds {
compatible = "gpio-leds";
led-0 {
label = "am64-evm:red:heartbeat";
gpios = <&exp1 16 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "heartbeat";
function = LED_FUNCTION_HEARTBEAT;
default-state = "off";
};
};
mdio_mux: mux-controller {
compatible = "gpio-mux";
#mux-control-cells = <0>;
mux-gpios = <&exp1 12 GPIO_ACTIVE_HIGH>;
};
transceiver1: can-phy0 {
compatible = "ti,tcan1042";
#phy-cells = <0>;
max-bitrate = <5000000>;
standby-gpios = <&exp1 8 GPIO_ACTIVE_HIGH>;
};
transceiver2: can-phy1 {
compatible = "ti,tcan1042";
#phy-cells = <0>;
max-bitrate = <5000000>;
standby-gpios = <&exp1 9 GPIO_ACTIVE_HIGH>;
};
davinci_mdio: mdio@4a101000 {
compatible = "ti,davinci_mdio";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x4a101000 0x1000>;
bus_freq = <1000000>;
};
icssg1_eth: icssg1-eth {
status = "okay";
compatible = "ti,am642-icssg-prueth";
pinctrl-names = "default";
pinctrl-0 = <&icssg1_rgmii1_pins_default &icssg1_rgmii2_pins_default>;
sram = <&oc_sram>;
ti,prus = <&pru1_0>, <&rtu1_0>, <&tx_pru1_0>, <&pru1_1>, <&rtu1_1>, <&tx_pru1_1>;
firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf",
"ti-pruss/am65x-sr2-rtu0-prueth-fw.elf",
"ti-pruss/am65x-sr2-txpru0-prueth-fw.elf",
"ti-pruss/am65x-sr2-pru1-prueth-fw.elf",
"ti-pruss/am65x-sr2-rtu1-prueth-fw.elf",
"ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";
ti,pruss-gp-mux-sel = <2>, /* MII mode */
<2>,
<2>,
<2>, /* MII mode */
<2>,
<2>;
mii-g-rt = <&icssg1_mii_g_rt>;
mii-rt = <&icssg1_mii_rt>;
iep = <&icssg1_iep0>, <&icssg1_iep1>;
interrupt-parent = <&icssg1_intc>;
interrupts = <24 0 2>, <25 1 3>;
interrupt-names = "tx_ts0", "tx_ts1";
dmas = <&main_pktdma 0xc200 0>, /* egress slice 0 */
<&main_pktdma 0xc201 0>, /* egress slice 0 */
<&main_pktdma 0xc202 0>, /* egress slice 0 */
<&main_pktdma 0xc203 0>, /* egress slice 0 */
<&main_pktdma 0xc204 0>, /* egress slice 1 */
<&main_pktdma 0xc205 0>, /* egress slice 1 */
<&main_pktdma 0xc206 0>, /* egress slice 1 */
<&main_pktdma 0xc207 0>, /* egress slice 1 */
<&main_pktdma 0x4200 0>, /* ingress slice 0 */
<&main_pktdma 0x4201 0>, /* ingress slice 1 */
<&main_pktdma 0x4202 0>, /* mgmnt rsp slice 0 */
<&main_pktdma 0x4203 0>; /* mgmnt rsp slice 1 */
dma-names = "tx0-0", "tx0-1", "tx0-2", "tx0-3",
"tx1-0", "tx1-1", "tx1-2", "tx1-3",
"rx0", "rx1","rxmgm0", "rxmgm1";
icssg1_emac0: ethernet-mii0 {
status = "okay";
phy-handle = <&icssg1_phy1>;
phy-mode = "rgmii-rxid";
syscon-rgmii-delay = <&main_conf 0x4110>;
/* Filled in by bootloader */
local-mac-address = [12 34 53 12 55 67];
};
icssg1_emac1: ethernet-mii1 {
status = "okay";
phy-handle = <&icssg1_phy2>;
phy-mode = "rgmii-rxid";
syscon-rgmii-delay = <&main_conf 0x4114>;
/* Filled in by bootloader */
local-mac-address = [12 34 53 12 55 58];
};
};
};
&oc_sram {
main_r5fss0_core0_sram: r5f-sram@40000 {
reg = <0x40000 0x40000>;
};
main_r5fss0_core1_sram: r5f-sram@80000 {
reg = <0x80000 0x40000>;
};
main_r5fss1_core0_sram: r5f-sram@c0000 {
reg = <0xc0000 0x40000>;
};
main_r5fss1_core1_sram: r5f-sram@100000 {
reg = <0x100000 0x40000>;
};
};
&main_r5fss0_core0 {
mboxes = <&mailbox0_cluster2 &mbox_main_r5fss0_core0>;
memory-region = <&main_r5fss0_core0_dma_memory_region>,
<&main_r5fss0_core0_memory_region>;
sram = <&main_r5fss0_core0_sram>;
};
&main_r5fss0_core1 {
mboxes = <&mailbox0_cluster2 &mbox_main_r5fss0_core1>;
memory-region = <&main_r5fss0_core1_dma_memory_region>,
<&main_r5fss0_core1_memory_region>;
sram = <&main_r5fss0_core1_sram>;
};
&main_r5fss1_core0 {
mboxes = <&mailbox0_cluster4 &mbox_main_r5fss1_core0>;
memory-region = <&main_r5fss1_core0_dma_memory_region>,
<&main_r5fss1_core0_memory_region>;
sram = <&main_r5fss1_core0_sram>;
};
&main_r5fss1_core1 {
mboxes = <&mailbox0_cluster4 &mbox_main_r5fss1_core1>;
memory-region = <&main_r5fss1_core1_dma_memory_region>,
<&main_r5fss1_core1_memory_region>;
sram = <&main_r5fss1_core1_sram>;
};
&main_pmx0 {
main_mmc1_pins_default: main-mmc1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0294, PIN_INPUT_PULLUP, 0) /* (J19) MMC1_CMD */
AM64X_IOPAD(0x028c, PIN_INPUT_PULLDOWN, 0) /* (L20) MMC1_CLK */
AM64X_IOPAD(0x0288, PIN_INPUT_PULLUP, 0) /* (K21) MMC1_DAT0 */
AM64X_IOPAD(0x0284, PIN_INPUT_PULLUP, 0) /* (L21) MMC1_DAT1 */
AM64X_IOPAD(0x0280, PIN_INPUT_PULLUP, 0) /* (K19) MMC1_DAT2 */
AM64X_IOPAD(0x027c, PIN_INPUT_PULLUP, 0) /* (K18) MMC1_DAT3 */
AM64X_IOPAD(0x029c, PIN_INPUT, 0) /* (C20) MMC1_SDWP */
AM64X_IOPAD(0x0290, PIN_INPUT, 0) /* MMC1_CLKLB */
>;
};
main_uart0_pins_default: main-uart0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0238, PIN_INPUT, 0) /* (B16) UART0_CTSn */
AM64X_IOPAD(0x023c, PIN_OUTPUT, 0) /* (A16) UART0_RTSn */
AM64X_IOPAD(0x0230, PIN_INPUT, 0) /* (D15) UART0_RXD */
AM64X_IOPAD(0x0234, PIN_OUTPUT, 0) /* (C16) UART0_TXD */
>;
};
main_spi0_pins_default: main-spi0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0210, PIN_INPUT, 0) /* (D13) SPI0_CLK */
AM64X_IOPAD(0x0208, PIN_OUTPUT, 0) /* (D12) SPI0_CS0 */
AM64X_IOPAD(0x0214, PIN_OUTPUT, 0) /* (A13) SPI0_D0 */
AM64X_IOPAD(0x0218, PIN_INPUT, 0) /* (A14) SPI0_D1 */
>;
};
i2c0_pins: i2c0-pins {
pinctrl-single,pins = <
AM64X_IOPAD(0x0260, PIN_INPUT_PULLUP, 0) /* (A18) I2C0_SCL */
AM64X_IOPAD(0x0264, PIN_INPUT_PULLUP, 0) /* (B18) I2C0_SDA */
>;
};
main_i2c1_pins_default: main-i2c1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
>;
};
mdio1_pins_default: mdio1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x01fc, PIN_OUTPUT, 4) /* (R2) PRG0_PRU1_GPO19.MDIO0_MDC */
AM64X_IOPAD(0x01f8, PIN_INPUT, 4) /* (P5) PRG0_PRU1_GPO18.MDIO0_MDIO */
>;
};
rgmii1_pins_default: rgmii1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x01cc, PIN_INPUT, 4) /* (W5) PRG0_PRU1_GPO7.RGMII1_RD0 */
AM64X_IOPAD(0x01d4, PIN_INPUT, 4) /* (Y5) PRG0_PRU1_GPO9.RGMII1_RD1 */
AM64X_IOPAD(0x01d8, PIN_INPUT, 4) /* (V6) PRG0_PRU1_GPO10.RGMII1_RD2 */
AM64X_IOPAD(0x01f4, PIN_INPUT, 4) /* (V5) PRG0_PRU1_GPO17.RGMII1_RD3 */
AM64X_IOPAD(0x0188, PIN_INPUT, 4) /* (AA5) PRG0_PRU0_GPO10.RGMII1_RXC */
AM64X_IOPAD(0x0184, PIN_INPUT, 4) /* (W6) PRG0_PRU0_GPO9.RGMII1_RX_CTL */
AM64X_IOPAD(0x0124, PIN_OUTPUT, 4) /* (V15) PRG1_PRU1_GPO7.RGMII1_TD0 */
AM64X_IOPAD(0x012c, PIN_OUTPUT, 4) /* (V14) PRG1_PRU1_GPO9.RGMII1_TD1 */
AM64X_IOPAD(0x0130, PIN_OUTPUT, 4) /* (W14) PRG1_PRU1_GPO10.RGMII1_TD2 */
AM64X_IOPAD(0x014c, PIN_OUTPUT, 4) /* (AA14) PRG1_PRU1_GPO17.RGMII1_TD3 */
AM64X_IOPAD(0x00e0, PIN_OUTPUT, 4) /* (U14) PRG1_PRU0_GPO10.RGMII1_TXC */
AM64X_IOPAD(0x00dc, PIN_OUTPUT, 4) /* (U15) PRG1_PRU0_GPO9.RGMII1_TX_CTL */
>;
};
main_usb0_pins_default: main-usb0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x02a8, PIN_OUTPUT, 0) /* (E19) USB0_DRVVBUS */
>;
};
ospi0_pins_default: ospi0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0000, PIN_OUTPUT, 0) /* (N20) OSPI0_CLK */
AM64X_IOPAD(0x002c, PIN_OUTPUT, 0) /* (L19) OSPI0_CSn0 */
AM64X_IOPAD(0x000c, PIN_INPUT, 0) /* (M19) OSPI0_D0 */
AM64X_IOPAD(0x0010, PIN_INPUT, 0) /* (M18) OSPI0_D1 */
AM64X_IOPAD(0x0014, PIN_INPUT, 0) /* (M20) OSPI0_D2 */
AM64X_IOPAD(0x0018, PIN_INPUT, 0) /* (M21) OSPI0_D3 */
AM64X_IOPAD(0x001c, PIN_INPUT, 0) /* (P21) OSPI0_D4 */
AM64X_IOPAD(0x0020, PIN_INPUT, 0) /* (P20) OSPI0_D5 */
AM64X_IOPAD(0x0024, PIN_INPUT, 0) /* (N18) OSPI0_D6 */
AM64X_IOPAD(0x0028, PIN_INPUT, 0) /* (M17) OSPI0_D7 */
AM64X_IOPAD(0x0008, PIN_INPUT, 0) /* (N19) OSPI0_DQS */
>;
};
main_mcan0_pins_default: main-mcan0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0254, PIN_INPUT, 0) /* (B17) MCAN0_RX */
AM64X_IOPAD(0x0250, PIN_OUTPUT, 0) /* (A17) MCAN0_TX */
>;
};
main_mcan1_pins_default: main-mcan1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x025c, PIN_INPUT, 0) /* (D17) MCAN1_RX */
AM64X_IOPAD(0x0258, PIN_OUTPUT, 0) /* (C17) MCAN1_TX */
>;
};
icssg1_mdio1_pins_default: icssg1-mdio1-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x015c, PIN_OUTPUT, 0) /* (Y6) PRG1_MDIO0_MDC */
AM64X_IOPAD(0x0158, PIN_INPUT, 0) /* (AA6) PRG1_MDIO0_MDIO */
>;
};
icssg1_rgmii1_pins_default: icssg1-rgmii1-pins-default {
pinctrl-single,pins = <
/***************ICSSG1 PRU0 ETH3******************/
AM64X_IOPAD(0x00b8, PIN_INPUT, 2) /* (Y7) PRG1_PRU0_GPO0.PRG1_RGMII1_RD0 */
AM64X_IOPAD(0x00bc, PIN_INPUT, 2) /* (U8) PRG1_PRU0_GPO1.PRG1_RGMII1_RD1 */
AM64X_IOPAD(0x00c0, PIN_INPUT, 2) /* (W8) PRG1_PRU0_GPO2.PRG1_RGMII1_RD2 */
AM64X_IOPAD(0x00c4, PIN_INPUT, 2) /* (V8) PRG1_PRU0_GPO3.PRG1_RGMII1_RD3 */
AM64X_IOPAD(0x00d0, PIN_INPUT, 2) /* (AA7) PRG1_PRU0_GPO6.PRG1_RGMII1_RXC */
AM64X_IOPAD(0x00c8, PIN_INPUT, 2) /* (Y8) PRG1_PRU0_GPO4.PRG1_RGMII1_RX_CTL */
AM64X_IOPAD(0x00e4, PIN_OUTPUT, 2) /* (AA8) PRG1_PRU0_GPO11.PRG1_RGMII1_TD0 */
AM64X_IOPAD(0x00e8, PIN_OUTPUT, 2) /* (U9) PRG1_PRU0_GPO12.PRG1_RGMII1_TD1 */
AM64X_IOPAD(0x00ec, PIN_OUTPUT, 2) /* (W9) PRG1_PRU0_GPO13.PRG1_RGMII1_TD2 */
AM64X_IOPAD(0x00f0, PIN_OUTPUT, 2) /* (AA9) PRG1_PRU0_GPO14.PRG1_RGMII1_TD3 */
AM64X_IOPAD(0x00f8, PIN_OUTPUT | PIN_INPUT, 2) /* (V9) PRG1_PRU0_GPO16.PRG1_RGMII1_TXC */
AM64X_IOPAD(0x00f4, PIN_OUTPUT, 2) /* (Y9) PRG1_PRU0_GPO15.PRG1_RGMII1_TX_CTL */
>;
};
icssg1_rgmii2_pins_default: icssg1-rgmii2-pins-default {
pinctrl-single,pins = <
/***************ICSSG1 PRU1 ETH2******************/
AM64X_IOPAD(0x0108, PIN_INPUT, 2) /* (W11) PRG1_PRU1_GPO0.RGMII2_RD0 */
AM64X_IOPAD(0x010c, PIN_INPUT, 2) /* (V11) PRG1_PRU1_GPO1.RGMII2_RD1 */
AM64X_IOPAD(0x0110, PIN_INPUT, 2) /* (AA12) PRG1_PRU1_GPO2.RGMII2_RD2 */
AM64X_IOPAD(0x0114, PIN_INPUT, 2) /* (Y12) PRG1_PRU1_GPO3.RGMII2_RD3 */
AM64X_IOPAD(0x0120, PIN_INPUT, 2) /* (U11) PRG1_PRU1_GPO6.RGMII2_RXC */
AM64X_IOPAD(0x0118, PIN_INPUT, 2) /* (W12) PRG1_PRU1_GPO4.RGMII2_RX_CTL */
AM64X_IOPAD(0x0134, PIN_OUTPUT, 2) /* (AA10) PRG1_PRU1_GPO11.RGMII2_TD0 */
AM64X_IOPAD(0x0138, PIN_OUTPUT, 2) /* (V10) PRG1_PRU1_GPO12.RGMII2_TD1 */
AM64X_IOPAD(0x013c, PIN_OUTPUT, 2) /* (U10) PRG1_PRU1_GPO13.RGMII2_TD2 */
AM64X_IOPAD(0x0140, PIN_OUTPUT, 2) /* (AA11) PRG1_PRU1_GPO14.RGMII2_TD3 */
AM64X_IOPAD(0x0148, PIN_OUTPUT | PIN_INPUT, 2) /* (Y10) PRG1_PRU1_GPO16.RGMII2_TXC */
AM64X_IOPAD(0x0144, PIN_OUTPUT, 2) /* (Y11) PRG1_PRU1_GPO15.RGMII2_TX_CTL */
>;
};
main_ecap0_pins_default: main-ecap0-pins-default {
pinctrl-single,pins = <
AM64X_IOPAD(0x0270, PIN_INPUT, 0) /* (D18) ECAP0_IN_APWM_OUT */
>;
};
};
&wkup_pmx0 {
mcu_uart1_pins_default: mcu-uart1-pins-default {
pinctrl-single,pins = <
AM64X_MCU_IOPAD(0x0038, PIN_INPUT, 0) /* (C9) MCU_UART1_RXD */
AM64X_MCU_IOPAD(0x003c, PIN_OUTPUT, 0) /* (D9) MCU_UART1_TXD */
>;
};
};
&main_uart0 {
pinctrl-names = "default";
pinctrl-0 = <&main_uart0_pins_default>;
};
/* main_uart1 is reserved for firmware usage */
&main_uart1 {
status = "reserved";
};
&main_uart2 {
status = "disabled";
};
&main_uart3 {
status = "disabled";
};
&main_uart4 {
status = "disabled";
};
&main_uart5 {
status = "disabled";
};
&main_uart6 {
status = "disabled";
};
&mcu_uart0 {
status = "disabled";
};
&mcu_uart1 {
pinctrl-names = "default";
pinctrl-0 = <&mcu_uart1_pins_default>;
};
&main_i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
clock-frequency = <400000>;
};
&main_i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&main_i2c1_pins_default>;
clock-frequency = <400000>;
exp1: gpio@22 {
compatible = "ti,tca6424";
reg = <0x22>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names = "GPIO_eMMC_RSTn", "CAN_MUX_SEL",
"GPIO_CPSW1_RST", "GPIO_RGMII1_RST",
"GPIO_RGMII2_RST", "GPIO_PCIe_RST_OUT",
"MMC1_SD_EN", "FSI_FET_SEL",
"MCAN0_STB_3V3", "MCAN1_STB_3V3",
"CPSW_FET_SEL", "CPSW_FET2_SEL",
"PRG1_RGMII2_FET_SEL", "TEST_GPIO2",
"GPIO_OLED_RESETn", "VPP_LDO_EN",
"TEST_LED1", "TP92", "TP90", "TP88",
"TP87", "TP86", "TP89", "TP91";
};
};
&main_i2c2 {
status = "disabled";
};
&main_i2c3 {
status = "disabled";
};
/* mcu_gpio0 is reserved for mcu firmware usage */
&mcu_gpio0 {
status = "reserved";
};
&mcu_i2c0 {
status = "disabled";
};
&mcu_i2c1 {
status = "disabled";
};
&mcu_spi0 {
status = "disabled";
};
&mcu_spi1 {
status = "disabled";
};
&main_spi0 {
pinctrl-names = "default";
pinctrl-0 = <&main_spi0_pins_default>;
ti,pindir-d0-out-d1-in = <1>;
eeprom@0 {
compatible = "microchip,93lc46b";
reg = <0>;
spi-max-frequency = <1000000>;
spi-cs-high;
data-size = <16>;
};
};
&sdhci0 {
/* emmc */
bus-width = <8>;
non-removable;
ti,driver-strength-ohm = <50>;
disable-wp;
no-1-8-v;
};
&sdhci1 {
/* SD/MMC */
pinctrl-names = "default";
bus-width = <4>;
pinctrl-0 = <&main_mmc1_pins_default>;
cd-gpios = <&main_gpio1 77 1>;
ti,driver-strength-ohm = <50>;
disable-wp;
};
&usbss0 {
ti,vbus-divider;
ti,usb2-only;
};
&usb0 {
dr_mode = "host";
maximum-speed = "high-speed";
pinctrl-names = "default";
status = "okay";
pinctrl-0 = <&main_usb0_pins_default>;
};
&cpsw3g {
pinctrl-names = "default";
pinctrl-0 = <&mdio1_pins_default
&rgmii1_pins_default >;
cpts@3d000 {
ti,pps = <7 1>;
};
};
&cpsw_port1 {
phy-mode = "rgmii-rxid";
phy-handle = <&cpsw3g_phy0>;
/*
Parameter is defined in DTSI.
Overwrite it with an empty entry, The MAC address is read from efuse during U-boot
No need to do it again in kernel
*/
ti,syscon-efuse = <>;
};
&cpsw_port2 {
status = "disabled";
};
&cpsw3g_mdio {
cpsw3g_phy0: ethernet-phy@0 {
reg = <0>;
ti,op-mode = <DP83869_RGMII_COPPER_ETHERNET>;
};
};
&icssg1_mdio {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&icssg1_mdio1_pins_default>;
#address-cells = <1>;
#size-cells = <0>;
icssg1_phy1: ethernet-phy@f {
reg = <0xf>;
tx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
rx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
ti,op-mode = <DP83869_RGMII_COPPER_ETHERNET>;
ti,max-output-impedance = "true";
ti,clk-output-sel = <DP83869_CLK_O_SEL_CHN_A_RCLK>;
rx-internal-delay-ps = <2000>;
tx-internal-delay-ps = <2000>;
};
icssg1_phy2: ethernet-phy@3 {
reg = <3>;
tx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
rx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
ti,op-mode = <DP83869_RGMII_COPPER_ETHERNET>;
ti,max-output-impedance = "true";
ti,clk-output-sel = <DP83869_CLK_O_SEL_CHN_A_RCLK>;
rx-internal-delay-ps = <2000>;
tx-internal-delay-ps = <2000>;
};
};
#define TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
×ync_router {
pinctrl-names = "default";
pinctrl-0 = <&mcu_cpts_pps>;
/* Example of the timesync routing */
mcu_cpts_pps: mcu-cpts-pps {
pinctrl-single,pins = <
/* pps [cpts genf1] in22 -> out37 [cpts hw8_push] */
TS_OFFSET(37, 22)
/* pps [cpts genf1] in22 -> out25 [SYNC1_OUT pin] */
TS_OFFSET(25, 22)
>;
};
};
&mailbox0_cluster2 {
mbox_main_r5fss0_core0: mbox-main-r5fss0-core0 {
ti,mbox-rx = <0 0 2>;
ti,mbox-tx = <1 0 2>;
};
mbox_main_r5fss0_core1: mbox-main-r5fss0-core1 {
ti,mbox-rx = <2 0 2>;
ti,mbox-tx = <3 0 2>;
};
};
&mailbox0_cluster3 {
status = "disabled";
};
&mailbox0_cluster4 {
mbox_main_r5fss1_core0: mbox-main-r5fss1-core0 {
ti,mbox-rx = <0 0 2>;
ti,mbox-tx = <1 0 2>;
};
mbox_main_r5fss1_core1: mbox-main-r5fss1-core1 {
ti,mbox-rx = <2 0 2>;
ti,mbox-tx = <3 0 2>;
};
};
&mailbox0_cluster5 {
status = "disabled";
};
&mailbox0_cluster6 {
mbox_m4_0: mbox-m4-0 {
ti,mbox-rx = <0 0 2>;
ti,mbox-tx = <1 0 2>;
};
};
&mailbox0_cluster7 {
status = "disabled";
};
&serdes_ln_ctrl {
idle-states = <AM64_SERDES0_LANE0_PCIE0>;
};
&serdes0 {
serdes0_pcie_link: phy@0 {
reg = <0>;
cdns,num-lanes = <1>;
#phy-cells = <0>;
cdns,phy-type = <PHY_TYPE_PCIE>;
resets = <&serdes_wiz0 1>;
};
};
&pcie0_rc {
reset-gpios = <&exp1 5 GPIO_ACTIVE_HIGH>;
phys = <&serdes0_pcie_link>;
phy-names = "pcie-phy";
num-lanes = <1>;
};
&pcie0_ep {
phys = <&serdes0_pcie_link>;
phy-names = "pcie-phy";
num-lanes = <1>;
status = "disabled";
};
&tscadc0 {
/* ADC is reserved for R5 usage */
status = "reserved";
};
&ospi0 {
pinctrl-names = "default";
pinctrl-0 = <&ospi0_pins_default>;
flash@0{
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-tx-bus-width = <8>;
spi-rx-bus-width = <8>;
spi-max-frequency = <25000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
cdns,tslch-ns = <60>;
cdns,read-delay = <4>;
cdns,phy-mode;
#address-cells = <1>;
#size-cells = <1>;
};
};
&main_mcan0 {
pinctrl-names = "default";
pinctrl-0 = <&main_mcan0_pins_default>;
phys = <&transceiver1>;
};
&main_mcan1 {
pinctrl-names = "default";
pinctrl-0 = <&main_mcan1_pins_default>;
phys = <&transceiver2>;
};
&icssg0_mdio {
status = "disabled";
};
&ecap0 {
/* PWM is available on Pin 1 of header J12 */
pinctrl-names = "default";
pinctrl-0 = <&main_ecap0_pins_default>;
};
Relevant Boot log parts:
# ifconfig eth1 up [ 79.841549] remoteproc remoteproc10: powering up 300b4000.pru [ 79.851856] remoteproc remoteproc10: Booting fw image ti-pruss/am65x-sr2-pru0-prueth-fw.elf, size 37644 [ 79.861316] remoteproc remoteproc10: unsupported resource 5 [ 79.866920] remoteproc remoteproc10: remote processor 300b4000.pru is now up [ 79.874001] remoteproc remoteproc11: powering up 30084000.rtu [ 79.883143] remoteproc remoteproc11: Booting fw image ti-pruss/am65x-sr2-rtu0-prueth-fw.elf, size 30860 [ 79.892609] remoteproc remoteproc11: remote processor 30084000.rtu is now up [ 79.899693] remoteproc remoteproc12: powering up 3008a000.txpru [ 79.908897] remoteproc remoteproc12: Booting fw image ti-pruss/am65x-sr2-txpru0-prueth-fw.elf, size 36948 [ 79.918520] remoteproc remoteproc12: remote processor 3008a000.txpru is now up [ 79.927114] pps pps1: new PPS source ptp2 [ 79.932895] TI DP83869 300b2400.mdio:0f: attached PHY driver [TI DP83869] (mii_bus:phy_addr=300b2400.mdio:0f, irq=POLL) [ 79.943998] net eth1: started
# dmesg | grep davinci
[ 0.182966] davinci_mdio 4a10100000001000.mdio: failed to get device clock
[ 0.182994] davinci_mdio: probe of 4a10100000001000.mdio failed with error -2
[ 0.391513] davinci_mdio 300b2400.mdio: davinci mdio revision 1.7, bus freq 1000000
[ 0.408862] davinci_mdio 300b2400.mdio: phy[3]: device 300b2400.mdio:03, driver TI DP83869
[ 0.408886] davinci_mdio 300b2400.mdio: phy[15]: device 300b2400.mdio:0f, driver TI DP83869
[ 2.339512] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[ 2.356371] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83869
# ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Full
100baseT/Full
1000baseT/Full
1000baseX/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Full
100baseT/Full
1000baseT/Full
1000baseX/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 15
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Current message level: 0x00007fff (32767)
drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol
Link detected: yes
# ethtool -S eth1
NIC statistics:
rx_good_frames: 0
rx_broadcast_frames: 0
rx_multicast_frames: 0
rx_crc_error_frames: 0
rx_mii_error_frames: 0
rx_odd_nibble_frames: 0
rx_frame_max_size: 2000
rx_max_size_error_frames: 0
rx_frame_min_size: 64
rx_min_size_error_frames: 16
rx_overrun_frames: 0
rx_class0_hits: 16
rx_class1_hits: 0
rx_class2_hits: 0
rx_class3_hits: 0
rx_class4_hits: 0
rx_class5_hits: 0
rx_class6_hits: 0
rx_class7_hits: 0
rx_class8_hits: 16
rx_class9_hits: 16
rx_class10_hits: 0
rx_class11_hits: 0
rx_class12_hits: 0
rx_class13_hits: 0
rx_class14_hits: 0
rx_class15_hits: 0
rx_smd_frags: 0
rx_bucket1_size: 64
rx_bucket2_size: 128
rx_bucket3_size: 256
rx_bucket4_size: 512
rx_64B_frames: 0
rx_bucket1_frames: 16
rx_bucket2_frames: 0
rx_bucket3_frames: 0
rx_bucket4_frames: 0
rx_bucket5_frames: 0
rx_total_bytes: 0
rx_tx_total_bytes: 0
tx_good_frames: 0
tx_broadcast_frames: 0
tx_multicast_frames: 0
tx_odd_nibble_frames: 0
tx_underflow_errors: 0
tx_frame_max_size: 2000
tx_max_size_error_frames: 0
tx_frame_min_size: 64
tx_min_size_error_frames: 0
tx_bucket1_size: 64
tx_bucket2_size: 128
tx_bucket3_size: 256
tx_bucket4_size: 512
tx_64B_frames: 0
tx_bucket1_frames: 0
tx_bucket2_frames: 0
tx_bucket3_frames: 0
tx_bucket4_frames: 0
tx_bucket5_frames: 0
tx_total_bytes: 0
the full boot log
U-Boot 2021.01-00014-gf70147e0-dirty (Jul 10 2022 - 18:31:56 +0000)
SoC: AM64X SR1.0
Model: Texas Instruments AM642 SolidRun Board
DRAM: 1 GiB
MMC: mmc@fa10000: 0, mmc@fa00000: 1
In: serial@2800000
Out: serial@2800000
Err: serial@2800000
No MAC address 1 in EEPROM, using random MAC address.
No MAC address 2 in EEPROM, using random MAC address.
No MAC address 3 in EEPROM, using random MAC address.
Net: eth0: ethernet@8000000
Hit any key to stop autoboot: 0
19950080 bytes read in 858 ms (22.2 MiB/s)
53852 bytes read in 5 ms (10.3 MiB/s)
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
Loading Device Tree to 000000008ffef000, end 000000008ffff25b ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 5.10.41-00013-gdc5f5efbc5e1-dirty (moaath@7beb34a846cf) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025, GNU ld (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 2.33.1.20191209) #95 SMP PREEMPT Sun Jul 10 18:32:12 UTC 2022
[ 0.000000] Machine model: Texas Instruments AM642 SolidRun Board
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a1000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-memory@a1100000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a2000000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a2000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a2100000, size 15 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-memory@a2100000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 15 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-memory@a3100000, compatible id shared-dma-pool
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000080000000-0x00000000bfffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000080000000-0x000000009e7fffff]
[ 0.000000] node 0: [mem 0x000000009e800000-0x00000000a3ffffff]
[ 0.000000] node 0: [mem 0x00000000a4000000-0x00000000a4ffffff]
[ 0.000000] node 0: [mem 0x00000000a5000000-0x00000000a57fffff]
[ 0.000000] node 0: [mem 0x00000000a5800000-0x00000000bfffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000bfffffff]
[ 0.000000] cma: Reserved 24 MiB at 0x00000000bc800000
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv1.1 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: Trusted OS migration not required
[ 0.000000] psci: SMC Calling Convention v1.2
[ 0.000000] percpu: Embedded 22 pages/cpu s49880 r8192 d32040 u90112
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] CPU features: detected: GIC system register CPU interface
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 258048
[ 0.000000] Kernel command line: console=ttyS2,115200n8 root=/dev/mmcblk1p2 rw rootwait
[ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 885492K/1048576K available (11648K kernel code, 1178K rwdata, 4568K rodata, 1984K init, 436K bss, 138508K reserved, 24576K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
[ 0.000000] Trampoline variant of Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[ 0.000000] GICv3: 256 SPIs implemented
[ 0.000000] GICv3: 0 Extended SPIs implemented
[ 0.000000] GICv3: Distributor has no Range Selector support
[ 0.000000] GICv3: 16 PPIs implemented
[ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001840000
[ 0.000000] ITS [mem 0x01820000-0x0182ffff]
[ 0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
[ 0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
[ 0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80800000 (flat, esz 8, psz 64K, shr 0)
[ 0.000000] ITS: using cache flushing for cmd queue
[ 0.000000] GICv3: using LPI property table @0x0000000080030000
[ 0.000000] GIC: using cache flushing for LPI property table
[ 0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080040000
[ 0.000000] random: get_random_bytes called from start_kernel+0x32c/0x4d4 with crng_init=0
[ 0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
[ 0.000005] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[ 0.000323] Console: colour dummy device 80x25
[ 0.000383] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
[ 0.000400] pid_max: default: 32768 minimum: 301
[ 0.000510] LSM: Security Framework initializing
[ 0.000579] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.000596] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.002430] rcu: Hierarchical SRCU implementation.
[ 0.002686] Platform MSI: msi-controller@1820000 domain created
[ 0.002963] PCI/MSI: /bus@f4000/interrupt-controller@1800000/msi-controller@1820000 domain created
[ 0.003077] EFI services will not be available.
[ 0.003342] smp: Bringing up secondary CPUs ...
[ 0.004012] Detected VIPT I-cache on CPU1
[ 0.004056] GICv3: CPU1: found redistributor 1 region 0:0x0000000001860000
[ 0.004071] GICv3: CPU1: using allocated LPI pending table @0x0000000080050000
[ 0.004142] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.004275] smp: Brought up 1 node, 2 CPUs
[ 0.004296] SMP: Total of 2 processors activated.
[ 0.004306] CPU features: detected: 32-bit EL0 Support
[ 0.004314] CPU features: detected: CRC32 instructions
[ 0.012845] CPU: All CPU(s) started at EL2
[ 0.012874] alternatives: patching kernel code
[ 0.014138] devtmpfs: initialized
[ 0.022276] KASLR disabled due to lack of seed
[ 0.022518] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.022539] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[ 0.023659] pinctrl core: initialized pinctrl subsystem
[ 0.024441] DMI not present or invalid.
[ 0.025034] NET: Registered protocol family 16
[ 0.026865] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.027014] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.027155] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.027833] thermal_sys: Registered thermal governor 'step_wise'
[ 0.027840] thermal_sys: Registered thermal governor 'power_allocator'
[ 0.028346] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.028453] ASID allocator initialised with 65536 entries
[ 0.059208] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[ 0.059232] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[ 0.059240] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.059248] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[ 0.060509] cryptd: max_cpu_qlen set to 1000
[ 0.063839] k3-chipinfo 43000014.chipid: Family:AM64X rev:SR1.0 JTAGID[0x0bb3802f] Detected
[ 0.064631] vsys_5v0: supplied by evm_12v0
[ 0.064986] vsys_3v3: supplied by evm_12v0
[ 0.065378] vddb_3v3_display: supplied by vsys_3v3
[ 0.066429] iommu: Default domain type: Translated
[ 0.066852] SCSI subsystem initialized
[ 0.067087] usbcore: registered new interface driver usbfs
[ 0.067133] usbcore: registered new interface driver hub
[ 0.067169] usbcore: registered new device driver usb
[ 0.067772] mc: Linux media interface: v0.10
[ 0.067814] videodev: Linux video capture interface: v2.00
[ 0.067901] pps_core: LinuxPPS API ver. 1 registered
[ 0.067908] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.067926] PTP clock support registered
[ 0.067965] EDAC MC: Ver: 3.0.0
[ 0.068901] omap-mailbox 29020000.mailbox: omap mailbox rev 0x66fc9100
[ 0.069131] omap-mailbox 29040000.mailbox: omap mailbox rev 0x66fc9100
[ 0.069277] omap-mailbox 29060000.mailbox: omap mailbox rev 0x66fc9100
[ 0.070117] FPGA manager framework
[ 0.070235] Advanced Linux Sound Architecture Driver Initialized.
[ 0.071385] clocksource: Switched to clocksource arch_sys_counter
[ 0.071627] VFS: Disk quotas dquot_6.6.0
[ 0.071686] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.078124] NET: Registered protocol family 2
[ 0.078325] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[ 0.079682] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[ 0.079723] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 0.079795] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
[ 0.079923] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.080106] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 0.080140] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 0.080309] NET: Registered protocol family 1
[ 0.080972] RPC: Registered named UNIX socket transport module.
[ 0.080989] RPC: Registered udp transport module.
[ 0.080995] RPC: Registered tcp transport module.
[ 0.081001] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.081019] PCI: CLS 0 bytes, default 64
[ 0.081866] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[ 0.086117] Initialise system trusted keyrings
[ 0.086378] workingset: timestamp_bits=46 max_order=18 bucket_order=0
[ 0.091032] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.091840] NFS: Registering the id_resolver key type
[ 0.091885] Key type id_resolver registered
[ 0.091893] Key type id_legacy registered
[ 0.091970] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.091978] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[ 0.092221] 9p: Installing v9fs 9p2000 file system support
[ 0.136038] Key type asymmetric registered
[ 0.136066] Asymmetric key parser 'x509' registered
[ 0.136153] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
[ 0.136163] io scheduler mq-deadline registered
[ 0.136171] io scheduler kyber registered
[ 0.138820] pinctrl-single 4084000.pinctrl: 32 pins, size 128
[ 0.139323] pinctrl-single f4000.pinctrl: 180 pins, size 720
[ 0.140581] pinctrl-single a40000.timesync-router: 512 pins, size 2048
[ 0.150795] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
[ 0.167963] brd: module loaded
[ 0.176295] loop: module loaded
[ 0.177247] megasas: 07.714.04.00-rc1
[ 0.180301] libphy: Fixed MDIO Bus: probed
[ 0.182180] tun: Universal TUN/TAP device driver, 1.6
[ 0.182971] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[ 0.182983] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[ 0.183061] sky2: driver version 1.30
[ 0.183630] davinci_mdio 4a10100000001000.mdio: failed to get device clock
[ 0.183658] davinci_mdio: probe of 4a10100000001000.mdio failed with error -2
[ 0.185262] usbcore: registered new interface driver cdc_ether
[ 0.185321] usbcore: registered new interface driver cdc_ncm
[ 0.185355] usbcore: registered new interface driver cdc_mbim
[ 0.185650] VFIO - User Level meta-driver version: 0.3
[ 0.187622] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.187643] ehci-pci: EHCI PCI platform driver
[ 0.187707] ehci-platform: EHCI generic platform driver
[ 0.187921] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.187969] ohci-pci: OHCI PCI platform driver
[ 0.188015] ohci-platform: OHCI generic platform driver
[ 0.188645] usbcore: registered new interface driver cdc_wdm
[ 0.188977] usbcore: registered new interface driver uas
[ 0.189035] usbcore: registered new interface driver usb-storage
[ 0.189138] usbcore: registered new interface driver usbserial_generic
[ 0.189166] usbserial: USB Serial support registered for generic
[ 0.189196] usbcore: registered new interface driver ftdi_sio
[ 0.189216] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 0.189247] usbcore: registered new interface driver option
[ 0.189268] usbserial: USB Serial support registered for GSM modem (1-port)
[ 0.189297] usbcore: registered new interface driver sierra
[ 0.189318] usbserial: USB Serial support registered for Sierra USB modem
[ 0.189353] usbcore: registered new interface driver usb_serial_simple
[ 0.189377] usbserial: USB Serial support registered for carelink
[ 0.189398] usbserial: USB Serial support registered for zio
[ 0.189418] usbserial: USB Serial support registered for funsoft
[ 0.189440] usbserial: USB Serial support registered for flashloader
[ 0.189461] usbserial: USB Serial support registered for google
[ 0.189482] usbserial: USB Serial support registered for libtransistor
[ 0.189503] usbserial: USB Serial support registered for vivopay
[ 0.189525] usbserial: USB Serial support registered for moto_modem
[ 0.189546] usbserial: USB Serial support registered for motorola_tetra
[ 0.189567] usbserial: USB Serial support registered for novatel_gps
[ 0.189588] usbserial: USB Serial support registered for hp4x
[ 0.189612] usbserial: USB Serial support registered for suunto
[ 0.189634] usbserial: USB Serial support registered for siemens_mpi
[ 0.189665] usbcore: registered new interface driver usb_ehset_test
[ 0.190148] udc-core: couldn't find an available UDC - added [zero] to list of pending drivers
[ 0.190157] udc-core: couldn't find an available UDC - added [g_audio] to list of pending drivers
[ 0.190164] udc-core: couldn't find an available UDC - added [g_ether] to list of pending drivers
[ 0.190859] i2c /dev entries driver
[ 0.192229] sdhci: Secure Digital Host Controller Interface driver
[ 0.192241] sdhci: Copyright(c) Pierre Ossman
[ 0.192620] sdhci-pltfm: SDHCI platform and OF driver helper
[ 0.193936] ledtrig-cpu: registered to indicate activity on CPUs
[ 0.194423] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[ 0.194594] usbcore: registered new interface driver usbhid
[ 0.194601] usbhid: USB HID core driver
[ 0.196936] optee: probing for conduit method.
[ 0.196979] optee: revision 3.14 (e4ca953c)
[ 0.197581] optee: initialized driver
[ 0.200449] NET: Registered protocol family 17
[ 0.200631] 9pnet: Installing 9P2000 support
[ 0.200706] Key type dns_resolver registered
[ 0.201017] Loading compiled-in X.509 certificates
[ 0.220523] ti-sci 44043000.dmsc: ABI: 3.1 (firmware rev 0x0015 '21.5.0--v2021.05 (Terrific Llam')
[ 0.255511] random: fast init done
[ 0.260469] platform 78000000.r5f: configured R5F for remoteproc mode
[ 0.260692] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@a0000000
[ 0.261059] remoteproc remoteproc0: 78000000.r5f is available
[ 0.261307] remoteproc remoteproc0: Direct firmware load for am64-main-r5f0_0-fw failed with error -2
[ 0.261327] remoteproc remoteproc0: powering up 78000000.r5f
[ 0.261369] remoteproc remoteproc0: Direct firmware load for am64-main-r5f0_0-fw failed with error -2
[ 0.261379] remoteproc remoteproc0: request_firmware failed: -2
[ 0.261494] platform 78200000.r5f: configured R5F for remoteproc mode
[ 0.261681] platform 78200000.r5f: assigned reserved memory node r5f-dma-memory@a1000000
[ 0.262016] remoteproc remoteproc1: 78200000.r5f is available
[ 0.263144] remoteproc remoteproc1: Direct firmware load for am64-main-r5f0_1-fw failed with error -2
[ 0.263169] remoteproc remoteproc1: powering up 78200000.r5f
[ 0.263211] remoteproc remoteproc1: Direct firmware load for am64-main-r5f0_1-fw failed with error -2
[ 0.263221] remoteproc remoteproc1: request_firmware failed: -2
[ 0.266413] platform 78400000.r5f: configured R5F for remoteproc mode
[ 0.266636] platform 78400000.r5f: assigned reserved memory node r5f-dma-memory@a2000000
[ 0.267032] remoteproc remoteproc2: 78400000.r5f is available
[ 0.267267] remoteproc remoteproc2: Direct firmware load for am64-main-r5f1_0-fw failed with error -2
[ 0.267281] remoteproc remoteproc2: powering up 78400000.r5f
[ 0.267323] remoteproc remoteproc2: Direct firmware load for am64-main-r5f1_0-fw failed with error -2
[ 0.267334] remoteproc remoteproc2: request_firmware failed: -2
[ 0.267514] platform 78600000.r5f: configured R5F for remoteproc mode
[ 0.267716] platform 78600000.r5f: assigned reserved memory node r5f-dma-memory@a3000000
[ 0.268072] remoteproc remoteproc3: 78600000.r5f is available
[ 0.269324] remoteproc remoteproc3: Direct firmware load for am64-main-r5f1_1-fw failed with error -2
[ 0.269350] remoteproc remoteproc3: powering up 78600000.r5f
[ 0.269394] remoteproc remoteproc3: Direct firmware load for am64-main-r5f1_1-fw failed with error -2
[ 0.269404] remoteproc remoteproc3: request_firmware failed: -2
[ 0.272578] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz
[ 0.274759] pca953x 1-0022: supply vcc not found, using dummy regulator
[ 0.274915] pca953x 1-0022: using AI
[ 0.295436] pca953x 1-0022: failed writing register
[ 0.295626] pca953x: probe of 1-0022 failed with error -121
[ 0.295814] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz
[ 0.296298] ti-sci-intr bus@f4000:bus@4000000:interrupt-controller1: Interrupt Router 5 domain created
[ 0.296468] ti-sci-intr bus@f4000:interrupt-controller0: Interrupt Router 3 domain created
[ 0.296759] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
[ 0.307810] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 0.307865] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 0.307889] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 0.307912] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 0.308947] ti-bcdma 485c0100.dma-controller: Number of rings: 68
[ 0.310280] ti-bcdma 485c0100.dma-controller: Channels: 24 (bchan: 12, tchan: 6, rchan: 6)
[ 0.312298] ti-pktdma 485c0000.dma-controller: Number of rings: 288
[ 0.320052] ti-pktdma 485c0000.dma-controller: Channels: 44 (tchan: 29, rchan: 15)
[ 0.330675] remoteproc remoteproc4: 30034000.pru is available
[ 0.332017] remoteproc remoteproc5: 30004000.rtu is available
[ 0.333205] remoteproc remoteproc6: 3000a000.txpru is available
[ 0.334399] remoteproc remoteproc7: 30038000.pru is available
[ 0.335672] remoteproc remoteproc8: 30006000.rtu is available
[ 0.336867] remoteproc remoteproc9: 3000c000.txpru is available
[ 0.345194] remoteproc remoteproc10: 300b4000.pru is available
[ 0.346218] remoteproc remoteproc11: 30084000.rtu is available
[ 0.347210] remoteproc remoteproc12: 3008a000.txpru is available
[ 0.348331] remoteproc remoteproc13: 300b8000.pru is available
[ 0.349298] remoteproc remoteproc14: 30086000.rtu is available
[ 0.350274] remoteproc remoteproc15: 3008c000.txpru is available
[ 0.391395] davinci_mdio 300b2400.mdio: davinci mdio revision 1.7, bus freq 1000000
[ 0.391419] libphy: 300b2400.mdio: probed
[ 0.408741] davinci_mdio 300b2400.mdio: phy[3]: device 300b2400.mdio:03, driver TI DP83869
[ 0.408765] davinci_mdio 300b2400.mdio: phy[15]: device 300b2400.mdio:0f, driver TI DP83869
[ 0.410296] 4a10000.serial: ttyS1 at MMIO 0x4a10000 (irq = 15, base_baud = 6000000) is a 8250
[ 0.411974] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 17, base_baud = 3000000) is a 8250
[ 2.273656] printk: console [ttyS2] enabled
[ 2.280751] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
[ 2.287702] spi-nor: probe of spi0.0 failed with error -2
[ 2.339393] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[ 2.346991] libphy: 8000f00.mdio: probed
[ 2.356256] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83869
[ 2.364501] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002
[ 2.378172] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 16
[ 2.384883] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4
[ 2.392031] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
[ 2.398628] pps pps0: new PPS source ptp0
[ 2.403059] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
[ 2.413296] am65-cpsw-nuss 8000000.ethernet: devlink port type for port 2 set to Ethernet without a software interface reference, device type not supported by the kernel?
[ 2.430597] am65-cpts 39000000.cpts: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
[ 2.476842] icssg-prueth icssg1-eth: TI PRU ethernet driver initialized: dual EMAC mode
[ 2.487972] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[ 2.493532] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[ 2.501533] xhci-hcd xhci-hcd.0.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000002000010010
[ 2.510975] xhci-hcd xhci-hcd.0.auto: irq 344, io mem 0x0f410000
[ 2.518045] hub 1-0:1.0: USB hub found
[ 2.521846] hub 1-0:1.0: 1 port detected
[ 2.526092] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[ 2.531594] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[ 2.539266] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
[ 2.545873] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[ 2.554601] hub 2-0:1.0: USB hub found
[ 2.558391] hub 2-0:1.0: 1 port detected
[ 2.565814] sdhci-am654 fa00000.mmc: parsing dt failed (-517)
[ 2.571783] mmc0: CQHCI version 5.10
[ 2.584201] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.591705] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.599827] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.607926] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.618978] sdhci-am654 fa00000.mmc: Got CD GPIO
[ 2.623927] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.623935] mmc1: CQHCI version 5.10
[ 2.627458] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[ 2.631409] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.650490] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.658600] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.669310] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.672223] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[ 2.676797] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.692325] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.700433] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.711152] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.718608] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.726709] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.734805] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.735016] mmc1: new ultra high speed SDR104 SDHC card at address aaaa
[ 2.744496] debugfs: Directory 'pd:114' with parent 'pm_genpd' already present!
[ 2.750845] mmcblk1: mmc1:aaaa SC16G 14.8 GiB
[ 2.761861] mmc0: Command Queue Engine enabled
[ 2.766347] mmc0: new high speed MMC card at address 0001
[ 2.773780] mmcblk0: mmc0:0001 8GTF4R 7.28 GiB
[ 2.778547] mmcblk1: p1 p2
[ 2.782952] mmcblk0boot0: mmc0:0001 8GTF4R partition 1 4.00 MiB
[ 2.789182] mmcblk0boot1: mmc0:0001 8GTF4R partition 2 4.00 MiB
[ 2.796349] ALSA device list:
[ 2.797792] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.799333] No soundcards found.
[ 2.806850] mmcblk0rpmb: mmc0:0001 8GTF4R partition 3 512 KiB, chardev (236:0)
[ 2.817542] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.825698] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.833807] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.848828] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 2.856469] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 2.864716] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 2.872911] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
[ 2.881094] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[ 2.894434] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
[ 2.902626] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 2.911205] devtmpfs: mounted
[ 2.915731] Freeing unused kernel memory: 1984K
[ 2.920393] Run /sbin/init as init process
[ 3.009962] EXT4-fs (mmcblk1p2): re-mounted. Opts: (null)
[ 3.041383] hub 1-1:1.0: USB hub found
[ 3.045532] hub 1-1:1.0: 4 ports detected
[ 3.054256] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
[ 3.061875] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000
[ 3.070180] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000
[ 3.078476] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
Initializing random number generator: OK
Saving random seed: [ 3.246072] random: dd: uninitialized urandom read (512 bytes read)
OK
Starting system message bus: [ 3.291728] random: dbus-uuidgen: uninitialized urandom read (12 bytes read)
[ 3.298951] random: dbus-uuidgen: uninitialized urandom read (8 bytes read)
done
Starting network: OK
Welcome to Buildroot
buildroot login: