Carl-Daniel Hailfinger wrote:
If someone deliberately changes that register,
Which register? I couldn't find one. :\
See the patch hunk above. Look for CD6 in the SB600 RRG. Notice CD6 is PM_INDEX. CD7 is PM_DATA. Look at section 2.3.3.2 Power Management (PM) Registers. 8F is FakeAsrEn. FakeAsrEn has two interesting fields: UseBypassRom and BypassRomSel.
Fake is the key part of those names. They are overrides only.
Basically, the patch hunk above does simply remove the forcing of SPI access and relies on the default boot-up method. Back when you NAKed that change, I wondered why but I assumed you wanted some more design to go into it.
The register can not be read to determine what the system booted from as far as I understand.
Thus it is not possible to determine whether to use the SB600 SPI driver or use physical address reads and writes.
For some operations it does not matter, but probe and erase for SPI chips does not work with only physical address accesses.
I think the patch is committable,
Please reconsider?
//Peter