Patchwork ppc_oldworld: configure screen size from qemu command line options

login
register
mail settings
Submitter Laurent Vivier
Date Aug. 4, 2009, 9:15 p.m.
Message ID <1249420557-25673-1-git-send-email-laurent@vivier.eu>
Download mbox | patch
Permalink /patch/30743/
State Superseded
Headers show

Comments

Laurent Vivier - Aug. 4, 2009, 9:15 p.m.
This patch uses the FW_CFG interface to send user requested screen size
and depth to openbios.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 hw/ppc.h          |    3 +++
 hw/ppc_oldworld.c |    5 +++++
 2 files changed, 8 insertions(+), 0 deletions(-)

Patch

diff --git a/hw/ppc.h b/hw/ppc.h
index 2ec4680..4084482 100644
--- a/hw/ppc.h
+++ b/hw/ppc.h
@@ -42,3 +42,6 @@  enum {
     ARCH_HEATHROW,
 };
 
+#define FW_CFG_PPC_WIDTH	(FW_CFG_ARCH_LOCAL + 0x00)
+#define FW_CFG_PPC_HEIGHT	(FW_CFG_ARCH_LOCAL + 0x01)
+#define FW_CFG_PPC_DEPTH	(FW_CFG_ARCH_LOCAL + 0x02)
diff --git a/hw/ppc_oldworld.c b/hw/ppc_oldworld.c
index 06e0141..549ba0c 100644
--- a/hw/ppc_oldworld.c
+++ b/hw/ppc_oldworld.c
@@ -381,6 +381,11 @@  static void ppc_heathrow_init (ram_addr_t ram_size,
     fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, initrd_base);
     fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size);
     fw_cfg_add_i16(fw_cfg, FW_CFG_BOOT_DEVICE, ppc_boot_device);
+
+    fw_cfg_add_i16(fw_cfg, FW_CFG_PPC_WIDTH, graphic_width);
+    fw_cfg_add_i16(fw_cfg, FW_CFG_PPC_HEIGHT, graphic_height);
+    fw_cfg_add_i16(fw_cfg, FW_CFG_PPC_DEPTH, graphic_depth);
+
     qemu_register_boot_set(fw_cfg_boot_set, fw_cfg);
 }