qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [6547] Add it_shift


From: Blue Swirl
Subject: [Qemu-devel] [6547] Add it_shift
Date: Sat, 07 Feb 2009 10:48:26 +0000

Revision: 6547
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6547
Author:   blueswir1
Date:     2009-02-07 10:48:26 +0000 (Sat, 07 Feb 2009)

Log Message:
-----------
Add it_shift

Modified Paths:
--------------
    trunk/hw/mac_nvram.c
    trunk/hw/ppc_chrp.c
    trunk/hw/ppc_mac.h
    trunk/hw/ppc_oldworld.c

Modified: trunk/hw/mac_nvram.c
===================================================================
--- trunk/hw/mac_nvram.c        2009-02-07 09:51:59 UTC (rev 6546)
+++ trunk/hw/mac_nvram.c        2009-02-07 10:48:26 UTC (rev 6547)
@@ -40,6 +40,7 @@
 struct MacIONVRAMState {
     target_phys_addr_t size;
     int mem_index;
+    unsigned int it_shift;
     uint8_t *data;
 };
 
@@ -75,7 +76,7 @@
 {
     MacIONVRAMState *s = opaque;
 
-    addr = (addr >> 4) & (s->size - 1);
+    addr = (addr >> s->it_shift) & (s->size - 1);
     s->data[addr] = value;
     NVR_DPRINTF("writeb addr %04x val %x\n", (int)addr, value);
 }
@@ -85,7 +86,7 @@
     MacIONVRAMState *s = opaque;
     uint32_t value;
 
-    addr = (addr >> 4) & (s->size - 1);
+    addr = (addr >> s->it_shift) & (s->size - 1);
     value = s->data[addr];
     NVR_DPRINTF("readb addr %04x val %x\n", (int)addr, value);
 
@@ -127,13 +128,15 @@
 {
 }
 
-MacIONVRAMState *macio_nvram_init (int *mem_index, target_phys_addr_t size)
+MacIONVRAMState *macio_nvram_init (int *mem_index, target_phys_addr_t size,
+                                   unsigned int it_shift)
 {
     MacIONVRAMState *s;
 
     s = qemu_mallocz(sizeof(MacIONVRAMState));
     s->data = qemu_mallocz(size);
     s->size = size;
+    s->it_shift = it_shift;
 
     s->mem_index = cpu_register_io_memory(0, nvram_read, nvram_write, s);
     *mem_index = s->mem_index;
@@ -150,7 +153,8 @@
     MacIONVRAMState *s;
 
     s = opaque;
-    cpu_register_physical_memory(mem_base, s->size << 4, s->mem_index);
+    cpu_register_physical_memory(mem_base, s->size << s->it_shift,
+                                 s->mem_index);
 }
 
 /* Set up a system OpenBIOS NVRAM partition */

Modified: trunk/hw/ppc_chrp.c
===================================================================
--- trunk/hw/ppc_chrp.c 2009-02-07 09:51:59 UTC (rev 6546)
+++ trunk/hw/ppc_chrp.c 2009-02-07 10:48:26 UTC (rev 6547)
@@ -328,7 +328,7 @@
         graphic_depth = 15;
 #if 0 /* XXX: this is ugly but needed for now, or OHW won't boot */
     /* The NewWorld NVRAM is not located in the MacIO device */
-    nvr = macio_nvram_init(&nvram_mem_index, 0x2000);
+    nvr = macio_nvram_init(&nvram_mem_index, 0x2000, 1);
     pmac_format_nvram_partition(nvr, 0x2000);
     macio_nvram_map(nvr, 0xFFF04000);
     nvram.opaque = nvr;

Modified: trunk/hw/ppc_mac.h
===================================================================
--- trunk/hw/ppc_mac.h  2009-02-07 09:51:59 UTC (rev 6546)
+++ trunk/hw/ppc_mac.h  2009-02-07 10:48:26 UTC (rev 6547)
@@ -64,7 +64,8 @@
 /* Mac NVRAM */
 typedef struct MacIONVRAMState MacIONVRAMState;
 
-MacIONVRAMState *macio_nvram_init (int *mem_index, target_phys_addr_t size);
+MacIONVRAMState *macio_nvram_init (int *mem_index, target_phys_addr_t size,
+                                   unsigned int it_shift);
 void macio_nvram_map (void *opaque, target_phys_addr_t mem_base);
 void pmac_format_nvram_partition (MacIONVRAMState *nvr, int len);
 uint32_t macio_nvram_read (void *opaque, uint32_t addr);

Modified: trunk/hw/ppc_oldworld.c
===================================================================
--- trunk/hw/ppc_oldworld.c     2009-02-07 09:51:59 UTC (rev 6546)
+++ trunk/hw/ppc_oldworld.c     2009-02-07 10:48:26 UTC (rev 6547)
@@ -357,7 +357,7 @@
     adb_kbd_init(&adb_bus);
     adb_mouse_init(&adb_bus);
 
-    nvr = macio_nvram_init(&nvram_mem_index, 0x2000);
+    nvr = macio_nvram_init(&nvram_mem_index, 0x2000, 4);
     pmac_format_nvram_partition(nvr, 0x2000);
 
     macio_init(pci_bus, PCI_DEVICE_ID_APPLE_343S1201, 1, pic_mem_index,






reply via email to

[Prev in Thread] Current Thread [Next in Thread]