Ethernet auto negotiation

  • Hello,


    we are using the Emlix BSP and have difficulties to flash the kernel image because of the auto negotiation.
    The serial communication works without problems but the tftpboot step failes with a auto-negotiation timeout.


    It takes a lot of retries/restarts before the link LED turns on. It took us more than two hours to flash three boards.
    Once the linux kernel + file system is installed everything seems to be just fine. It appears to be the eth initialization
    of U-Boot.
    We have tried three PicoCom1 boards, two different switches (Netgear, TP-Link) and several cables with the
    starter kit and our own design using a Würth S0410231 transformer.


    Thank you.


    Regards,
    Michael

  • [admin:] Moved from PicoCOM-PicoCOM1 to Linux-PicoCOM1


    Unfortunatly this still is a open problem on the PicoCOM1. On some boards there are problems for autonegotiation. There are some workarounds available. One is adjusting the output gain of the ethernet controller. There is a UBoot patch available at: Patch: U-Boot und Ethernet Gain

    Software developer, F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Currenty there only exists on version of the evualation BSP that is included in the starterkit. This BSP was released before detecting this auto-negotiation problem.
    In some situations even changing the transmit gain does not solve this issue, so we hope to find a proper solution in near future.

    Software developer, F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • I've also a picoCOM1-Board and U-Boot works fine with the ethernet.


    The transformator is in the wrong way mounted and U-Boot configure the EMAC in a way that works.
    U-Boot loads the Linux kernel over ethernet without problems.
    after unpacking the kernel starts and while the IP-CONFIG: appears at the com-console the LINK-light from the attached ethernet-switch go out....
    the kernel try to auto-negotiate but after a few seconds the watchdog reset the µC.


    It seams to be a Linux config problem with the EMAC/PHY


    Have anybody a solution for this?


    greetings
    Günter

  • The autonegotiaten problem sometimes behaves very strange. It might be possible that a different gain configuration within the phy helps in some situation.


    To solve this problem completely, best facility might be fixing the transformator.


    If there is any reason for not doing so, you could check the ethernet driver in kernel and maybe try to disable auto-negotiation.

    Software developer, F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Hi,


    What do you mean with "fix the transformer"? Just flipping the transformer and using a different type does not seem to solve this completely.
    I would highly appreciate a guideline or at least a clear statement.
    A recommendation which transformer to use would be very helpful for everybody who wants to use your product in an own design!


    Thanks in advance
    DS

  • Quote from "GKollmann"

    The transformator is in the wrong way mounted and U-Boot configure the EMAC in a way that works.


    In this case flipping should solve the problem.


    Quote from "stepanek"

    Just flipping the transformer and using a different type does not seem to solve this completely


    This is new to me. Do you still have problems with auto-negotiation?


    Quote from "stepanek"

    I would highly appreciate a guideline or at least a clear statement.


    Have you already read the thread HowTo fix auto-negotiation problems on PicoCOM?
    There are available some routing guidelines and other notes you should take account of in your own BCP layout.

    Software developer, F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Hi,


    sorry I missunderstood this thread, as this seems to be a problem on the OS (Linux) side.
    I'm right now designing a PCB for the PicoCOM2 and still seeing this problem poping up made me a bit nervous.


    Yes, I have flipped the transformer in my design and I'm following the routing guideline.


    Has anybody experience with different transfromers than the one used for the starter kit?


    *keeping fingers crossed until the first prototype is running*


    DS

  • Hi


    I've rotated dthe transformator on a Starterkit (Rev 1.10) and it works.
    After this I did it on a custom board with the strange behaviour and now it works too.


    U-Boot starts witout any problem, loads the Linux kernel over NFS and Linux itself mounts the rootfs immediately!


    Thanks for motivation to do this! :-)


    greetings
    Günter