Jag S-Type with check engine light on but car runs fine for past month

Check engine light on for past month. Car drives fine.
Diagnosis is camshaft variable timing problem and/ or worn main bearing with low oil pressure.
Can this be fixed short of getting a new engine?

Wow, that diagnosis is kinda wide apart. The only connection is the oil pressure. Is the oil pressure reading low? Low oil pressure will affect the variable valve timing, since the actuator uses oil pressure to operate. Usually, the variable valve timing actuator can be serviced without pulling the engine or stripping it down very far. But, if the problem is low oil pressure, that may require pulling the engine apart to find the problem.

The dashboard oil pressure gauge does not suggest low oil pressure. The engine has 125,000 miles on it.

You need to give us the exact Diagostic Trouble Code or DTC.

Without it, It’s anyones guess.