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.

c6678 ethernet phy

Hi,

we are using    The Alaska® Ultra 88E1111 Gigabit Ethernet Trans-ceiver for interfacing with c6678.with SGMII.
Schematic reference for 1Giga bit is  available
http://www.advantech.com/Support/TI-EVM/6678le_download.aspx from pages 27-29
In order to save power consumption we have changed our schematic with 100Mbit.
we have added pulse transfomer  10/100 BASE magnetics(in place of RJ45) takes inputs
from MDI0+,  MDI0- to TD+, TD- MDI1+, MDI1- to RD+,RD- .
MDI2+, MDI2-, MDI3+ & MDI3- are connected to ground with 0 ohms resistor. Rest of schematic remains unchanged.
When we connected ethernet port to laptop it is showing 10Mbps. while debugging with c6678 emulator SGMII linkup flag is not setting. Also led linkup is not coming.
Pulse transfomer magnetics  TX+ TX- are connected to PC RX+ , RX- and RX+, RX- are connected to PC TX+, TX- .
connections wise no issues. We have used same pulse transformer in blackfin inbuilt phy (its MII interface)controller it is working.
I guess SGMII tx configuration needs to be done if any one knows what exactly needs to be done please help.
Please let me know how to solve this issue.


regards
SrinivasPrasad

  • Hi Srinivas,

    The changes you described are all on the physical interface side of the PHY.  The connections on the SGMII side should be the same and the PHY to MAC connection should scale to whatever speed interface the PHY negotiates.  It shouldn't require any changes to the SGMII configuration.

    I'm not clear on the state of the connection.  You state that the led linkup is to not present.  Is that the link led on pin B8 of the 88E1111? 

    Regards, Bill

  • Hi Bill Taboada,

    Thank you for your response. I have attached PHY schematic section if any hardware issues.

    In void init_sgmii(uint32_t macPortNum) function changed  sgmiiCfg.linkSpeed = CSL_SGMII_100_MBPS;

    In  sgmiiStatus.bIsLinkUp & sgmii_status.bIsAutoNegComplete flags are not set.
    when i force to set sgmiiStatus.bIsLinkUp & sgmii_status.bIsAutoNegComplete then in console window PA,QMSS all are successfull
    but IP address is not coming. laptop it is showing 10Mbps.

    void init_sgmii(uint32_t macPortNum)

    {

            CSL_SGMII_ABVABILITY  sgmiiCfg;

            CSL_SGMII_STATUS  sgmii_status;

            CSL_SGMII_doSoftReset(macPortNum);

            while(CSL_SGMII_getSoftResetStatus(macPortNum)!=0};

           if(macPortNum ==1)

           {

                        CSL_SGMII_startRxTxSoftReset(macPortNum);

                        CSL_SGMII_disableMasterMode(macPortNum);

                         CSL_SGMII_enableAutoNegotiation(macPortNum);

                        CSL_SGMII_enableLoopback(macPortNum);

                       CSL_SGMII_endRxTxSoftReset(macPortNum);

                       while(1)

                       {

                                          if(CSL_SGMII_IsLoopbackModeenabled((macPortNum))

                                        {

                                                      break;

                                           }

                            }

                          sgmiiCfg.linkSpeed = CSL_SGMII_100_MBPS;

                          sgmiiCfg.duplexMode= CSL_SGMII_FULL_DUPLEX;

                          CSL_SGMII_setAdvAbility(macPortNum,&sgmiiCfg);

                       do

                         {

                                               CSL_SGMII_getstatus(macPortNum,&sgmiiStatus);

                              }while(sgmiiStatus.bIsLinkUp !=1)//in my project  ,when I run,sgmiiStatus.bIsLinkUp =0;and I force sgmiiStatus.bIsLinkUp =1

                    do

                     {

                                          CSL_SGMII_getstatus(macPortNum,&sgmii_status);

                          }while(sgmii_status.bIsAutoNegComplete !=1)

            }

            else

             {

                      .....................................

              }

    }

    Please let me know any clarifications.

    Thanks & regards,

    SrinivasaPrasad

  • Hi Srinivasa,

    Let me provide some more information and ask some additional questions.

    1) The schematic you sent show a standard 10/100 connection to the RJ45 connector and you have stated that you are seeing a 10Mbit connection to a laptop. Have you checked with Marvell to be sure that the 88E1111 can be connected in this manner?  How are you connecting to the laptop?  Are you using a cross-over cable or a hub?  Is the laptop running a DHCP server?

    2) The 88E1111 negotiates with the physical network to determine the wire speed and then acts as the master for the SGMII negotiation to inform the C6678 of the negotiated speed.  There is no reason to set the SGMII link speed to 100 since the PHY will determine the speed of the interface.  The configuration delivered with the MCSDK should work without modification.  Note that the 88E1111 should connect with the network without any intervention from the C6678.  It will establish a link even if the SGMII interface is not active and you should see the appropriate link LED light.  If you are seeing a 10Mbit link with the laptop it is an issue with the 88E1111 and not the C6678.

    Regards, Bill

  • Hi Bill,

    1.In Marvell Phy 88E111 datasheet  for E10/100  this option is given

    I have sent  schematic to Marvell technical team for further verification.

    Magnetic s TX+, TX-   are connected to laptop RX+, RX-  and vice versa as per link available

    http://www.incentre.net/ethernet-wiring-diag.html

    Laptop i have configured manually  ip address 192.168.7.190 subnetmask255.255.255.0 gateway 192.168.7.190(same as IP called in Client.c file)

    i tried for ping 192.168.7.190 in command prompt but it is showing message request time out. However with Eval boardC6678 setup same code ping is working .

    2.I tried PHY 100 Mbps software configuration using MDC/MDIO interface but it is not working.

    Thanks & regards,

    SrinivasaPrasad.

  • Hi Srinivasa,

    If you have access to the 88E1111 using the MDC/MDIO interface then  you can read the status registers for that device.  Check the status and see what the state of the PHY is on your board.  You should be able to read the first three registers which will give you the PHY configuration and the status of the PHY. 

    Regards, Bill

  • Hi Bill,

    Thank you for your inputs. I have interchanged TX  and RX of ethernet cable. Iam getting 100mbps on Laptop.

    100Mbps led link is glowing. LED RX led is blinking when iam giving ping command in Laptop. In Laptop  Network connection status  send count is changing but receive is always zero. Request time out is showing for ping command.

    In void init_sgmii(uint32_t macPortNum) function changed  sgmiiCfg.linkSpeed = CSL_SGMII_100_MBPS;

    In  sgmiiStatus.bIsLinkUp & sgmii_status.bIsAutoNegComplete flags are not set.
    when i force to set sgmiiStatus.bIsLinkUp & sgmii_status.bIsAutoNegComplete then in console window PA,QMSS all are successfull

    but IP address is not coming.

    Please give some more inputs.

    Thanks & regards,

    SrinivasaPrasad.