There are pretty much three reasons to default to uncached, as far as I
understand:
1. De facto historical practice (follow the MTRRs);
2. Conservatism (failure mode less drastic);
3. Compatibility with other architectures.
Arguably, the right thing is to not even have ioremap() anymore, just
ioremap_{cache,nocache,wc} and consider any unconverted ioremap() as a
flag to audit that particular piece of code.
I don't think that can be done "instantly", though, so defaulting
ioremap() to uncached (as it apparently has been on other arches
already?) is the conservative option in the meantime.
-hpa
--