Failure to ping from SDK

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Failure to ping from SDK

542 Views
nlo
Contributor I

Hello,

We have a mx6sdl microsom rev a board and trying to write bare metal code to ping using the AR8035 with the platform SDK code.

We are able to ping from uboot after "udcp".

However, we are not able to achieve this with platform SDK.

When calling imx_enet_get_phy_status, we were able to get the status and it says ethernet is connected:

enet phy status 0: 796d
AR8031 reg 0x11 = bc1c
ENET 0: [ FULL_DUPLEX ] [ connected ] [ 1000M bps ]:
Ethernet link is up!

Following the ping app, it'll eventually call the function: imx_enet_send. It did not give us any errors. However, looking at wireshark log, it does not look like any message is actually being sent out.

Anyone can help us with this issue please ? thank you very much.

0 Kudos
2 Replies

443 Views
nlo
Contributor I

For anyone that is interested, after I called disable_mmu() at the beginning of my program, enet seems to be working fine now.

0 Kudos

443 Views
nlo
Contributor I

I have used the function imx_enet_mii_read to check the registers from 0x2 to 0x1E and they all have the same values as uboot environment.

I read somewhere that the buffer descriptor has to be on external memory. The buffers in enet_drv.c are statically allocated globally. I tried to do dynamic allocation however, I am getting errors during sending :

WARNING[POLL]: There are error (800000) for transmit. To my understanding, this is the babbling error.

and during receiving:

WARNING[POLL]: Ethernet Bus Error!

How should I correct these errors, or should I just leave those buffer statically allocated ?

Thanks,

0 Kudos