We are working with the TJA1100 as a PHY with MPC5746C.
As stated in the Datasheet and the application note for TJA1100
to run the cable diagnostics :
-> The PHY must be in normal mode and then set the Cable test bit#5 in the Extended control register (Register 17).
->Then we shall disable the link control to stop all communications.
-> Then loop untill we find the Cable test bit becomes 0 again which means the test has ended.
->And then we can get the result from the External status register (Register 25). This the sequence as I understood, but I have some weird observation:
1 - Once I set the cable test bit#5, and to check that the value has been written correctly I read the register value before setting the cable test bit and after to found that the bit is didn't changed. As if I did not change anything.
Also this happened exactly when I cleared the Link control once I read the register to check the resetting of the bit is done or not I found that the register has the previous value before resetting the link control bit.
2 - So for that reason when I force an open or short circuit to the wires, the results always gives that the cable is Ok.
3 - Also even if I didn't that check and let everything run without double checking every time I got that the cable result is Ok without any problems while I'm forcing the open or the short circuit.