OSDN Git Service

hw/alpha: Provide console information to the PALcode at start-up
authorJason Thorpe <thorpej@me.com>
Sun, 13 Jun 2021 21:15:49 +0000 (14:15 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 28 Jun 2021 14:27:32 +0000 (07:27 -0700)
Redefine the a2 register passed by Qemu at start-up to also include
some configuration flags, in addition to the CPU count, and define
a flag to mirror the "-nographic" option.

Signed-off-by: Jason Thorpe <thorpej@me.com>
Message-Id: <20210613211549.18094-5-thorpej@me.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
hw/alpha/dp264.c

index 010d224..316f069 100644 (file)
@@ -72,9 +72,19 @@ static void clipper_init(MachineState *machine)
         cpus[i] = ALPHA_CPU(cpu_create(machine->cpu_type));
     }
 
+    /*
+     * arg0 -> memory size
+     * arg1 -> kernel entry point
+     * arg2 -> config word
+     *
+     * Config word: bits 0-5 -> ncpus
+     *              bit  6   -> nographics option (for HWRPB CTB)
+     *
+     * See init_hwrpb() in the PALcode.
+     */
     cpus[0]->env.trap_arg0 = ram_size;
     cpus[0]->env.trap_arg1 = 0;
-    cpus[0]->env.trap_arg2 = smp_cpus;
+    cpus[0]->env.trap_arg2 = smp_cpus | (!machine->enable_graphics << 6);
 
     /*
      * Init the chipset.  Because we're using CLIPPER IRQ mappings,