qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Anthony Liguori <anthony@codemonkey.ws>,
	Blue Swirl <blauwirbel@gmail.com>
Cc: qemu-devel@nongnu.org, Paul Brook <paul@codesourcery.com>
Subject: [Qemu-devel] [PATCH 07/10] hw/vexpress.c: Allow >4GB of RAM for Cortex-A15 daughterboard
Date: Fri, 20 Jul 2012 16:00:27 +0100	[thread overview]
Message-ID: <1342796430-16636-8-git-send-email-peter.maydell@linaro.org> (raw)
In-Reply-To: <1342796430-16636-1-git-send-email-peter.maydell@linaro.org>

Now that we have LPAE support and can handle passing 64 bit
RAM sizes to Linux via the device tree, we can lift the
restriction in the Versatile Express A15 daughterboard model
on not having more than 2GB of RAM. Allow up to 30GB, which
is the maximum that can fit in the address map before running
into the (unmodelled) aliases of the first 2GB.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 hw/vexpress.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/hw/vexpress.c b/hw/vexpress.c
index 8072c5a..b2dc8a5 100644
--- a/hw/vexpress.c
+++ b/hw/vexpress.c
@@ -284,9 +284,16 @@ static void a15_daughterboard_init(const VEDBoardInfo *daughterboard,
         cpu_irq[n] = irqp[ARM_PIC_CPU_IRQ];
     }
 
-    if (ram_size > 0x80000000) {
-        fprintf(stderr, "vexpress-a15: cannot model more than 2GB RAM\n");
-        exit(1);
+    {
+        /* We have to use a separate 64 bit variable here to avoid the gcc
+         * "comparison is always false due to limited range of data type"
+         * warning if we are on a host where ram_addr_t is 32 bits.
+         */
+        uint64_t rsz = ram_size;
+        if (rsz > (30ULL * 1024 * 1024 * 1024)) {
+            fprintf(stderr, "vexpress-a15: cannot model more than 30GB RAM\n");
+            exit(1);
+        }
     }
 
     memory_region_init_ram(ram, "vexpress.highmem", ram_size);
-- 
1.7.5.4

  parent reply	other threads:[~2012-07-20 15:00 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-20 15:00 [Qemu-devel] [PULL 00/10] arm-devs queue Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 01/10] hw/pl011.c: Avoid crash on read when no chr backend present Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 02/10] hw/arm_boot.c: Make ram_size a uint64_t Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 03/10] hw/arm_boot.c: Consistently use ram_size from arm_boot_info struct Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 04/10] hw/arm_boot.c: Check for RAM sizes exceeding ATAGS capacity Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 05/10] device_tree: Add support for reading device tree properties Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 06/10] hw/arm_boot.c: Support DTBs which use 64 bit addresses Peter Maydell
2012-07-20 15:00 ` Peter Maydell [this message]
2012-07-20 15:00 ` [Qemu-devel] [PATCH 08/10] hw/exynos4210_rtc.c: Fix calculating for value of year Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 09/10] hw/exynos4210_rtc.c: remove unnecessary code Peter Maydell
2012-07-20 15:00 ` [Qemu-devel] [PATCH 10/10] exynos4210: add Exynos4210 i2c implementation Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1342796430-16636-8-git-send-email-peter.maydell@linaro.org \
    --to=peter.maydell@linaro.org \
    --cc=anthony@codemonkey.ws \
    --cc=blauwirbel@gmail.com \
    --cc=paul@codesourcery.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).