On 21/05/21 13:32, Markus Armbruster wrote:
PHASE_NO_MACHINE
   -> machine-set -> PHASE_MACHINE_CREATED ->
   -> accel-set -> PHASE_ACCEL_CREATED -> PHASE_MACHINE_INITIALIZED ->
   -> finish-machine-init -> PHASE_MACHINE_READY
   -> cont

Is machine-set one big command, or a sequence of commands, where each
command configures just one thing?

Same for accel-set.

They would be almost 1:1 mappings with -M and -accel. If we add a third command for the CPU model, machine-set and accel-set would be basically as big as device_add or object-add.

So the full flow would be

 PHASE_NO_MACHINE
    -> machine-set -> PHASE_MACHINE_CREATED ->
    -> accel-set -> PHASE_ACCEL_CREATED ->
    -> cpu-model-set -> PHASE_MACHINE_INITIALIZED ->
    -> device_add...
    -> finish-machine-init -> PHASE_MACHINE_READY
    -> cont

Permit me to go off on a tangent: how much and what kind of magic do we
want in the initialization sequence?

No magic at all, because the QMP configuration would be entirely -nodefaults. Default devices, for boards that need them, can be created by setting properties such as serial0, netdev0 in machine-set (and in no other way).

Paolo


Reply via email to