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.

dm385 网口问题

Other Parts Discussed in Thread: TPS65910

首先,通过UBOOT执行PING命令,但是有个奇怪的现象,就是PING成功的时候间隔的,也就是第一次PING,显示如下:

phy info reg 0x1e addr 0 var ffff

phy info reg 0x1e addr 0 var ffff

failed to read bmcr

ping failed.

但是第二次ping 就成功了,显示如下:

phy info reg 0x1e addr 0 var 2

phy info reg 0x1e addr 0 var a

link up on port 0,speed 100 ,full duplex

host 192.168.253.155 is alive。

第三次又和第一次一样,第4次和第二次一样,以此类推。

内核启动信息,导致挂接NFS失败,信息如下:

U-Boot 2010.06 (Aug 22 2016 - 23:48:10) DM385_IPNC_3.80.00

DM385-GP rev 1.1

ARM clk: 600MHz
DDR clk: 400MHz
L3 clk: 200MHz
IVA clk: 450MHz
ISS clk: 400MHz
DSP Default OFF
DSS Default OFF

I2C: ready
DRAM: 1 GiB
DCACHE: On
NAND: HW ECC BCH8 Selected
256 MiB
MMC: OMAP SD/MMC: 0, ON-BOARD SDIO: 1
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@ @@
@@ @@
@@ @@
@@ @@
@@ @@@ @. @. @@@@ @@@@ G@@@@@@ @@
@@ @@@@@ L@@ @@@ @@@@@@ @@@@@i @@@@@@ @@
@@ @@ @@@. @@@ @@@ @@ @, @@ :@@ @@
@@ @@ @@ @@@ @@@ @@@@ @@;@@: C@@@@@. @@
@@ @@ @@ @@@.l@L@ G@@@ ,@@@@ @@@ @@ @@
@@ @@ @@ l@ @@@@ @. l@@ @@ L@@ @ G@ @@
@@ @@ @@ @@ @@@@ @@ @@ C@ @@ @@ @@
@@ @@ ,@C @@ @@@ @@ @i @@ C@ @@ @@ @@ @@
@@ @@@@@@@ @@ @@ @@ @@@@@l @@@@@@ L@@@@@ @@
@@ @@@@@ @ @ @ L@@ @@@, ,@@G @@
@@ @@
@@ @@
@@ @@
@@ @@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Net: Ethernet clocking: 0x52
Detected MACID:0:c:c:a0:ff:fa
cpsw
Hit any key to stop autoboot: 0

