This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/AM5718: PRU Ethernet does not work

Part Number: AM5718
Other Parts Discussed in Thread: DP83822I, TLK105L

Tool/software: Linux

We have used the AM5718 processor for our project & faced the PRU not working issue during the kernel booting up. Here have attached the kernel booting log file for your reference. Could you check & help us to resolve this issue.

Platform Details: 

Processor:
AM5718
Ethernet IC: DP83822I
DDR3: 512MB

LogFile: 

U-Boot SPL 2018.01-00569-gfd38f5a-dirty (May 31 2019 - 11:10:02)
DRA722-GP ES2.0
SPL: 355 Trying to boot from MMC1
no pinctrl state for default mode
no pinctrl state for default mode
spl_load_image_fat_os: error reading image args, err - -2
CONFIG_SPL_LIBCOMMON_SUPPORT


U-Boot 2018.01-00569-gfd38f5a-dirty (May 31 2019 - 11:10:02 +0530)

CPU  : DRA722-GP ES2.0
Model: TI AM5728 IDK
Board: AM571x IDK REV 1.3B
DRAM:  512 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
GUID Partition Table Header signature is wrong: 0x0 != 0x5452415020494645
part_get_info_efi: *** ERROR: Invalid GPT ***
GUID Partition Table Header signature is wrong: 0x0 != 0x5452415020494645
part_get_info_efi: *** ERROR: Invalid Backup GPT ***
SCSI:  SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst 
scanning bus for devices...
Found 0 device(s).
Net:   Could not get PHY for ethernet@48484000: addr 0

