Further debugging. I've found that if during u-boot, the display has any timeout errors, the linux kernel then fails with the error as posted. If I disable screen init in uboot, Linux will then boot properly. I think there is more than one issue.
1) There may be some hardware issue. We don't have a good explanation why it works fine on some boards though. The problem does not seem to follow display or daughter boards. Only the imx8m plus board.
2) Linux sec-mipi-dsim driver or one of it's parent clock control drivers (media-blk-ctl perhaps) does not properly init everything.. or else uboot leaves it in such a state that it fails to init right.