Loading from nand0, offset 0x280000
Image Name: Linux-2.6.37_DM388_IPNC_3.80.00
Created: 2014-03-19 10:49:20 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2480740 Bytes = 2.4 MiB
Load Address: 80008000
Entry Point: 80008000
## Booting kernel from Legacy Image at 81000000 ...
Image Name: Linux-2.6.37_DM388_IPNC_3.80.00
Created: 2014-03-19 10:49:20 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2480740 Bytes = 2.4 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.37_DM388_IPNC_3.80.00 (root@localhost.localdomain) (gcc versio
n 4.5.3 20110311 (prerelease) (GCC) ) #1 Wed Mar 19 18:49:10 CST 2014
CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: dm385ipnc
bootconsole [earlycon0] enabled
ti81xx_reserve: ### Reserved DDR region @84f00000
reserved size = 4194304 at 0x0
FB: Reserving 4194304 bytes SDRAM for VRAM
Memory policy: ECC disabled, Data cache writeback
OMAP chip is DM385 1.0
SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 19040
Kernel command line: root=/dev/nfs console=ttyO0,115200n8 mem=80M rw notifyk.vps
sm3_sva=0xBFD00000 nfsroot=192.168.253.131:/opt/Source/ipnc_rdk/target/filesys,n
olock eth=00:0C:0C:A0:FF:FA ip=192.168.253.144 cmemk.phys_start=0x85000000 cmemk
.phys_end=0x89000000 cmemk.allowOverlap=1 earlyprintk
cpsw: kernel boot params Ethernet address: 00:0C:0C:A0:FF:FA
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 74MB 1MB = 75MB total
Memory: 70684k/70684k available, 11236k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
vmalloc : 0xc5800000 - 0xf8000000 ( 808 MB)
lowmem : 0xc0000000 - 0xc5000000 ( 80 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.init : 0xc0008000 - 0xc003e000 ( 216 kB)
.text : 0xc003e000 - 0xc04b9000 (4588 kB)
.data : 0xc04ba000 - 0xc04fa980 ( 259 kB)
SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:375
IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
Total of 128 interrupts on 1 active controller
GPMC revision 6.0
Trying to install interrupt handler for IRQ368
Trying to install interrupt handler for IRQ369
Trying to install interrupt handler for IRQ370
Trying to install interrupt handler for IRQ371
Trying to install interrupt handler for IRQ372
Trying to install interrupt handler for IRQ373
Trying to install interrupt handler for IRQ374
Trying to install type control for IRQ375
Trying to set irq flags for IRQ375
OMAP clockevent source: GPTIMER1 at 20000000 Hz
Console: colour dummy device 80x30
Calibrating delay loop... 599.65 BogoMIPS (lpj=2998272)
pid_max: default: 32768 minimum: 301
Security Framework initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
devtmpfs: initialized
TI81XX: Map 0x84f00000 to 0xfe500000 for dram barrier
TI81XX: Map 0x40300000 to 0xfe600000 for sram barrier
omap_voltage_early_init: voltage driver support not added
regulator: core version 0.5
regulator: dummy:
NET: Registered protocol family 16
omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
omap_voltage_add_dev: VDD specified does not exist!
OMAP GPIO hardware version 0.1
OMAP GPIO hardware version 0.1
OMAP GPIO hardware version 0.1
OMAP GPIO hardware version 0.1
omap_mux_init: Add partition: #1: core, flags: 4
Cannot clk_get ck_32
Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
registered ti81xx_vpss device
registered ti81xx_vidout device
registered ti81xx on-chip HDMI device
registered ti81xx_fb device
PWM0 init success.
PWM1 init success.
bio: create slab <bio-0> at 0
SCSI subsystem initialized
USBSS revision 4ea2080b
registerd cppi-dma Intr @ IRQ 17
Cppi41 Init Done
omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
tps65910 1-002d: No interrupt support, no core IRQ
Advanced Linux Sound Architecture Driver Version 1.0.23.
Switching to clocksource gp timer
musb-hdrc: version 6.0, peripheral, debug=0
musb-hdrc musb-hdrc.0: dma type: dma-cppi41
MUSB controller-0 revision 4ea20800
usb2phy: computed values rxcalib(15)DACs(29 13 13)
usb2phy: override computed values rxcalib(15)DACs(29 13 13)
usb2phy_config: musb(0) rxcalib done, rxcalib read value 6f6edb6e
musb-hdrc musb-hdrc.0: USB Peripheral mode controller at c581e000 using DMA, IRQ
18
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
NetWinder Floating Point Emulator V0.97 (double precision)
PMU: registered new PMU device of type 0
omap-iommu omap-iommu.0: ducati registered
omap-iommu omap-iommu.1: sys registered
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
msgmni has been set to 138
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
CMEMK module: built on Mar 19 2014 at 18:34:25
Reference Linux version 2.6.37
File /opt/workdir/DM8127_DM385_Ver3_8/Source/ti_tools/linuxutils_3_23_00_01/pa
ckages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
allocated heap buffer 0xc7000000 of size 0x4000000
cmemk initialized
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
console [ttyO0] enabled, bootconsole disabled
console [ttyO0] enabled, bootconsole disabled
omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
brd: module loaded
loop: module loaded
omap2-nand driver initializing
ONFI param page 0 valid
ONFI flash detected
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xca (Micron NAND 256MiB 3,3V 16-bi
t)
omap2-nand: detected x16 NAND flash
Creating 8 MTD partitions on "omap2-nand.0":
0x000000000000-0x000000020000 : "U-Boot-min"
0x000000020000-0x000000260000 : "U-Boot"
0x000000260000-0x000000280000 : "U-Boot Env"
0x000000280000-0x0000006c0000 : "Kernel"
0x0000006c0000-0x000006fc0000 : "File System"
0x000006fc0000-0x000007bc0000 : "Data"
0x000007bc0000-0x00000b0c0000 : "File System2"
0x00000b0c0000-0x000010000000 : "Reserved"
davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
davinci_mdio davinci_mdio.0: detected phy mask fffffffe
davinci_mdio.0: probed
davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver unknown
mice: PS/2 mouse device common for all mice
omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
notify_shm_drv: no DSP present (MULTIPROC_INVALIDID)
notify_init : notify drivercreated for remote proc id 1 at physical Address 0x
bfd00000
cm: Module associated with clock hdmi_i2s_fck didn't enable in 100000 tries
asoc: tlv320aic3x-hifi <-> davinci-mcasp.1 mapping ok
asoc: HDMI-DAI-CODEC <-> hdmi-dai mapping ok
ALSA device list:
#0: TI81XX EVM
nf_conntrack version 0.5.0 (1104 buckets, 4416 max)
ip_tables: (C) 2000-2006 Netfilter Core Team
TCP cubic registered
NET: Registered protocol family 17
Bridge firewalling registered
lib80211: common routines for IEEE802.11 drivers
Registering the dns_resolver key type
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
omap_voltage_late_init: Voltage driver support not added
Power Management for TI81XX.
Detected MACID=0:c:c:a0:ff:fa
omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)