Warning: ethernet@48484000 using MAC address from ROM
eth0: ethernet@48484000
Hit any key to stop autoboot:  0 
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
** Unable to read file boot.scr **
1490 bytes read in 3 ms (484.4 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc0 ...
Running uenvcmd ...
1 bytes read in 2 ms (0 Bytes/s)
Already setup.
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
4071936 bytes read in 192 ms (20.2 MiB/s)
97324 bytes read in 22 ms (4.2 MiB/s)
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Device Tree to 8ffe5000, end 8ffffc2b ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.14.79-ge669d52447 (firmware@firmware-E7450) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #20 SMP PREEMPT Sat Jun 1 15:45:48 IST 2019
[    0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=30c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: TI AM571x IDK-LCD-OSD-Display
[    0.000000] Memory policy: Data cache writealloc


[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000095800000, size 56 MiB
[    0.000000] OF: reserved mem: initialized node ipu2-memory@95800000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000099000000, size 64 MiB
[    0.000000] OF: reserved mem: initialized node dsp1-memory@99000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created CMA memory pool at 0x000000009d000000, size 32 MiB
[    0.000000] OF: reserved mem: initialized node ipu1-memory@9d000000, compatible id shared-dma-pool
[    0.000000] cma: Reserved 24 MiB at 0x0000000094000000
[    0.000000] OMAP4: Map 0x000000009fd00000 to fe600000 for dram barrier
[    0.000000] DRA722 ES2.0
[    0.000000] percpu: Embedded 15 pages/cpu @dfc3d000 s31372 r8192 d21876 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129158
[    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=30b8cffd-02 rw rootfstype=ext4 rootwait
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 320120K/521216K available (8192K kernel code, 349K rwdata, 2604K rodata, 2048K init, 283K bss, 20872K reserved, 180224K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xe0000000 - 0xff800000   ( 504 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xdfd00000   ( 509 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0a00000   (10208 kB)
[    0.000000]       .init : 0xc0e00000 - 0xc1000000   (2048 kB)
[    0.000000]       .data : 0xc1000000 - 0xc1057658   ( 350 kB)
[    0.000000]        .bss : 0xc1059000 - 0xc109ffa0   ( 284 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  RCU restricting CPUs from NR_CPUS=2 to nr_cpu_ids=1.
[    0.000000]  Tasks RCU enabled.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] OMAP clockevent source: timer1 at 32786 Hz
[    0.000000] arch_timer: cp15 timer(s) running at 6.14MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x16af5adb9, max_idle_ns: 440795202250 ns
[    0.000005] sched_clock: 56 bits at 6MHz, resolution 162ns, wraps every 4398046511023ns
[    0.000017] Switching to timer-based delay loop, resolution 162ns
[    0.000347] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
[    0.000356] OMAP clocksource: 32k_counter at 32768 Hz
[    0.000807] Console: colour dummy device 80x30
[    0.000825] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
[    0.000832] This ensures that you still see kernel messages. Please
[    0.000838] update your kernel commandline.
[    0.000857] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.29 BogoMIPS (lpj=61475)
[    0.000872] pid_max: default: 32768 minimum: 301
[    0.000989] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001001] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001535] CPU: Testing write buffer coherency: ok
[    0.001575] CPU0: Spectre v2: using ICIALLU workaround
[    0.001773] /cpus/cpu@0 missing clock-frequency property
[    0.001787] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.039849] Setting up static identity map for 0x80200000 - 0x80200060
[    0.059855] Hierarchical SRCU implementation.
[    0.080041] EFI services will not be available.
[    0.099914] smp: Bringing up secondary CPUs ...
[    0.099924] smp: Brought up 1 node, 1 CPU
[    0.099934] SMP: Total of 1 processors activated (12.29 BogoMIPS).
[    0.099941] CPU: All CPU(s) started in HYP mode.
[    0.099948] CPU: Virtualization extensions available.
[    0.100352] devtmpfs: initialized
[    0.118601] random: get_random_u32 called from bucket_table_alloc+0x108/0x230 with crng_init=0
[    0.120063] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[    0.120272] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.120290] futex hash table entries: 256 (order: 2, 16384 bytes)
[    0.124126] pinctrl core: initialized pinctrl subsystem
[    0.124622] DMI not present or invalid.
[    0.124859] NET: Registered protocol family 16
[    0.130806] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.131687] omap_hwmod: l3_main_2 using broken dt data from ocp
[    0.324387] cpuidle: using governor ladder
[    0.324421] cpuidle: using governor menu
[    0.332429] OMAP GPIO hardware version 0.1
[    0.359314] No ATAGs?
[    0.359363] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.359377] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.359764] omap4_sram_init:Unable to allocate sram needed to handle errata I688
[    0.359775] omap4_sram_init:Unable to get sram pool needed to handle errata I688
[    0.360352] OMAP DMA hardware revision 0.0
[    0.392442] edma 43300000.edma: memcpy is disabled
[    0.395726] edma 43300000.edma: TI EDMA DMA engine driver
[    0.402775] omap-dma-engine 4a056000.dma-controller: OMAP DMA engine driver (LinkedList1/2/3 supported)
[    0.406242] omap-iommu 40d01000.mmu: 40d01000.mmu registered
[    0.406451] omap-iommu 40d02000.mmu: 40d02000.mmu registered
[    0.406694] omap-iommu 58882000.mmu: 58882000.mmu registered
[    0.406942] omap-iommu 55082000.mmu: 55082000.mmu registered
[    0.407256] iommu: Adding device 58820000.ipu to group 1
[    0.407350] iommu: Adding device 55020000.ipu to group 2
[    0.407500] iommu: Adding device 40800000.dsp to group 0
[    0.410069] palmas 0-0058: Irq flag is 0x00000004
[    0.432815] palmas 0-0058: Muxing GPIO 2b, PWM 0, LED 0
[    0.434428] SMPS12: supplied by regulator-dummy
[    0.436159] SMPS3: supplied by VMAIN
[    0.437702] SMPS45: supplied by regulator-dummy
[    0.439515] SMPS6: supplied by VMAIN
[    0.441206] SMPS7: supplied by VMAIN
[    0.443136] SMPS8: supplied by VMAIN
[    0.443472] smps8: Bringing 0uV into 3300000-3300000uV
[    0.445021] random: fast init done
[    0.445340] SMPS9: supplied by VMAIN
[    0.446325] LDO1: supplied by VMAIN
[    0.451274] LDO2: supplied by VMAIN
[    0.461140] LDO3: supplied by VMAIN
[    0.471151] LDO4: supplied by VMAIN
[    0.481155] LDO5: supplied by regulator-dummy
[    0.481866] LDO6: supplied by regulator-dummy
[    0.482573] LDO7: supplied by regulator-dummy
[    0.483264] LDO8: supplied by regulator-dummy
[    0.483986] LDO9: supplied by VMAIN
[    0.491494] LDOLN: supplied by VMAIN
[    0.501214] LDOUSB: supplied by VMAIN
[    0.514273] omap_i2c 48070000.i2c: bus 0 rev0.12 at 400 kHz
[    0.514489] media: Linux media interface: v0.10
[    0.514527] Linux video capture interface: v2.00
[    0.514608] pps_core: LinuxPPS API ver. 1 registered
[    0.514618] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.514638] PTP clock support registered
[    0.514667] EDAC MC: Ver: 3.0.0
[    0.520686] dmi: Firmware registration failed.
[    0.521125] omap-mailbox 48840000.mailbox: omap mailbox rev 0x400
[    0.521329] omap-mailbox 48842000.mailbox: omap mailbox rev 0x400
[    0.521708] Advanced Linux Sound Architecture Driver Initialized.
[    0.530764] clocksource: Switched to clocksource arch_sys_counter
[    0.538348] NET: Registered protocol family 2
[    0.538889] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.538928] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
[    0.538996] TCP: Hash tables configured (established 4096 bind 4096)
[    0.539053] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.539075] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.539180] NET: Registered protocol family 1
[    0.559541] RPC: Registered named UNIX socket transport module.
[    0.559552] RPC: Registered udp transport module.
[    0.559559] RPC: Registered tcp transport module.
[    0.559567] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.560500] hw perfevents: no interrupt-affinity property for /pmu, guessing.
[    0.560629] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
[    0.561727] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.565895] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.576447] NFS: Registering the id_resolver key type
[    0.576473] Key type id_resolver registered
[    0.576482] Key type id_legacy registered
[    0.576520] ntfs: driver 2.1.32 [Flags: R/O].
[    0.578165] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[    0.578178] io scheduler noop registered
[    0.578187] io scheduler deadline registered
[    0.578286] io scheduler cfq registered (default)
[    0.578297] io scheduler mq-deadline registered
[    0.578306] io scheduler kyber registered
[    0.582969] pinctrl-single 4a003400.pinmux: 282 pins at pa fc003400 size 1128
[    0.583127] pinctrl-single 4a002e8c.pinmux: please update dts to use #pinctrl-cells = <1>
[    0.583203] pinctrl-single 4a002e8c.pinmux: initialized with no interrupts
[    0.583215] pinctrl-single 4a002e8c.pinmux: 1 pins at pa fc002e8c size 4
[    0.597165] pwm-backlight backlight: backlight supply power not found, using dummy regulator
[    0.599678] V3_3D: supplied by smps9
[    0.599943] vtt_fixed: supplied by V3_3D
[    0.642999] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
[    0.645739] 4806a000.serial: ttyS0 at MMIO 0x4806a000 (irq = 43, base_baud = 3000000) is a 8250
[    1.608640] console [ttyS0] enabled
[    1.614103] omap_rng 48090000.rng: Random Number Generator ver. 20
[    1.621233] DSS: OMAP DSS rev 6.1
[    1.626265] omapdss_dss 58000000.dss: bound 58001000.dispc (ops dispc_component_ops)
[    1.634767] omapdss_dss 58000000.dss: bound 58040000.encoder (ops hdmi5_component_ops)
[    1.645733] panel-dpi display: display supply vcc not found, using dummy regulator
[    1.663917] brd: module loaded
[    1.672550] loop: module loaded
[    1.679484] libphy: Fixed MDIO Bus: probed
[    1.740788] davinci_mdio 48485000.mdio: davinci mdio revision 1.6, bus freq 1000000
[    1.748483] davinci_mdio 48485000.mdio: detected phy mask 0
[    1.831382] libphy: 48485000.mdio: probed
[    1.835417] davinci_mdio 48485000.mdio: phy[0]: device 48485000.mdio:00, driver unknown
[    1.843569] davinci_mdio 48485000.mdio: phy[1]: device 48485000.mdio:01, driver unknown
[    1.851657] davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02, driver unknown
[    1.859697] davinci_mdio 48485000.mdio: phy[3]: device 48485000.mdio:03, driver unknown
[    1.867780] davinci_mdio 48485000.mdio: phy[4]: device 48485000.mdio:04, driver unknown
[    1.875854] davinci_mdio 48485000.mdio: phy[5]: device 48485000.mdio:05, driver unknown
[    1.883909] davinci_mdio 48485000.mdio: phy[6]: device 48485000.mdio:06, driver unknown
[    1.891962] davinci_mdio 48485000.mdio: phy[7]: device 48485000.mdio:07, driver unknown
[    1.900000] davinci_mdio 48485000.mdio: phy[8]: device 48485000.mdio:08, driver unknown
[    1.908051] davinci_mdio 48485000.mdio: phy[9]: device 48485000.mdio:09, driver unknown
[    1.916103] davinci_mdio 48485000.mdio: phy[10]: device 48485000.mdio:0a, driver unknown
[    1.924241] davinci_mdio 48485000.mdio: phy[11]: device 48485000.mdio:0b, driver unknown
[    1.932379] davinci_mdio 48485000.mdio: phy[12]: device 48485000.mdio:0c, driver unknown
[    1.940504] davinci_mdio 48485000.mdio: phy[13]: device 48485000.mdio:0d, driver unknown
[    1.949083] davinci_mdio 48485000.mdio: phy[14]: device 48485000.mdio:0e, driver unknown
[    1.957225] davinci_mdio 48485000.mdio: phy[15]: device 48485000.mdio:0f, driver unknown
[    1.965365] davinci_mdio 48485000.mdio: phy[16]: device 48485000.mdio:10, driver unknown
[    1.973503] davinci_mdio 48485000.mdio: phy[17]: device 48485000.mdio:11, driver unknown
[    1.981641] davinci_mdio 48485000.mdio: phy[18]: device 48485000.mdio:12, driver unknown
[    1.989767] davinci_mdio 48485000.mdio: phy[19]: device 48485000.mdio:13, driver unknown
[    1.997905] davinci_mdio 48485000.mdio: phy[20]: device 48485000.mdio:14, driver unknown
[    2.006044] davinci_mdio 48485000.mdio: phy[21]: device 48485000.mdio:15, driver unknown
[    2.014184] davinci_mdio 48485000.mdio: phy[22]: device 48485000.mdio:16, driver unknown
[    2.022322] davinci_mdio 48485000.mdio: phy[23]: device 48485000.mdio:17, driver unknown
[    2.030448] davinci_mdio 48485000.mdio: phy[24]: device 48485000.mdio:18, driver unknown
[    2.038587] davinci_mdio 48485000.mdio: phy[25]: device 48485000.mdio:19, driver unknown
[    2.046724] davinci_mdio 48485000.mdio: phy[26]: device 48485000.mdio:1a, driver unknown
[    2.054861] davinci_mdio 48485000.mdio: phy[27]: device 48485000.mdio:1b, driver unknown
[    2.062999] davinci_mdio 48485000.mdio: phy[28]: device 48485000.mdio:1c, driver unknown
[    2.071137] davinci_mdio 48485000.mdio: phy[29]: device 48485000.mdio:1d, driver unknown
[    2.079263] davinci_mdio 48485000.mdio: phy[30]: device 48485000.mdio:1e, driver unknown
[    2.087424] davinci_mdio 48485000.mdio: phy[31]: device 48485000.mdio:1f, driver unknown
[    2.096362] cpsw 48484000.ethernet: Detected MACID = 30:45:11:cb:3b:ac
[    2.103005] cpsw 48484000.ethernet: initialized cpsw ale version 1.4
[    2.109387] cpsw 48484000.ethernet: ALE Table size 1024
[    2.114660] cpsw 48484000.ethernet: device node lookup for pps timer failed
[    2.121701] cpsw 48484000.ethernet: cpts: overflow check period 500 (jiffies)
[    2.129608] cpsw 48484000.ethernet: cpsw: Detected MACID = 30:45:11:cb:3b:ad
[    2.138410] i2c /dev entries driver
[    2.142700] IR NEC protocol handler initialized
[    2.147252] IR RC5(x/sz) protocol handler initialized
[    2.152370] IR RC6 protocol handler initialized
[    2.156919] IR JVC protocol handler initialized
[    2.161503] IR Sony protocol handler initialized
[    2.166139] IR SANYO protocol handler initialized
[    2.170877] IR Sharp protocol handler initialized
[    2.175600] IR MCE Keyboard/mouse protocol handler initialized
[    2.181468] IR XMP protocol handler initialized
[    2.191776] sdhci: Secure Digital Host Controller Interface driver
[    2.197986] sdhci: Copyright(c) Pierre Ossman
[    2.203525] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.209970] sdhci-omap 4809c000.mmc: Got CD GPIO
[    2.215403] sdhci-omap 4809c000.mmc: no pinctrl state for ddr_1_8v mode
[    2.222083] sdhci-omap 4809c000.mmc: no pinctrl state for hs200_1_8v mode
[    2.280986] mmc0: SDHCI controller on 4809c000.mmc [4809c000.mmc] using ADMA
[    2.328252] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.338413] mmc0: new high speed SDHC card at address 59b4
[    2.344309] mmcblk0: mmc0:59b4 00000 14.9 GiB 
[    2.350326]  mmcblk0: p1 p2
[    2.353165] mmc1: SDHCI controller on 480b4000.mmc [480b4000.mmc] using ADMA
[    2.354492] ledtrig-cpu: registered to indicate activity on CPUs
[    2.356413] omap-rproc 58820000.ipu: assigned reserved memory node ipu1-memory@9d000000
[    2.356467] remoteproc remoteproc0: 58820000.ipu is available
[    2.356656] omap-rproc 55020000.ipu: assigned reserved memory node ipu2-memory@95800000
[    2.356705] remoteproc remoteproc1: 55020000.ipu is available
[    2.356928] omap-rproc 40800000.dsp: assigned reserved memory node dsp1-memory@99000000
[    2.356978] remoteproc remoteproc2: 40800000.dsp is available
[    2.360306] pruss 4b200000.pruss: creating PRU cores and other child platform devices
[    2.375501] pruss 4b280000.pruss: creating PRU cores and other child platform devices
[    2.435287] davinci_mdio 4b2b2400.mdio: davinci mdio revision 1.6, bus freq 1000000
[    2.435292] libphy: 4b2b2400.mdio: probed
[    2.447182] davinci_mdio: probe of 4b2b2400.mdio failed with error -5
[    2.448923] remoteproc remoteproc3: 4b234000.pru is available
[    2.448973] pru-rproc 4b234000.pru: PRU rproc node /ocp/pruss_soc_bus@4b226004/pruss@0/pru@34000 probed successfully
[    2.449214] remoteproc remoteproc4: 4b238000.pru is available
[    2.449250] pru-rproc 4b238000.pru: PRU rproc node /ocp/pruss_soc_bus@4b226004/pruss@0/pru@38000 probed successfully
[    2.449493] remoteproc remoteproc5: 4b2b4000.pru is available
[    2.449534] pru-rproc 4b2b4000.pru: PRU rproc node /ocp/pruss_soc_bus@4b2a6004/pruss@0/pru@34000 probed successfully
[    2.449762] remoteproc remoteproc6: 4b2b8000.pru is available
[    2.449802] pru-rproc 4b2b8000.pru: PRU rproc node /ocp/pruss_soc_bus@4b2a6004/pruss@0/pru@38000 probed successfully
[    2.458065] NET: Registered protocol family 10
[    2.475199] Segment Routing with IPv6
[    2.475244] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    2.475628] NET: Registered protocol family 17
[    2.475813] Key type dns_resolver registered
[    2.475917] omap_voltage_late_init: Voltage driver support not added
[    2.475920] Power Management for TI OMAP4+ devices.
[    2.476135] Registering SWP/SWPB emulation handler
[    2.575888] remoteproc remoteproc0: Direct firmware load for dra7-ipu1-fw.xem4 failed with error -2
[    2.585148] remoteproc remoteproc0: powering up 58820000.ipu
[    2.592032] remoteproc remoteproc0: Direct firmware load for dra7-ipu1-fw.xem4 failed with error -2
[    2.603199] remoteproc remoteproc0: request_firmware failed: -2
[    2.609281] remoteproc remoteproc1: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
[    2.618499] remoteproc remoteproc1: powering up 55020000.ipu
[    2.624355] remoteproc remoteproc1: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
[    2.633576] remoteproc remoteproc1: request_firmware failed: -2
[    2.639654] remoteproc remoteproc2: Direct firmware load for dra7-dsp1-fw.xe66 failed with error -2
[    2.648875] remoteproc remoteproc2: powering up 40800000.dsp
[    2.654733] remoteproc remoteproc2: Direct firmware load for dra7-dsp1-fw.xe66 failed with error -2
[    2.663956] remoteproc remoteproc2: request_firmware failed: -2
[    2.674224] dmm 4e000000.dmm: workaround for errata i878 in use
[    2.681512] dmm 4e000000.dmm: initialized all PAT entries
[    2.711912] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    2.718557] [drm] No driver support for vblank timestamp query.
[    2.736513] [drm] Enabling DMM ywrap scrolling
[    2.759675] ti-iodelay 4844a000.padconf: Set reg 0x18c Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759682] ti-iodelay 4844a000.padconf: Set reg 0x1a4 Delay(a: 119 g: 0), Elements(C=0 F=3)0x29003
[    2.759688] ti-iodelay 4844a000.padconf: Set reg 0x1b0 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759694] ti-iodelay 4844a000.padconf: Set reg 0x1bc Delay(a: 18 g: 0), Elements(C=0 F=0)0x29000
[    2.759699] ti-iodelay 4844a000.padconf: Set reg 0x1c8 Delay(a: 894 g: 0), Elements(C=1 F=11)0x2902b
[    2.759704] ti-iodelay 4844a000.padconf: Set reg 0x1d4 Delay(a: 30 g: 0), Elements(C=0 F=0)0x29000
[    2.759710] ti-iodelay 4844a000.padconf: Set reg 0x1e0 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759714] ti-iodelay 4844a000.padconf: Set reg 0x1ec Delay(a: 23 g: 0), Elements(C=0 F=0)0x29000
[    2.759720] ti-iodelay 4844a000.padconf: Set reg 0x1f8 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759724] ti-iodelay 4844a000.padconf: Set reg 0x360 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759729] ti-iodelay 4844a000.padconf: Set reg 0x194 Delay(a: 152 g: 0), Elements(C=0 F=4)0x29004
[    2.759734] ti-iodelay 4844a000.padconf: Set reg 0x1ac Delay(a: 206 g: 0), Elements(C=0 F=5)0x29005
[    2.759739] ti-iodelay 4844a000.padconf: Set reg 0x1b8 Delay(a: 78 g: 0), Elements(C=0 F=2)0x29002
[    2.759744] ti-iodelay 4844a000.padconf: Set reg 0x1c4 Delay(a: 2 g: 0), Elements(C=0 F=0)0x29000
[    2.759749] ti-iodelay 4844a000.padconf: Set reg 0x1d0 Delay(a: 266 g: 0), Elements(C=0 F=7)0x29007
[    2.759754] ti-iodelay 4844a000.padconf: Set reg 0x1dc Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759759] ti-iodelay 4844a000.padconf: Set reg 0x1e8 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759764] ti-iodelay 4844a000.padconf: Set reg 0x1f4 Delay(a: 43 g: 0), Elements(C=0 F=1)0x29001
[    2.759769] ti-iodelay 4844a000.padconf: Set reg 0x200 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759773] ti-iodelay 4844a000.padconf: Set reg 0x368 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759778] ti-iodelay 4844a000.padconf: Set reg 0x190 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759783] ti-iodelay 4844a000.padconf: Set reg 0x1a8 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759788] ti-iodelay 4844a000.padconf: Set reg 0x1b4 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759792] ti-iodelay 4844a000.padconf: Set reg 0x1c0 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759797] ti-iodelay 4844a000.padconf: Set reg 0x1d8 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759802] ti-iodelay 4844a000.padconf: Set reg 0x1e4 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759806] ti-iodelay 4844a000.padconf: Set reg 0x1f0 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759811] ti-iodelay 4844a000.padconf: Set reg 0x1fc Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.759815] ti-iodelay 4844a000.padconf: Set reg 0x364 Delay(a: 0 g: 0), Elements(C=0 F=0)0x29000
[    2.760239] mmc1: new DDR MMC card at address 0001
[    2.760502] mmcblk1: mmc1:0001 DG4032 29.1 GiB 
[    2.760618] mmcblk1boot0: mmc1:0001 DG4032 partition 1 4.00 MiB
[    2.760725] mmcblk1boot1: mmc1:0001 DG4032 partition 2 4.00 MiB
[    2.760852] mmcblk1rpmb: mmc1:0001 DG4032 partition 3 4.00 MiB
[    2.761578]  mmcblk1:
[    2.825932] Console: switching to colour frame buffer device 240x75
[    3.137911] omapdrm omapdrm.0: fb0: omapdrm frame buffer device
[    3.144481] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0
[    3.152552] prueth pruss2_eth: port 1: using random MAC addr: 82:3d:3d:de:84:93
[    3.160416] hctosys: unable to open rtc device (rtc0)
[    3.166016] ALSA device list:
[    3.168993]   No soundcards found.
[    3.967382] EXT4-fs (mmcblk0p2): recovery complete
[    3.975726] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    3.984022] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    3.995116] devtmpfs: mounted
[    3.999381] Freeing unused kernel memory: 2048K
[    4.301117] systemd[1]: System time before build time, advancing clock.
[    4.349490] systemd[1]: systemd 234 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -ID)
[    4.371308] systemd[1]: Detected architecture arm.

