> > This changes the driver behavior to choose the default machine > > model based on the CPU being used. Defaulting the machine this > > way makes it easier to use QEMU as an ISS by just specifying > > the -cpu option since a default machine that is suitable for > > emulating the full ISA can be chosen. > > > > For example, currently on ARM the ARM Integrator/CP board is > > chosen as the default machine when specifying just a CPU. > > However, this doesn't work well when passing -cpu cortex-m3 > > since on ARMv7-M processors the NVIC is a part of the architecture > > and is needed to support instructions like SVC. > > Personally I'd rather we didn't support a "default machine" at > all, at least for ARM. It does matter what board you run on, > so you need to specify.
A possible compromise is to only accept -cpu if -M is also specified. > Just to pick an obvious example, you can't stick a core > which supports VFPv4 (the A15 is the only one we have) into > the integratorcp Yes you can. Your OS probably doesn't support it, and you might have trouble persuading the OS vendor to support something that doesn't physically exist, but those are a competely separate problems. > We could reasonably add patches which made boards error > out if you tried to use them with unsupported CPUs, I guess. That suffers from a large fuzzy region containing interesting combinations that could/do work, but will probably never be created in silicon. If done properly this the QOM conversion should give you this for free. Paul