Fix compilation errors on maru specific sources
authorSeokYeon Hwang <syeon.hwang@samsung.com>
Tue, 10 Sep 2013 07:30:12 +0000 (16:30 +0900)
committerSeokYeon Hwang <syeon.hwang@samsung.com>
Tue, 10 Sep 2013 07:30:12 +0000 (16:30 +0900)
Change-Id: Icdedbc435b179a6da90d344c7b1c3dcdc55b15e9
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
tizen/src/Makefile.tizen
tizen/src/hw/maru_board.c
tizen/src/hw/maru_brightness.c
tizen/src/hw/maru_camera_common_pci.c
tizen/src/hw/maru_codec.c
tizen/src/hw/maru_overlay.c
tizen/src/hw/maru_pm.c
tizen/src/hw/maru_vga.c
tizen/src/hw/maru_vga_int.h
tizen/src/hw/virtio-gl-stub.c
tizen/src/mloop_event.c

index adf078aa320a0b85190015a2317eb11854883092..e326a64fb13a6dea07fcbf51bb96141e4f88c25b 100644 (file)
@@ -48,7 +48,7 @@ ifdef CONFIG_GL
 GL_CUR_PATH = $(SRC_PATH)/tizen/src/hw
 
 GL_CFLAGS += -I$(GL_CUR_PATH) -I$(SRC_PATH)/fpu
-GL_CFLAGS += -I$(SRC_PATH)/$(TARGET_ARCH)-softmmu $(QEMU_CFLAGS) $(CFLAGS)
+GL_CFLAGS += -I$(SRC_PATH)/$(TARGET_NAME)-softmmu $(QEMU_CFLAGS) $(CFLAGS)
 
 parse_gl_h: parse_gl_h.c
        $(CC) -g -o $@ $<
index e70390cb039c8dee424fcf2da19b4d17b2f21d29..478e96ea8ac98b0ed5e481ff10f3081ca27162d0 100644 (file)
@@ -90,6 +90,7 @@ static const int ide_iobase2[MAX_IDE_BUS] = { 0x3f6, 0x376 };
 static const int ide_irq[MAX_IDE_BUS] = { 14, 15 };
 
 static bool has_pvpanic = true;
+static bool has_pci_info = true;
 
 MemoryRegion *global_ram_memory;
 
@@ -129,6 +130,8 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
     MemoryRegion *rom_memory;
     DeviceState *icc_bridge;
     void *fw_cfg = NULL;
+    PcGuestInfo *guest_info;
+
 #if defined(__linux__)
     Display *display = XOpenDisplay(0);
     if (!display && !enable_spice) {
@@ -140,6 +143,11 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
 #endif
     struct winsys_interface *vigs_wsi = NULL;
 
+    if (xen_enabled() && xen_hvm_init() != 0) {
+        fprintf(stderr, "xen hardware virtual machine initialisation failed\n");
+        exit(1);
+    }
+
     icc_bridge = qdev_create(NULL, TYPE_ICC_BRIDGE);
     object_property_add_child(qdev_get_machine(), "icc-bridge",
                               OBJECT(icc_bridge), NULL);
@@ -161,13 +169,17 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
 
     if (pci_enabled) {
         pci_memory = g_new(MemoryRegion, 1);
-        memory_region_init(pci_memory, "pci", INT64_MAX);
+        memory_region_init(pci_memory, NULL, "pci", INT64_MAX);
         rom_memory = pci_memory;
     } else {
         pci_memory = NULL;
         rom_memory = system_memory;
     }
 
+    guest_info = pc_guest_info_init(below_4g_mem_size, above_4g_mem_size);
+    guest_info->has_pci_info = has_pci_info;
+    guest_info->isapc_ram_fw = !pci_enabled;
+
     /* allocate ram and load rom/bios */
     if (!xen_enabled()) {
        // W/A for allocate larger continuous heap.
@@ -179,7 +191,7 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
         fw_cfg = pc_memory_init(system_memory,
                        kernel_filename, kernel_cmdline, initrd_filename,
                        below_4g_mem_size, above_4g_mem_size,
-                       rom_memory, &ram_memory);
+                       rom_memory, &ram_memory, guest_info);
     }
 
     // for ramdump...
@@ -199,10 +211,7 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
                               system_memory, system_io, ram_size,
                               below_4g_mem_size,
                               0x100000000ULL - below_4g_mem_size,