Welcome to Arago 2018.10!

[    4.401758] systemd[1]: Set hostname to <am57xx-evm>.
[    4.811879] random: systemd: uninitialized urandom read (16 bytes read)
[    4.820178] systemd[1]: Created slice System Slice.
[  OK  ] Created slice System Slice.
[    4.851183] random: systemd: uninitialized urandom read (16 bytes read)
[    4.858434] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[  OK  ] Listening on /dev/initctl Compatibility Named Pipe.
[    4.901063] random: systemd: uninitialized urandom read (16 bytes read)
[    4.909196] systemd[1]: Created slice system-serial\x2dgetty.slice.
[  OK  ] Created slice system-serial\x2dgetty.slice.
[    4.940864] systemd[1]: Reached target Swap.
[  OK  ] Reached target Swap.
[    4.971491] systemd[1]: Listening on udev Control Socket.
[  OK  ] Listening on udev Control Socket.
[    5.007169] systemd[1]: Listening on Process Core Dump Socket.
[  OK  ] Listening on Process Core Dump Socket.
[    5.042466] systemd[1]: Created slice User and Session Slice.
[  OK  ] Created slice User and Session Slice.
[  OK  ] Reached target Remote File Systems.
         Mounting Temporary Directory (/tmp)...
[  OK  ] Listening on Journal Socket.
         Starting Load Kernel Modules...
         Mounting Kernel Debug File System...
