hi,
DP159 + XILINX DP IP
steps:
1.Initialize DP159
2.Initialize DP IP
3.TP1 Interrupt Handler
4.read_csr (0x00) is 0x63 or 0xe3,pll unlocked ,DP IP always send the TP1 Interrupt。Measure the frequency of the AUX_SRCp/n pin with an oscilloscope,Frequencies sometimes in the 300MHZ, sometimes about 50MHZ .
Where is my problem?I do not know what the DP159 is working on,What sould I do next?
The following is my initialization Dp159 register configuration
thanks !!!
//dp159 config
//initial
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x00
./i2capp /dev/i2c-0 w 0x5e 0x09 0x36
./i2capp /dev/i2c-0 w 0x5e 0x0A 0x7B
./i2capp /dev/i2c-0 w 0x5e 0x0D 0x80
./i2capp /dev/i2c-0 w 0x5e 0x0C 0x6D
./i2capp /dev/i2c-0 w 0x5e 0x10 0x00
./i2capp /dev/i2c-0 w 0x5e 0x16 0xF1
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x01
./i2capp /dev/i2c-0 w 0x5e 0x00 0x02
./i2capp /dev/i2c-0 w 0x5e 0x04 0x80
./i2capp /dev/i2c-0 w 0x5e 0x05 0x00
./i2capp /dev/i2c-0 w 0x5e 0x08 0x00
./i2capp /dev/i2c-0 w 0x5e 0x0D 0x02
./i2capp /dev/i2c-0 w 0x5e 0x0E 0x03 //readback 0x01
./i2capp /dev/i2c-0 w 0x5e 0x01 0x01
./i2capp /dev/i2c-0 w 0x5e 0x02 0x3F // CP_CURRENT
./i2capp /dev/i2c-0 w 0x5e 0x0B 0x33
./i2capp /dev/i2c-0 w 0x5e 0xA1 0x02
./i2capp /dev/i2c-0 w 0x5e 0xA4 0x02
./i2capp /dev/i2c-0 w 0x5e 0x10 0xF0
./i2capp /dev/i2c-0 w 0x5e 0x11 0x30
./i2capp /dev/i2c-0 w 0x5e 0x14 0x00
./i2capp /dev/i2c-0 w 0x5e 0x12 0x03
./i2capp /dev/i2c-0 w 0x5e 0x13 0xFF
./i2capp /dev/i2c-0 w 0x5e 0x13 0x00
./i2capp /dev/i2c-0 w 0x5e 0x30 0xE0 //Disable Receivers except lane 0
./i2capp /dev/i2c-0 w 0x5e 0x32 0x00
./i2capp /dev/i2c-0 w 0x5e 0x31 0x00
./i2capp /dev/i2c-0 w 0x5e 0x4D 0x08
./i2capp /dev/i2c-0 w 0x5e 0x4C 0x01 //readback 0x3
./i2capp /dev/i2c-0 w 0x5e 0x34 0x01
./i2capp /dev/i2c-0 w 0x5e 0x32 0xF0
./i2capp /dev/i2c-0 w 0x5e 0x32 0x00
./i2capp /dev/i2c-0 w 0x5e 0x33 0xF0
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x00
./i2capp /dev/i2c-0 w 0x5e 0x0A 0x3B
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x01
// TP1 Interrupt Handler
./i2capp /dev/i2c-0 w 0x5e 0x00 0x02
./i2capp /dev/i2c-0 w 0x5e 0x01 0x01
./i2capp /dev/i2c-0 w 0x5e 0x0B 0x33
./i2capp /dev/i2c-0 w 0x5e 0x02 0x3F
./i2capp /dev/i2c-0 w 0x5e 0x30 0x0F //1lane 0xE1; 2LANE = 0xC3 ;4lane = 0X0F
./i2capp /dev/i2c-0 w 0x5e 0x00 0x03
./i2capp /dev/i2c-0 w 0x5e 0x4C 0x01
./i2capp /dev/i2c-0 w 0x5e 0x4D 0x18 // hbr= 0x18 hbr2 = 0x08 rbr= 0x28
./i2capp /dev/i2c-0 w 0x5e 0x10 0x0F //1lane 0xE1; 2LANE = 0xC3 ;4lane = 0X0F
./i2capp /dev/i2c-0 w 0x5e 0x00 0x23
./i2capp /dev/i2c-0 r 0x5e 0x00 //read the clock recovery
./i2capp /dev/i2c-0 w 0x5e 0x02 0x27 //hbr= 0x27 hbr2=0x5F rbr 0x1f
./i2capp /dev/i2c-0 w 0x5e 0x0B 0x30
./i2capp /dev/i2c-0 w 0x5e 0x01 0x02
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x00
./i2capp /dev/i2c-0 w 0x5e 0x16 0xF1 // 1lane=0x11 ; 2lane= 0x31; 4lane=0xf1
./i2capp /dev/i2c-0 w 0x5e 0x10 0x00
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x01
//TP2 Interrupt Handler
./i2capp /dev/i2c-0 w 0x5e 0x4C 0x03
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x00
./i2capp /dev/i2c-0 w 0x5e 0x15 0x18
./i2capp /dev/i2c-0 r 0x5e 0x18 //Read core BERT counter [7:0]
./i2capp /dev/i2c-0 r 0x5e 0x19
./i2capp /dev/i2c-0 w 0x5e 0xFF 0x01
//unplug
./i2capp /dev/i2c-0 w 0x5e 0x00 0x02
./i2capp /dev/i2c-0 w 0x5e 0x34 0x01
./i2capp /dev/i2c-0 w 0x5e 0x02 0x3F
./i2capp /dev/i2c-0 w 0x5e 0x01 0x01
./i2capp /dev/i2c-0 w 0x5e 0x0B 0x33
./i2capp /dev/i2c-0 w 0x5e 0x4D 0x08
./i2capp /dev/i2c-0 w 0x5e 0x4C 0x01
./i2capp /dev/i2c-0 w 0x5e 0x33 0xF0
./i2capp /dev/i2c-0 w 0x5e 0x10 0xF0
./i2capp /dev/i2c-0 w 0x5e 0x30 0xE0