-                              0x100000000ULL + above_4g_mem_size,
-                              (sizeof(hwaddr) == 4
-                               ? 0
-                               : ((uint64_t)1 << 62)),
+                              above_4g_mem_size,
                               pci_memory, ram_memory);
     } else {
         pci_bus = NULL;
@@ -257,7 +266,7 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
             dev = isa_ide_init(isa_bus, ide_iobase[i], ide_iobase2[i],
                                ide_irq[i],
                                hd[MAX_IDE_DEVS * i], hd[MAX_IDE_DEVS * i + 1]);
-            idebus[i] = qdev_get_child_bus(&dev->qdev, "ide.0");
+            idebus[i] = qdev_get_child_bus(DEVICE(dev), "ide.0");
         }
     }
 
@@ -271,8 +280,7 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
     if (pci_enabled && acpi_enabled) {
         i2c_bus *smbus;
 
-        smi_irq = qemu_allocate_irqs(pc_acpi_smi_interrupt,
-                                     x86_env_get_cpu(first_cpu), 1);
+        smi_irq = qemu_allocate_irqs(pc_acpi_smi_interrupt, first_cpu, 1);
         /* TODO: Populate SPD eeprom data.  */
         smbus = piix4_pm_init(pci_bus, piix3_devfn + 3, 0xb100,
                               gsi[9], *smi_irq,
@@ -316,6 +324,8 @@ static void maru_x86_machine_init(MemoryRegion *system_memory,
 
 static void maru_x86_board_init(QEMUMachineInitArgs *args)
 {
+    has_pci_info = false;
+
     ram_addr_t ram_size = args->ram_size;
     const char *cpu_model = args->cpu_model;
     const char *kernel_filename = args->kernel_filename;
index b694301d3e3f9acdff428c9d8bb37054fc233025..c875172d53b8594f551555604451b21f28e0cf4e 100644 (file)
@@ -193,7 +193,7 @@ static int brightness_initfn(PCIDevice *dev)
     pci_config_set_device_id(pci_conf, PCI_DEVICE_ID_VIRTUAL_BRIGHTNESS);
     pci_config_set_class(pci_conf, PCI_CLASS_DISPLAY_OTHER);
 
-    memory_region_init_io(&s->mmio_addr, &brightness_mmio_ops, s,
+    memory_region_init_io(&s->mmio_addr, OBJECT(s), &brightness_mmio_ops, s,
                             "maru_brightness_mmio", BRIGHTNESS_REG_SIZE);
     pci_register_bar(&s->dev, 1, PCI_BASE_ADDRESS_SPACE_MEMORY, &s->mmio_addr);
 
index a741492a1b4a987286f51efe306f66f763285abc..23f7e667e91f79a39841a3a1da7f40071ef537ab 100644 (file)
@@ -206,11 +206,11 @@ static int marucam_initfn(PCIDevice *dev)
 
     pci_config_set_interrupt_pin(pci_conf, 0x03);
 
-    memory_region_init_ram(&s->vram, "marucamera.ram", MARUCAM_MEM_SIZE);
+    memory_region_init_ram(&s->vram, OBJECT(s), "marucamera.ram", MARUCAM_MEM_SIZE);
     s->vaddr = memory_region_get_ram_ptr(&s->vram);
     memset(s->vaddr, 0, MARUCAM_MEM_SIZE);
 
-    memory_region_init_io(&s->mmio,
+    memory_region_init_io(&s->mmio, OBJECT(s),
                           &maru_camera_mmio_ops,
                           s,
                           "maru-camera-mmio",
index 484bb1f483a5a72e5ab7f7fcf5fabf8f5e8ed515..2c9b2db52a2794bef9b6129e28afbf3bf6f5f558 100644 (file)
@@ -1632,10 +1632,10 @@ static int codec_initfn(PCIDevice *dev)
 
     pci_config_set_interrupt_pin(pci_conf, 1);
 
-    memory_region_init_ram(&s->vram, "codec.ram", MARU_CODEC_MEM_SIZE);
+    memory_region_init_ram(&s->vram, OBJECT(s), "codec.ram", MARU_CODEC_MEM_SIZE);
     s->vaddr = memory_region_get_ram_ptr(&s->vram);
 
-    memory_region_init_io(&s->mmio, &codec_mmio_ops, s,
+    memory_region_init_io(&s->mmio, OBJECT(s), &codec_mmio_ops, s,
                         "codec-mmio", MARU_CODEC_REG_SIZE);
 
     pci_register_bar(&s->dev, 0, PCI_BASE_ADDRESS_MEM_PREFETCH, &s->vram);
index 55fbea6bdd714b732766ad72c8f61d3a14398e43..ebe77acdeb54ab3993d144bf6c7d65ddf16fb77f 100644 (file)
@@ -209,10 +209,10 @@ static int overlay_initfn(PCIDevice *dev)
     pci_config_set_device_id(pci_conf, PCI_DEVICE_ID_VIRTUAL_OVERLAY);
     pci_config_set_class(pci_conf, PCI_CLASS_DISPLAY_OTHER);
 
-    memory_region_init_ram(&s->mem_addr, "maru_overlay.ram", OVERLAY_MEM_SIZE);
+    memory_region_init_ram(&s->mem_addr, NULL, "maru_overlay.ram", OVERLAY_MEM_SIZE);
     overlay_ptr = memory_region_get_ram_ptr(&s->mem_addr);
 
-    memory_region_init_io(&s->mmio_addr, &overlay_mmio_ops,
+    memory_region_init_io(&s->mmio_addr, NULL, &overlay_mmio_ops,
                           s,
                           "maru_overlay_mmio",
                           OVERLAY_REG_SIZE);
index 7e00240be7316165dd93fae46b88e8e43f3da020..4f9bc35c192ca47c1543818f9e96764b07e6c493 100644 (file)
@@ -454,14 +454,16 @@ static void piix4_pm_powerdown_req(Notifier *n, void *opaque)
 static void piix4_pm_machine_ready(Notifier *n, void *opaque)
 {
     PIIX4PMState *s = container_of(n, PIIX4PMState, machine_ready);
+    PCIDevice *d = PCI_DEVICE(s);
+    MemoryRegion *io_as = pci_address_space_io(d);
     uint8_t *pci_conf;
 
-    pci_conf = s->dev.config;
-    pci_conf[0x5f] = (isa_is_ioport_assigned(0x378) ? 0x80 : 0) | 0x10;
+    pci_conf = d->config;
+    pci_conf[0x5f] = 0x10 |
+        (memory_region_present(io_as, 0x378) ? 0x80 : 0);
     pci_conf[0x63] = 0x60;
-    pci_conf[0x67] = (isa_is_ioport_assigned(0x3f8) ? 0x08 : 0) |
-    (isa_is_ioport_assigned(0x2f8) ? 0x90 : 0);
-
+    pci_conf[0x67] = (memory_region_present(io_as, 0x3f8) ? 0x08 : 0) |
+        (memory_region_present(io_as, 0x2f8) ? 0x90 : 0);
 }
 
 static int piix4_pm_initfn(PCIDevice *dev)
@@ -496,7 +498,7 @@ static int piix4_pm_initfn(PCIDevice *dev)
     memory_region_add_subregion(pci_address_space_io(dev),
                                 s->smb_io_base, &s->smb.io);
 
-    memory_region_init(&s->io, "maru-pm", 64);
+    memory_region_init(&s->io, OBJECT(s), "maru-pm", 64);
     memory_region_set_enabled(&s->io, false);
     memory_region_add_subregion(pci_address_space_io(dev),
                                 0, &s->io);
@@ -505,7 +507,7 @@ static int piix4_pm_initfn(PCIDevice *dev)
     acpi_pm1_evt_init(&s->ar, pm_tmr_timer, &s->io);
     acpi_pm1_cnt_init(&s->ar, &s->io, s->s4_val);
 #if defined(CONFIG_MARU)
-    memory_region_init_io(&s->ar.pm1.cnt.io, &maru_pm_cnt_ops, &s->ar, "acpi-cnt", 2);
+    memory_region_init_io(&s->ar.pm1.cnt.io, OBJECT(s), &maru_pm_cnt_ops, &s->ar, "acpi-cnt", 2);
 #endif
     acpi_gpe_init(&s->ar, GPE_LEN);
 
@@ -746,20 +748,19 @@ static int piix4_device_hotplug(DeviceState *qdev, PCIDevice *dev,
 static void piix4_acpi_system_hot_add_init(MemoryRegion *parent,
                                            PCIBus *bus, PIIX4PMState *s)
 {
-
-    memory_region_init_io(&s->io_gpe, &piix4_gpe_ops, s, "apci-gpe0",
-                          GPE_LEN);
+    memory_region_init_io(&s->io_gpe, OBJECT(s), &piix4_gpe_ops, s,
+                          "acpi-gpe0", GPE_LEN);
     memory_region_add_subregion(parent, GPE_BASE, &s->io_gpe);
 
-    memory_region_init_io(&s->io_pci, &piix4_pci_ops, s, "apci-pci-hotplug",
-                          PCI_HOTPLUG_SIZE);
+    memory_region_init_io(&s->io_pci, OBJECT(s), &piix4_pci_ops, s,
+                          "acpi-pci-hotplug", PCI_HOTPLUG_SIZE);
     memory_region_add_subregion(parent, PCI_HOTPLUG_ADDR,
                                 &s->io_pci);
-    pci_bus_hotplug(bus, piix4_device_hotplug, &s->dev.qdev);
+    pci_bus_hotplug(bus, piix4_device_hotplug, DEVICE(s));
 
     qemu_for_each_cpu(piix4_init_cpu_status, &s->gpe_cpu);
-    memory_region_init_io(&s->io_cpu, &cpu_hotplug_ops, s, "apci-cpu-hotplug",
-                          PIIX4_PROC_LEN);
+    memory_region_init_io(&s->io_cpu, OBJECT(s), &cpu_hotplug_ops, s,
+                          "acpi-cpu-hotplug", PIIX4_PROC_LEN);
     memory_region_add_subregion(parent, PIIX4_PROC_BASE, &s->io_cpu);
     s->cpu_added_notifier.notify = piix4_cpu_added_req;
     qemu_register_cpu_added_notifier(&s->cpu_added_notifier);
index 13c86792f07fa719d08c650679228d003912f853..db547c6513fd9eeb06fc8a45d684e5858badb0c7 100644 (file)
@@ -1395,7 +1395,7 @@ static const GraphicHwOps vga_ops = {
     .text_update = vga_update_text,
 };
 
-void maru_vga_common_init(VGACommonState *s)
+void maru_vga_common_init(VGACommonState *s, Object *obj)
 {
     int i, j, v, b;
 
@@ -1431,7 +1431,7 @@ void maru_vga_common_init(VGACommonState *s)
     s->vram_size_mb = s->vram_size >> 20;
 
     s->is_vbe_vmstate = 1;
-    memory_region_init_ram(&s->vram, "maru_vga.vram", s->vram_size);
+    memory_region_init_ram(&s->vram, obj, "maru_vga.vram", s->vram_size);
     vmstate_register_ram_global(&s->vram);
     xen_register_framebuffer(&s->vram);
     s->vram_ptr = memory_region_get_ram_ptr(&s->vram);
index d59a96343876d6353010b8c8a3eadc1b67a05716..1183e17c819acafcbd2307d91cc60d675ec84d37 100644 (file)
@@ -31,7 +31,7 @@
 #ifndef MARU_VGA_INT_H_
 #define MARU_VGA_INT_H_
 
-void maru_vga_common_init(VGACommonState *s);
+void maru_vga_common_init(VGACommonState *s, Object *obj);
 void maru_vga_common_fini(void);
 
 #endif /* MARU_VGA_INT_H_ */
index 76fbcf6fcedb30203d2c530a0ac4cdc2de990aa2..5a12d59c13ea63507228e9e4038d2157c58184e0 100644 (file)
@@ -16,7 +16,7 @@
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "virtio.h"
+#include "hw/virtio/virtio.h"
 
 VirtIODevice *virtio_gl_init(DeviceState *dev)
 {
index f6b1a92ab5b85132ec808d0ca738bb89a5774652..32e838b0bb2a245f1c938c24b4a595be2b077005 100644 (file)
@@ -47,6 +47,7 @@
 #include "monitor/monitor.h"
 #include "hw/pci/pci.h"
 #include "sysemu/sysemu.h"
+#include "exec/memory-internal.h"
 
 #include "emulator.h"
 #include "guest_debug.h"
@@ -303,8 +304,8 @@ static void mloop_evhandle_kbd_add(char *name)
 
     hostkbd = do_pci_device_hot_add(cur_mon, qdict);
     if (hostkbd) {
-        TRACE("virtio-keyboard device: domain %d, bus %d, slot %d, function %d\n",
-                pci_find_domain(hostkbd->bus), pci_bus_num(hostkbd->bus),
+        TRACE("virtio-keyboard device: root_bus_path %s, bus %d, slot %d, function %d\n",
+                pci_root_bus_path(hostkbd), pci_bus_num(hostkbd->bus),
                 PCI_SLOT(hostkbd->devfn), PCI_FUNC(hostkbd->devfn));
     } else {
         ERR("failed to hot_add keyboard device.\n");
@@ -368,8 +369,8 @@ static void mloop_evhandle_sdcard_attach(char *name)
     virtio_sdcard = do_pci_device_hot_add(cur_mon, qdict);
     if (virtio_sdcard) {
         INFO("hot add virtio storage device with [%s]\n", opts);
-        INFO("virtio-sdcard device: domain %d, bus %d, slot %d, function %d\n",
-            pci_find_domain(virtio_sdcard->bus), pci_bus_num(virtio_sdcard->bus),
+        INFO("virtio-sdcard device: root_bus_path %s, bus %d, slot %d, function %d\n",
+            pci_root_bus_path(virtio_sdcard), pci_bus_num(virtio_sdcard->bus),
             PCI_SLOT(virtio_sdcard->devfn), PCI_FUNC(virtio_sdcard->devfn));
     } else {
         ERR("failed to create a sdcard device.\n");