[  OK  ] Started Dispatch Password Requests to Console Directory Watch.
[  OK  ] Listening on Syslog Socket.
[  OK  ] Listening on Journal Socket (/dev/log).
         Starting Journal Service...
[  OK  ] Listening on Network Service Netlink Socket.
[  OK  ] Listening on udev Kernel Socket.
         Mounting POSIX Message Queue File System...
[  OK  ] Created slice system-getty.slice.
[  OK  ] Started Forward Password Requests to Wall Directory Watch.
[  OK  ] Reached target Paths.
         Starting Remount Root and Kernel File Systems...
[  OK  ] Reached target Slices.
[    5.517122] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[  OK  ] Mounted Kernel Debug File System.
[  OK  ] Mounted POSIX Message Queue File System.
[  OK  ] Mounted Temporary Directory (/tmp).
[  OK  ] Started Journal Service.
[FAILED] Failed to start Load Kernel Modules.
See 'systemctl status systemd-modules-load.service' for details.
[  OK  ] Started Remount Root and Kernel File Systems.
         Starting Create System Users...
         Starting Rebuild Hardware Database...
         Starting Apply Kernel Variables...
         Mounting Kernel Configuration File System...
         Starting Flush Journal to Persistent Storage...
[  OK  ] Mounted Kernel Configuration File System.
[  OK  ] Started Create System Users.
[  OK  ] Started Apply Kernel Variables.
[    6.007522] systemd-journald[105]: Received request to flush runtime journal from PID 1
         Starting Create Static Device Nodes in /dev...