CPSW phy found : id is : 0x4dd074
PHY 0:01 not found
IP-Config: Guessing netmask 255.255.255.0
IP-Config: Complete:
device=eth0, addr=192.168.253.144, mask=255.255.255.0, gw=255.255.255.255,
host=192.168.253.144, domain=, nis-domain=(none),
bootserver=255.255.255.255, rootserver=192.168.253.131, rootpath=
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00 128 mtdblock0 (driver?)
1f01 2304 mtdblock1 (driver?)
1f02 128 mtdblock2 (driver?)
1f03 4352 mtdblock3 (driver?)
1f04 107520 mtdblock4 (driver?)
1f05 12288 mtdblock5 (driver?)
1f06 54272 mtdblock6 (driver?)
1f07 81152 mtdblock7 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
Backtrace:
[<c004bf70>] (dump_backtrace+0x0/0x110) from [<c038a3d0>] (dump_stack+0x18/0x1c)

r6:00008000 r5:c4768000 r4:c04fb518 r3:60000013
[<c038a3b8>] (dump_stack+0x0/0x1c) from [<c038a430>] (panic+0x5c/0x178)
[<c038a3d4>] (panic+0x0/0x178) from [<c0009184>] (mount_block_root+0x1c4/0x204)
r3:00000000 r2:00000000 r1:c4425f58 r0:c0442365
r7:c04423c9
[<c0008fc0>] (mount_block_root+0x0/0x204) from [<c0009358>] (mount_root+0xac/0xc
c)
[<c00092ac>] (mount_root+0x0/0xcc) from [<c00094e4>] (prepare_namespace+0x16c/0x
1cc)
r4:c04fa9e4
[<c0009378>] (prepare_namespace+0x0/0x1cc) from [<c0008d70>] (kernel_init+0x114/
0x154)
r5:c002d42c r4:c002d42c
[<c0008c5c>] (kernel_init+0x0/0x154) from [<c0073458>] (do_exit+0x0/0x5d0)
r5:c0008c5c r4:00000000

  • Xin Jin,

    我上次提出的问题你能回复一下么?

    请问你的网络部分硬件/软件和原始DM385 IPNC有什么不同?

  • 你好,通过这几天的排查发现,当初引起有时phy info reg 0x1e addr 0 var ffff原因是ar8031复位引起的,现在把复位信号直接接到FPGA,上电复位一次,解决了phy info reg 0x1e addr 0 var ffff读取失败问题,目前每次可以读取

    phy info reg 0x1e addr 0 var 2

    phy info reg 0x1e addr 0 var a。

    但是PING丢包率特别大,通过TFTP下载uImage失败,显示###TTTT####TTTT,中间有很多T

  • 硬件和PNC没区别,我用的是APPRO开发板,V3.8开发包

  • Xin Jin,

    所以是IPNC的参考设计换了一个你们自己做的sensor板?那FPGA是在sensor板上的?

    如果是,去掉你们的sensor板是否网路,以及nfs都能正常工作?

  • 上午有点着急所以可能没有说清楚,我这个板子没有加sensor,直接通过cameralink把相机的数据发送给dm385,以太网板和DM385主板之间通过接插件连接,以太网那边我没有加poe,直接用的是HX5084变压器。

    目前,我有点怀疑EMAC和PHY距离有点远(线长200MM左右),所以我把PC机的网卡强制100M和10M,但是PING的失败率很高,NFS有时候卡在Freeing init memory: 128K,大多数会错误

    VFS: Unable to mount root fs via NFS, trying floppy.
    VFS: Cannot open root device "nfs" or unknown-block(2,0)
    Please append a correct "root=" boot option; here are the available partitions:
    1f00 128 mtdblock0 (driver?)
    1f01 2304 mtdblock1 (driver?)
    1f02 128 mtdblock2 (driver?)
    1f03 4352 mtdblock3 (driver?)
    1f04 107520 mtdblock4 (driver?)
    1f05 12288 mtdblock5 (driver?)
    1f06 54272 mtdblock6 (driver?)
    1f07 81152 mtdblock7 (driver?)
    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
    Backtrace:
    [<c004bf70>] (dump_backtrace+0x0/0x110) from [<c038a3d0>] (dump_stack+0x18/0x1c)

    r6:00008000 r5:c4768000 r4:c04fb518 r3:60000013
    [<c038a3b8>] (dump_stack+0x0/0x1c) from [<c038a430>] (panic+0x5c/0x178)
    [<c038a3d4>] (panic+0x0/0x178) from [<c0009184>] (mount_block_root+0x1c4/0x204)
    r3:00000000 r2:00000000 r1:c4425f58 r0:c0442365
    r7:c04423c9
    [<c0008fc0>] (mount_block_root+0x0/0x204) from [<c0009358>] (mount_root+0xac/0xc
    c)
    [<c00092ac>] (mount_root+0x0/0xcc) from [<c00094e4>] (prepare_namespace+0x16c/0x
    1cc)
    r4:c04fa9e4
    [<c0009378>] (prepare_namespace+0x0/0x1cc) from [<c0008d70>] (kernel_init+0x114/
    0x154)
    r5:c002d42c r4:c002d42c
    [<c0008c5c>] (kernel_init+0x0/0x154) from [<c0073458>] (do_exit+0x0/0x5d0)
    r5:c0008c5c r4:00000000

  • Xin Jin,

    还是不很清楚你的系统。cameralink是无法给DM385直接连接的。请问cameralink的信号是转换为什么信号,然后通过什么接口输入给DM385的?

    DM385的网络是通过你的以太网卡,再和NSF server相连的么? 如果是,如果DM385直接和NSF sever网络对连,是否就没有问题?你的以太网卡有你说的EMAC和PHY距离有点远的问题?

  • fpga目前像通过vin接口或CSI2,送入DSP,FPGA和DSP在一个板子上,这个板子有DM385+FPGA+DDR+NANDFLASH+电源,我把PHY芯片单独的放在另外一个板子上(称之为以太网板),两个板子通过接插件连接。

    我现在就是通过dm385--》以太网板子(AR8031)->nfs系统。现象就是刚才我说的那种。

    DM385到AR8031走线长度总和大约200Mm,如果跑1000M可能会有问题,但是我现在才100M或更低(10M),怎么会错误率那么大。

  • jin xin 说:
    DM385到AR8031走线长度总和大约200Mm

    20cm太长了,能否飞线飞短一点试试?

  • 你好,目前通过对硬件的排查发现,VDDIO_REG为1.5V,我查看了PDF没看到那个寄存器控制1.8V输出。我怀疑是不是由于电压引起的问题。