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.

c6455 SRIO loopback

Hi all!
  I am trying to test the c6455 srio loopback funtion,the transaction i tested is nwriteR.
The problem is that the transaction always ends with timeout error,means that the response is
not loopbacked successfully.But what i read in spru976,the loopback mode means that packet data
is looped back in digital domain before the SERDES macros.I think there must be something wrong
with my understanding for the loopback function.
  I use the following srio_init code which has been tested through when the other side srio are ready.
I just modify this srio_init code with SRIO_PER_SET_CNTL = 0x0600026F to enable the loopback.

 SRIO_GBL_EN  = 0x00000001 ;
 SRIO_BLK0_EN = 0x00000001 ; //MMR_EN
 SRIO_BLK5_EN = 0x00000001 ; //PORT0_EN
 SRIO_BLK1_EN = 0x00000001 ; //LSU_EN
 SRIO_BLK2_EN = 0x00000001 ; //MAU_EN
 SRIO_BLK3_EN = 0x00000001 ; //TXU_EN
 SRIO_BLK4_EN = 0x00000001 ; //RXU_EN
 SRIO_BLK6_EN = 0x00000001 ; //PORT1_EN
 SRIO_BLK7_EN = 0x00000001 ; //PORT2_EN
 SRIO_BLK8_EN = 0x00000001 ; //PORT3_EN

 SRIO_PER_SET_CNTL = 0x0600026F;// 0x0400026F ;

 SRIO_SERDES_CFG0_CNTL = 0x0000000B;//mpy=00101b pll 10x;pllen=1;
 SRIO_SERDES_CFGRX0_CNTL = 0x00081101 ; // enable rx, rate=00 full rate; EQ=0001 adaptive; align=01 Comma alignment enabled;
 SRIO_SERDES_CFGTX0_CNTL = 0x00010801 ; // enable tx, rate=00 full rate; swing=100:750mv;

 SRIO_DEVICEID_REG1 = 0 ; // id-16b=0000, id-08b=00
 SRIO_DEVICEID_REG2 = 0 ; // id-16b=0000, id-08b=00

 SRIO_SP_IP_MODE = 0x0400003F; // mltc/rst/pw enable, clear

 SRIO_DEV_ID = 0x00000030 ; // id=0000, ti=0x0030
 SRIO_DEV_INFO = 0x00000000 ; // 0
 SRIO_ASBLY_ID = 0x00000030 ; // ti=0x0030
 SRIO_ASBLY_INFO = 0x00000100; // 0x0000, next ext=0x0100
 SRIO_PE_FEAT = 0x20000009 ; // proc, bu ext, 8-bit ID, 34-bit addr
 SRIO_SRC_OP = 0x0000FDF4; // all
 SRIO_DEST_OP = 0x0000FC04; // all except atomic
 SRIO_PE_LL_CTL = 0x00000001; // 34-bit addr
 SRIO_LCL_CFG_HBAR = 0x00000000 ; // 0
 SRIO_LCL_CFG_BAR = 0x00000000; // 0
 SRIO_BASE_ID = 0x00000000; // 16b-id=0000, 08b-id=00
 SRIO_HOST_BASE_ID_LOCK = 0x00000000; // id=0000, lock
 SRIO_COMP_TAG = 0x00000000; // not touched
 SRIO_SP_IP_DISCOVERY_TIMER = 0x90000000;// 0, short cycles for sim
 SRIO_IP_PRESCAL = 0x00000018; // srv_clk prescalar=0x18 (250MHz)
 SRIO_SP0_SILENCE_TIMER = 0x20000000;
 SRIO_SP0_CTL = 0x00600001; // enable i/o;
 SRIO_SP_LT_CTL = 0xFFFFFF00; // long time
 SRIO_SP_RT_CTL = 0xFFFFFF00; // long time
 SRIO_SP_GEN_CTL = 0xC0000000; // host, master, undiscovered 
 SRIO_ERR_DET = 0x00000000 ; // clear
 SRIO_ERR_EN = 0x00000000 ; // disable
 SRIO_H_ADDR_CAPT = 0x00000000 ; // clear
 SRIO_ADDR_CAPT = 0x00000000 ; // clear
 SRIO_ID_CAPT = 0x00000000 ; // clear
 SRIO_CTRL_CAPT = 0x00000000 ; // clear
 SRIO_SP_IP_PW_IN_CAPT0 = 0x00000000 ; // clear

 SRIO_PER_SET_CNTL = 0x0500026F; // bootcmpl=1
 
   Can someone to help me ?
   Thanks!!!
                                       samantha