Flashing ODO means the mileage recorded on the speedo is different to the mileage recorded on the BCM, which is under the drivers seat iirc.
This may be because:
It has had a different/new speedo fitted (which will display its own mileage, not the BCM mileage)
It has had a different/new BCM fitted, which will not have the same mileage as the speedo head.
It has had the mileage reset but only had half a job done.
Most auto electricians will be able to delve in and see what the BCM mileage is, and/or correct ot so the blinking stops.
Had a D2 a while back that had had a new BCM at 6 months old, and the mileage was never coded into it, had been flashing for 5 years!