From 7c470ff1eb01605337d2cdba70fde9e8c1012e1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juha=20Riihim=C3=A4ki?= Date: Sun, 28 Aug 2011 16:22:19 +0000 Subject: [PATCH] omap_gpmc: Calculate revision from OMAP model MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Juha Riihimäki [Riku Voipio: Fixes and restructuring patchset] Signed-off-by: Riku Voipio [Peter Maydell: More fixes and cleanups for upstream submission] Signed-off-by: Peter Maydell --- hw/omap_gpmc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/omap_gpmc.c b/hw/omap_gpmc.c index c86e7ed713..5c1365cf75 100644 --- a/hw/omap_gpmc.c +++ b/hw/omap_gpmc.c @@ -29,6 +29,7 @@ struct omap_gpmc_s { qemu_irq irq; MemoryRegion iomem; + uint8_t revision; uint8_t sysconfig; uint16_t irqst; uint16_t irqen; @@ -163,7 +164,7 @@ static uint64_t omap_gpmc_read(void *opaque, target_phys_addr_t addr, switch (addr) { case 0x000: /* GPMC_REVISION */ - return 0x20; + return s->revision; case 0x010: /* GPMC_SYSCONFIG */ return s->sysconfig; @@ -409,6 +410,7 @@ struct omap_gpmc_s *omap_gpmc_init(struct omap_mpu_state_s *mpu, memory_region_add_subregion(get_system_memory(), base, &s->iomem); s->irq = irq; + s->revision = cpu_class_omap3(mpu) ? 0x50 : 0x20; omap_gpmc_reset(s); return s;