Uploaded image for project: 'rcX - Operating System'
  1. rcX - Operating System
  2. RCX-745

Trying to change PHY registers directly after Drv_PhyInitialize does not work correctly when fPowerDown is set to TRUE

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: V2.0.8.0, V2.0.8.3, V2.0.8.4, V2.0.8.5, V2.0.8.7, V2.0.8.8, V2.0.8.9, V2.0.8.10, V2.0.8.11, V2.0.8.12, V2.0.8.14, V2.0.8.15, V2.0.8.16, V2.0.8.17, V2.0.8.18, V2.0.8.19, V2.0.8.20, V2.0.8.21, V2.0.8.22, V2.0.8.23, V2.0.8.24, V2.0.8.25, V2.1.1.0, V2.1.2.0, V2.1.3.0, V2.1.4.0, V2.1.5.0, V2.1.5.1, V2.1.6.0, V2.1.6.1, V2.1.7.0, V2.1.7.1, V2.1.8.0, V2.1.8.1, V2.1.9.0, V2.1.9.1, V2.1.10.0
    • Fix Version/s: V2.0.8.26, V2.1.11.0
    • Component/s: Drivers
    • Labels:
      None
    • Account:
      SDO rcX (SDORCX)

      Description

      the following code snippet shows how to reproduce the problem accordingly.

      when run without breakpoint before its end at least one PHY will not enter PowerDown mode through PHY control register via MDIO.

        /* setup phys */
        {
          UINT uCnt, uRegData;
          TLR_HANDLE ahPhy[2];
          for(uCnt=0;uCnt<2;++uCnt)
          {
       
            if(RX_OK != Drv_PhyIdentifyPhy("PHY", uCnt, &ahPhy[uCnt]))
            {
              return 0;
            }
       
            if(RX_OK != Drv_PhyInitialize(ahPhy[uCnt]))
            {
              return 0;
            }
          }
          for(uCnt=0;uCnt<2;++uCnt)
          {
      #define PHY_REG_CONTROL     0
      #define PHY_REG_CONTROL_POWER_DOWN             (0x0800)
       
            if(RX_OK == Drv_PhyReadRegister(ahPhy[uCnt], PHY_REG_CONTROL, &uRegData))
            {
              Drv_PhyWriteRegister(ahPhy[uCnt], PHY_REG_CONTROL, uRegData | PHY_REG_CONTROL_POWER_DOWN);
            }
          }
        }

      Note: Test case has shown that netX100/500 is not affected!

        Attachments

          Issue Links

            Expenses

              Activity

                Status Description

                  People

                  • Reporter:
                    SBormann Sven Bormann
                  • Votes:
                    0 Vote for this issue
                    Watchers:
                    0 Start watching this issue

                    Dates

                    • Created:
                      Updated:
                      Resolved: