In the IBL from C:\ti\mcsdk_2_01_02_06\tools\boot_loader\ibl, I modified the iblPCIeWorkaround() function to write a different value to the PCIE_SERDES_CFGPLL register. Instead of "DEVICE_REG32_W (PCIE_SERDES_CFG_PLL, 0x01C9);", I use "DEVICE_REG32_W (PCIE_SERDES_CFG_PLL, 0x01C9 | (2 << 11));".
After execution of the IBL, I run the CCS debugger to view the value at address 0x2620358. It returns a value of 0x000001c9. This is the default value according to sprugs6d.pdf section 2.3.1.1 "PCIe SerDes Configuration Register (PCIE_SERDES_CFGPLL)".
Why can I not change the value of the PCIE_SERDES_CFGPLL register? What do I need to do to change the value of this register?
I have also tried to comment out the following lines in devicePllConfig():
*((Uint32 *)0x2620038) = 0x83e70b13;
*((Uint32 *)0x262003c) = 0x95a4f1e0;
This had no effect, i.e. I continued to see 0x000001c9 when reading address 0x2620358 using the CCS debugger.
I am using a TMS320C6678, and the code I am modifying is in C:\ti\mcsdk_2_01_02_06\tools\boot_loader\ibl\src\device\c66x\c66xinit.c.