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.

DS64MB201 register 0x2 change to 0xff

Other Parts Discussed in Thread: DS64MB201

hi, I write DS64 register 0x2 to 0x1 when power up, and the default value is 0x0, after the SersDes signal pass through the buffer, sometimes this register change to 0xff, and single can't pass it, I don't know why.

BTW, the register 0x2 bit1-bit7 are reserved bits, but I write it as 0xff, why?

  • Hello Junca,

    I cannot explain your observation, but I have some follow-up questions to better understand your predicament:

    1. How have you connected the ENSMB pin (#48)?
    2. How have you connected the SMBus address pins (#54, #53, #47, and #46)?
    3. What SMBus slave address are you using to write to the DS64MB201?
    4. Are you following the recommended procedure on page 15 of the datasheet , whereby the first thing you do after enabling SMBus mode (ENSMB=1) is to reset the SMBus registers to default values by writing 0x01 to address 0x00?

    Casey Morrison

  • thanks, Morrison

    1. How have you connected the ENSMB pin (#48)?

    -- ENSMB is pulled up.

    1. How have you connected the SMBus address pins (#54, #53, #47, and #46)?

    -- #46, #54 pins are pulled up, #47, #53 are pull down.

    1. What SMBus slave address are you using to write to the DS64MB201?

    -0xB2, can access it successful at most time.

    1. Are you following the recommended procedure on page 15 of the datasheet , whereby the first thing you do after enabling SMBus mode (ENSMB=1) is to reset the SMBus registers to default values by writing 0x01 to address 0x00?

    --use POWRPC I2C bus to connect to DS64.and reset it firstly.

    The result is only found  some times when power up the board, for example, one time in 200 times power up.

    software set register 0x2 as 0x1 after power up, some times later, it change to 0xff.

      BTW,  0x2 reservert bit can change to 0xFF. and this action will close the serdes road.

     HWTF> hw ds64 1 r 0x2
    [0x0002]: 0x01
     HWTF> hw ds64 1 w 0x0 1
    write [0x0000]: 0x01
     HWTF> hw ds64 1 r 0x2  
    [0x0002]: 0x00
    HWTF> hw ds64 1 w 0x2 0xff
    write [0x0002]: 0xff
     HWTF> hw ds64 1 r 0x2     
    [0x0002]: 0xff