[  OK  ] Started Flush Journal to Persistent Storage.
[  OK  ] Started Create Static Device Nodes in /dev.
[  OK  ] Reached target Local File Systems (Pre).
         Mounting /media/ram...
         Mounting /var/volatile...
         Starting udev Kernel Device Manager...
[  OK  ] Mounted /var/volatile.
[  OK  ] Mounted /media/ram.
         Starting Load/Save Random Seed...
[  OK  ] Reached target Local File Systems.
         Starting Create Volatile Files and Directories...
         Starting Rebuild Dynamic Linker Cache...
         Starting Rebuild Journal Catalog...
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Started Load/Save Random Seed.
[  OK  ] Started Create Volatile Files and Directories.
[  OK  ] Started Rebuild Journal Catalog.
         Starting Update UTMP about System Boot/Shutdown...
         Starting Network Time Synchronization...
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Started Rebuild Dynamic Linker Cache.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Time Synchronized.
[  OK  ] Started Rebuild Hardware Database.
         Starting Update is Completed...
         Starting udev Coldplug all Devices...
[  OK  ] Started Update is Completed.
[  OK  ] Started udev Coldplug all Devices.
[  OK  ] Reached target System Initialization.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Started Daily rotation of log files.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Listening on dropbear.socket.
[  OK  ] Listening on RPCbind Server Activation Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
[  OK  ] Started System Logging Service.
[  OK  ] Started Kernel Logging Service.
         Starting TI IPC Daemon...
         Starting uim-sysfs.service...
[  OK  ] Reached target Containers.
[  OK  ] Started Job spooling tools.
[  OK  ] Started D-Bus System Message Bus.
         Starting RPC Bind Service...
         Starting Avahi mDNS/DNS-SD Stack...
         Starting Print notice about GPLv3 packages...
[  OK  ] Started Periodic Command Scheduler.
         Starting Login Service...
         Starting Network Service...
         Starting TI MultiCore Tools Daemon...
