aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--android/main.c1
-rw-r--r--hw/pc.c11
2 files changed, 11 insertions, 1 deletions
diff --git a/android/main.c b/android/main.c
index 32f4143..63e6b84 100644
--- a/android/main.c
+++ b/android/main.c
@@ -1126,6 +1126,7 @@ int main(int argc, char **argv)
p = bufprint(p, end, "qemu=1 console=ttyS0" );
#ifdef TARGET_I386
p = bufprint(p, end, " androidboot.hardware=goldfish");
+ p = bufprint(p, end, " clocksource=pit");
#endif
if (opts->shell || opts->logcat) {
diff --git a/hw/pc.c b/hw/pc.c
index 7c32211..72b6813 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -923,7 +923,7 @@ static void pc_init1(ram_addr_t ram_size,
}
#ifndef CONFIG_ANDROID
vmport_init();
-#endif
+
/* allocate RAM */
ram_addr = qemu_ram_alloc(0xa0000);
cpu_register_physical_memory(0, 0xa0000, ram_addr);
@@ -937,6 +937,15 @@ static void pc_init1(ram_addr_t ram_size,
cpu_register_physical_memory(0x100000,
below_4g_mem_size - 0x100000,
ram_addr);
+#else
+ /*
+ * Allocate a single contiguous RAM so that the goldfish
+ * framebuffer can work well especially when the frame buffer is
+ * large.
+ */
+ ram_addr = qemu_ram_alloc(below_4g_mem_size);
+ cpu_register_physical_memory(0, below_4g_mem_size, ram_addr);
+#endif
/* above 4giga memory allocation */
if (above_4g_mem_size > 0) {