[  OK  ] Started Hardware RNG Entropy Gatherer Daemon.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target Timers.
[  OK  ] Started TI IPC Daemon.
[  OK  ] Started RPC Bind Service.
[  OK  ] Found device /dev/ttyS0.
[    9.992103] random: crng init done
[   10.038860] random: 7 urandom warning(s) missed due to ratelimiting
[  OK  ] Started Network Service.
[   10.233807] net eth1: initializing cpsw version 1.15 (0)
[FAILED] Failed to start TI MultiCore Tools Daemon.
See 'systemctl status ti-mct-daemon.service' for details.
[   10.340722] prueth pruss2_eth: port 1: using random MAC addr: 0a:6a:14:07:2f:1c
[   10.357902] Generic PHY 48485000.mdio:01: attached PHY driver [Generic PHY] (mii_bus:phy_addr=48485000.mdio:01, irq=POLL)
[   10.438516] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[   10.566336] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
[   10.860984] net eth0: initializing cpsw version 1.15 (0)
[   10.908491] prueth pruss2_eth: port 1: using random MAC addr: 56:f7:51:b2:e2:02
[   10.965423] Generic PHY 48485000.mdio:00: attached PHY driver [Generic PHY] (mii_bus:phy_addr=48485000.mdio:00, irq=POLL)
[   11.065036] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  OK  ] Started Login Service.
[  OK  ] Found device /dev/ttyS2.
[  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
[  OK  ] Created slice system-systemd\x2dbacklight.slice.
         Starting Load/Save Screen Backlight…ightness of backlight:backlight...
         Starting Wait for Network to be Configured...
[  OK  ] Reached target Network.
         Starting Enable and configure wl18xx bluetooth stack...
         Starting Lightning Fast Webserver With Light System Requirements...
         Starting Simple Network Management Protocol (SNMP) Daemon....
         Starting Permit User Sessions...
[  OK  ] Started Redis In-Memory Data Store.
         Starting Network Name Resolution...
[  OK  ] Started Load/Save Screen Backlight Brightness of backlight:backlight.
[  OK  ] Started Enable and configure wl18xx bluetooth stack.
[  OK  ] Started Lightning Fast Webserver With Light System Requirements.
[  OK  ] Started Permit User Sessions.
[  OK  ] Started uim-sysfs.service.
[  OK  ] Started Network Name Resolution.
[  OK  ] Started Simple Network Management Protocol (SNMP) Daemon..
[  OK  ] Reached target Host and Network Name Lookups.
[  OK  ] Started NFS status monitor for NFSv2/3 locking..
         Starting rc.pvr.service...
[  OK  ] Started Getty on tty1.
[  OK  ] Started Serial Getty on ttyS0.
[  OK  ] Started Serial Getty on ttyS2.
[  OK  ] Reached target Login Prompts.
         Starting Synchronize System and HW clocks...
[FAILED] Failed to start Synchronize System and HW clocks.
See 'systemctl status sync-clocks.service' for details.
[  OK  ] Started rc.pvr.service.
         Starting weston.service...
***************************************************************
***************************************************************
NOTICE: This file system contains the following GPLv3 packages:
        autoconf
        bash-dev
        bash
        binutils-dev
        binutils
        bison-dev
        bison
        cifs-utils
        cpio
        cpp-symlinks
        cpp
        dosfstools
        elfutils-dev
        elfutils
        findutils
        g++-symlinks
        g++
        gawk
        gcc-symlinks
        gcc
        gdb
        gdbc6x
        gdbserver
        gettext
        glmark2
        gstreamer1.0-libav
        gzip
        hidapi
        libasm1
        libcairo-perf-utils
        libdw1
        libelf1
        libgdbm-compat4
        libgdbm-dev
        libgdbm4
        libgettextlib
        libgettextsrc
        libgmp10
        libidn11
        libmavconn
        libmpc3
        libmpfr4
        libreadline-dev
        libreadline7
        libunistring2
        m4-dev
        m4
        make
        mavlink
        mavros-extras
        mavros-msgs
        mavros
        nettle
        parted
        python3-pycairo
        socketcan-interface
        swig-dev
        swig
        which

If you do not wish to distribute GPLv3 components please remove
the above packages prior to distribution.  This can be done using
the opkg remove command.  i.e.:
    opkg remove <package>
Where <package> is the name printed in the list above

NOTE: If the package is a dependency of another package you
      will be notified of the dependent packages.  You should
      use the --force-removal-of-dependent-packages option to
      also remove the dependent packages as well
***************************************************************
***************************************************************
[  OK  ] Started Print notice about GPLv3 packages.
[  OK  ] Started weston.service.
         Starting Matrix GUI...
         Starting telnetd.service...
[  OK  ] Started telnetd.service.
[  OK  ] Started Matrix GUI.
         Starting thttpd.service...
[  OK  ] Started thttpd.service.
         Starting rng-tools.service...
[  OK  ] Started rng-tools.service.

 _____                    _____           _         _   
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
              |___|                    |___|            

Arago Project http://arago-project.org am57xx-evm ttyS0

Arago 2018.10 am57xx-evm ttyS0

am57xx-evm login: root
root@am57xx-evm:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 30:45:11:CB:3B:AC  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:82 

eth1      Link encap:Ethernet  HWaddr 30:45:11:CB:3B:AD  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1%775872/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:162 errors:0 dropped:0 overruns:0 frame:0
          TX packets:162 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12300 (12.0 KiB)  TX bytes:12300 (12.0 KiB)

root@am57xx-evm:~# 



Regards,
Suresh P.

  • Hello Suresh,

    1) Is this a custom board? If so, what are your PHY connections?

    2) What version of Linux are you using?

    3) Your MDIO output looks like the kernel does not have a PHY driver, so it is using a generic driver instead. There might be other problems. See below output:

    [ 1.740788] davinci_mdio 48485000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [ 1.748483] davinci_mdio 48485000.mdio: detected phy mask 0
    [ 1.831382] libphy: 48485000.mdio: probed
    [ 1.835417] davinci_mdio 48485000.mdio: phy[0]: device 48485000.mdio:00, driver unknown
    [ 1.843569] davinci_mdio 48485000.mdio: phy[1]: device 48485000.mdio:01, driver unknown
    [ 1.851657] davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02, driver unknown
    [ 1.859697] davinci_mdio 48485000.mdio: phy[3]: device 48485000.mdio:03, driver unknown
    [ 1.867780] davinci_mdio 48485000.mdio: phy[4]: device 48485000.mdio:04, driver unknown
    [ 1.875854] davinci_mdio 48485000.mdio: phy[5]: device 48485000.mdio:05, driver unknown
    [ 1.883909] davinci_mdio 48485000.mdio: phy[6]: device 48485000.mdio:06, driver unknown
    [ 1.891962] davinci_mdio 48485000.mdio: phy[7]: device 48485000.mdio:07, driver unknown
    [ 1.900000] davinci_mdio 48485000.mdio: phy[8]: device 48485000.mdio:08, driver unknown
    [ 1.908051] davinci_mdio 48485000.mdio: phy[9]: device 48485000.mdio:09, driver unknown
    [ 1.916103] davinci_mdio 48485000.mdio: phy[10]: device 48485000.mdio:0a, driver unknown
    [ 1.924241] davinci_mdio 48485000.mdio: phy[11]: device 48485000.mdio:0b, driver unknown
    [ 1.932379] davinci_mdio 48485000.mdio: phy[12]: device 48485000.mdio:0c, driver unknown
    [ 1.940504] davinci_mdio 48485000.mdio: phy[13]: device 48485000.mdio:0d, driver unknown
    [ 1.949083] davinci_mdio 48485000.mdio: phy[14]: device 48485000.mdio:0e, driver unknown
    [ 1.957225] davinci_mdio 48485000.mdio: phy[15]: device 48485000.mdio:0f, driver unknown
    [ 1.965365] davinci_mdio 48485000.mdio: phy[16]: device 48485000.mdio:10, driver unknown
    [ 1.973503] davinci_mdio 48485000.mdio: phy[17]: device 48485000.mdio:11, driver unknown
    [ 1.981641] davinci_mdio 48485000.mdio: phy[18]: device 48485000.mdio:12, driver unknown
    [ 1.989767] davinci_mdio 48485000.mdio: phy[19]: device 48485000.mdio:13, driver unknown
    [ 1.997905] davinci_mdio 48485000.mdio: phy[20]: device 48485000.mdio:14, driver unknown
    [ 2.006044] davinci_mdio 48485000.mdio: phy[21]: device 48485000.mdio:15, driver unknown
    [ 2.014184] davinci_mdio 48485000.mdio: phy[22]: device 48485000.mdio:16, driver unknown
    [ 2.022322] davinci_mdio 48485000.mdio: phy[23]: device 48485000.mdio:17, driver unknown
    [ 2.030448] davinci_mdio 48485000.mdio: phy[24]: device 48485000.mdio:18, driver unknown
    [ 2.038587] davinci_mdio 48485000.mdio: phy[25]: device 48485000.mdio:19, driver unknown
    [ 2.046724] davinci_mdio 48485000.mdio: phy[26]: device 48485000.mdio:1a, driver unknown
    [ 2.054861] davinci_mdio 48485000.mdio: phy[27]: device 48485000.mdio:1b, driver unknown
    [ 2.062999] davinci_mdio 48485000.mdio: phy[28]: device 48485000.mdio:1c, driver unknown
    [ 2.071137] davinci_mdio 48485000.mdio: phy[29]: device 48485000.mdio:1d, driver unknown
    [ 2.079263] davinci_mdio 48485000.mdio: phy[30]: device 48485000.mdio:1e, driver unknown
    [ 2.087424] davinci_mdio 48485000.mdio: phy[31]: device 48485000.mdio:1f, driver unknown
    ...
    [ 2.435287] davinci_mdio 4b2b2400.mdio: davinci mdio revision 1.6, bus freq 1000000
    [ 2.435292] libphy: 4b2b2400.mdio: probed
    [ 2.447182] davinci_mdio: probe of 4b2b2400.mdio failed with error -5
    ...
    [   10.357902] Generic PHY 48485000.mdio:01: attached PHY driver [Generic PHY] (mii_bus:phy_addr=48485000.mdio:01, irq=POLL)
    [   10.965423] Generic PHY 48485000.mdio:00: attached PHY driver [Generic PHY] (mii_bus:phy_addr=48485000.mdio:00, irq=POLL)

    Regards,

    Nick

  • Hi Nick,

    Thanks for your replay.

    Q1. Yes it is custom board & Could you explain what did you meant by PHY connections. For your information, we used only PRU- Ethernet.

    Q2.  SDK Version: ti-processor-sdk-linux-am57xx-evm-05.03.00.07      Linux Version: linux-4.14.79

    Q3. In our custom board we used DP83822I. Because it is TI recommended drop in replacement (Both hardware & Software) of TLK105L . 

    We have used the same software in AM5718 IDK then we observed below PRU powering up debug prints. But we didn't observed any PRU powering up & elf file load related debug prints in custom board kernel boot logfile.

    AM5718 IDK debug print:

    [   12.597487] remoteproc remoteproc6: powering up 4b2b8000.pru
    [   12.675640] remoteproc remoteproc6: Booting fw image ti-pruss/am57xx-pru1-prueth-fw.elf, size 6240
    [   12.838838] pruss 4b280000.pruss: configured system_events[63-0] = 0x00600000.08a00000
    [   12.992615] pruss 4b280000.pruss: configured intr_channels = 0x0000032a host_intr = 0x000002aa
    [  OK  ] Found device /dev/ttyS2.
    [   13.140900] remoteproc remoteproc6: remote processor 4b2b8000.pru is now up
    [   13.256781] net eth3: started
    [   13.328468] IPv6: ADDRCONF(NETDEV_UP): eth3: link is not ready
    [   13.484557] remoteproc remoteproc5: powering up 4b2b4000.pru
    [   13.554699] remoteproc remoteproc5: Booting fw image ti-pruss/am57xx-pru0-prueth-fw.elf, size 6212
    [   13.637671] pruss 4b280000.pruss: configured system_events[63-0] = 0x00000600.04500000
    [   13.725334] pruss 4b280000.pruss: configured intr_channels = 0x000000d5 host_intr = 0x00000155
    [   13.818407] remoteproc remoteproc5: remote processor 4b2b4000.pru is now up
    [   13.905062] net eth2: started

    Could you please explain?

    Regards,
    Suresh P.

  • Hello, I'm sorry, but Nick is out for a few days and likely not be able to get back to you by early next week. I apologize for the delay.

  • Hello Suresh,

    1) PHY connections: How is your PHY connected to the AM57xx? For example, is it an MII connection? How is your PHY bootstrapped? For example, what address should this PHY be on the MDIO bus?

    2) See the links in the post PRU Ethernet for guidance on building the PHY driver.

    3) Please attach your device tree file with the PRU Ethernet and MDIO information.

    Regards,

    Nick

  • Hi Nick,

    Now we got eth0 and eth1 PRU device, we checked through "ifconfig".

    But we can able to communicate through PHY,I attached my schematic for your reference.

    Regrads,

    suresh

    am57xx-idk-common.tar

  • Hi Nick,

    Now we got eth0 and eth1 PRU device, we checked through "ifconfig".

    But we can able to communicate through PHY,I attached my schematic for your reference.

    Regrads,

    suresh

    4812.am57xx-idk-common.tar

  • Hello Suresh,

    What do you mean by "But we can able to communicate through PHY"? What are your symptoms? Do you have terminal output to share?

    Regards,

    Nick

  • Hi Nick,

    Sorry for the typo error.  Actually i'll trying to say "we can't able to communicate through PHY".

    Symptoms of PRU-PHY:

    #1 If we enter "ifconfig" command then we got below output 

    root@am57xx-evm:~# ifconfig
    eth0 Link encap:Ethernet HWaddr EE:C9:5A:4D:B4:DC
    UP BROADCAST MULTICAST MTU:1500 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

    eth1 Link encap:Ethernet HWaddr 42:A1:99:48:B8:58
    UP BROADCAST MULTICAST MTU:1500 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1%775872/128 Scope:Host
    UP LOOPBACK RUNNING MTU:65536 Metric:1
    RX packets:162 errors:0 dropped:0 overruns:0 frame:0
    TX packets:162 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:12300 (12.0 KiB) TX bytes:12300 (12.0 KiB)


    #2 While connect & disconnect the Ethernet cable with the AM5718 platform then we didn't get any "LinkUp" or "LinkDown" messages.(Please note same software working fine in AM5718IDK)

    #3 we have cross checked our schematic with AM571x IDK schematic then we found the "pr2_mii0_rxlink" & "pr2_mii1_rxlink" signals are not connected to PHY(Refer previous replay for schematics).Is this create any issue? 


    As per your request, We have attached the console output for your reference.Could you check & feedback us. 

    pru_phy_log.txt


    Thanks & Regards,
    Suresh 

  • Hi Nick,

    Awaiting for your replay.

    Regrads,

    Suresh

  • Hello Suresh,

    I am not sure what the rxlink input does, if anything. I am getting some background information on it.

    Feedback on your devicetree file:
    remember that am571x-idk.dts includes am571x-idk-common.dtsi, which includes am57xx-idk-common.dtsi. So there are additional parts that are needed:
    1) reset gpio for the PHYs (see am571x-idk-common.dtsi)
    2) The proper PRUSS_GPCFG settings (see am571x-idk.dts. Reference section PRU-ICSS I/O Interface in the AM571x technical reference manual, especially Figure 30-2 and tables 30-1 and 30-2). Note that ti,pruss-gp-mux-sel selects the PRUSS_GPCFG settings.

    Regards,

    Nick

  • Hi Nick,

    Once you got the right information about the rxlink input let us know. For your information, We have removed the rxlink input connections in AM5718-IDK then the behavior is same as our custom platform behavior. So that we requested you explain the rxlink functionality.

    Feed-Back #1:

    • We haven't connected the PHY reset to processor, Instead we have externally pulled up the PHY reset pin. 
    • As per our hardware connections, We have modified default PHY interrupt pin by using the PINMUX settings in "mux_data.h & am57xx-idk-common.dtsi" files. Refer the PHY interrupt PINMUX settings screenshot.

      mux_data.h Screenshot:-



    am57xx-idk-common.dtsi Screenshot:-


    Feed-Back #2:

    • We have used same I/O's in our hardware, So the PRUSS_GPCFG settings I/Os changes are not required

    Regards,
    Suresh


  • Hello Suresh,

    1) I am moving the RXLINK discussion to your new post PRU MII RXLINK Issue.

    2) Device tree files. You attached a dtsi file to your earlier post, but that dtsi file only shows me part of the PRU Ethernet device tree settings. Please attach all of your device tree settings for PRU Ethernet. (If you are using AM5718 IDK dts files as your template, that means please attach am57xx-idk-common.dtsi, am571x-idk-common.dtsi, and am571x-idk.dts). If you cannot post the full files, please post at least the pruss and mdio sections in those files.

    3) I am not sure if you are saying you did not connect the PHY reset signals to the processor, or if you are saying you connected the PHY reset signals to a different pin on the processor. PRU Ethernet is not expected to work properly if you do not connect the PHY reset signals to the MDIO.

    4) As long as you use the same PRUSS_GPCFG settings as the IDK files, then you should be fine. But you need to include PRUSS_GPCFG settings somewhere in one of your dts files.

    Regards,

    Nick

  • Hi Nick,

    #1 Okay.It should be fine.

    #2 Here i have attached the following Dtsi files for your reference.
         1. am57xx-idk-common.dtsi
         2. am571x-idk-common.dtsi
         3. am571x-idk.dts
    AM5718DtsFiles.zip


    #3 I was connected the PHY reset signals to a different pin(It's an alternative pin) on the processor.

    #4 Please note that same software working good on AM5718-IDK.(I meant the PRU Ethernet working fine and it shows link-up & link-down while connect & removed the Ethernet cable). In this case also need to add the PRUSS_GPCFG settings in dts file.


    Regards,
    Suresh

  • Hello Suresh,

    You did not update your reset-gpios for pruss2_mdio in am571x-idk-common.dtsi to point to the new pin on your processor.

    Regards,

    Nick

  • Hi Nick,

    I have configured the reset-gpios for pruss2_mdio but still the PRU-Ethernet won't work. So could you update us about the RXLINK for conclude this issue.


    Regards,
    suresh

  • Hello Suresh,

    I just got back from vacation. Still waiting for a conclusive response on RXLINK.

    The tentative answer is neither Linux nor the PRU firmware is expected to use RXLINK for standard Ethernet. However, I am looking for a stronger confirmation from the firmware team. Our boards were designed with RXLINK connected because RXLINK is used in certain industrial ethernet protocols with explicit fast link detection requirements, like EtherCAT and Sercos3.

    Regards,

    Nick

  • Hi Nick,

    Sorry for the delayed reply.

    As per your current statement, The RXLINK is required for PRU-ETHERNET  to properly work?. Please confirm.

    Let me know, Is there any other way (without using RXLINK ) to make PRU-ETHERNET properly work?

    Thanks & Regards,

    Suresh

  • Hello Suresh,

    RXLINK should not be required for PRU Ethernet to work.

    Regards,

    Nick