Skip to contentSkip to conversation

qemu-kvm: Remove broken ia64 fragments

PATCH In review Jan Kiszka 5 participants 6 messages Sep 23, 2011 – Oct 4, 2011

Subsystems (2)
lore
Share & tools
lore

Jan Kiszka

author
#0 lore raw

PATCH 1/1 qemu-kvm: Remove broken ia64 fragments

This target no longer builds since (at least) 0.14, and no one bothered fixing it. Remove any diff to upstream before ia64 emulation pops up there and causes serious merge pain here.

---

I just want to score in "lines removed". :)

 Makefile.target         |   12 -
 cache-utils.h           |   21 --
 configure               |   10 -
 cpu-exec.c              |    4 -
 exec.c                  |    9 +-
 hw/acpi_piix4.c         |    7 -
 hw/device-assignment.c  |    4 -
 hw/ipf.c                |  707 ----------------------------------------------
 hw/pci.c                |    4 -
 hw/vga.c                |    3 -
 ia64.ld                 |    2 +-
 ia64intrin.h            |  150 ----------
 oslib-posix.c           |    4 -
 qemu-kvm-ia64.c         |  145 ----------
 qemu-kvm.h              |    5 -
 qemu-options.hx         |    2 -
 target-ia64/cpu.h       |   85 ------
 target-ia64/exec.h      |   61 ----
 target-ia64/fake-exec.c |   50 ----
 target-ia64/firmware.c  |  715 -----------------------------------------------
 target-ia64/firmware.h  |   62 ----
 target-ia64/helper.c    |    5 -
 target-ia64/libkvm.c    |   82 ------
 target-ia64/libkvm.h    |   31 --
 target-ia64/machine.c   |   36 ---
 target-ia64/op.c        |   22 --
 target-ia64/op_helper.c |  104 -------
 target-ia64/translate.c |   39 ---
 vl.c                    |    6 -
 29 files changed, 2 insertions(+), 2385 deletions(-)
 delete mode 100644 hw/ipf.c
 delete mode 100644 ia64intrin.h
 delete mode 100644 qemu-kvm-ia64.c
 delete mode 100644 target-ia64/cpu.h
 delete mode 100644 target-ia64/exec.h
 delete mode 100644 target-ia64/fake-exec.c
 delete mode 100644 target-ia64/firmware.c
 delete mode 100644 target-ia64/firmware.h
 delete mode 100644 target-ia64/helper.c
 delete mode 100644 target-ia64/libkvm.c
 delete mode 100644 target-ia64/libkvm.h
 delete mode 100644 target-ia64/machine.c
 delete mode 100644 target-ia64/op.c
 delete mode 100644 target-ia64/op_helper.c
 delete mode 100644 target-ia64/translate.c
Makefile.target +0 -12
index 1c6f230..621e4f2 100644
@@ -242,13 +242,6 @@ obj-i386-y += pcspk.o i8254.o
 obj-i386-$(CONFIG_KVM_PIT) += i8254-kvm.o
 obj-i386-$(CONFIG_KVM_DEVICE_ASSIGNMENT) += device-assignment.o
 
-# Hardware support
-obj-ia64-y += ide.o pckbd.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
-obj-ia64-y += fdc.o mc146818rtc.o serial.o i8259.o ipf.o
-obj-ia64-y += cirrus_vga.o parallel.o acpi.o piix_pci.o
-obj-ia64-y += usb-uhci.o
-obj-ia64-$(CONFIG_KVM_DEVICE_ASSIGNMENT) += device-assignment.o
-
 # shared objects
 obj-ppc-y = ppc.o
 obj-ppc-y += vga.o
@@ -391,11 +384,6 @@ obj-s390x-y = s390-virtio-bus.o s390-virtio.o
 obj-alpha-y = i8259.o mc146818rtc.o
 obj-alpha-y += vga.o cirrus_vga.o
 
-ifeq ($(TARGET_ARCH), ia64)
-firmware.o: firmware.c
-	$(CC) $(HELPER_CFLAGS) $(CPPFLAGS) $(BASE_CFLAGS) -c -o $@ $<
-endif
-
 main.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
 
 monitor.o: hmp-commands.h qmp-commands.h
cache-utils.h +0 -21
index ee0baef..0b65907 100644
@@ -34,28 +34,7 @@ static inline void flush_icache_range(unsigned long start, unsigned long stop)
     asm volatile ("isync" : : : "memory");
 }
 
-/*
- * Is this correct for PPC?
- */
-static inline void dma_flush_range(unsigned long start, unsigned long stop)
-{
-}
-
-#elif defined(__ia64__)
-static inline void flush_icache_range(unsigned long start, unsigned long stop)
-{
-    while (start < stop) {
-	asm volatile ("fc %0" :: "r"(start));
-	start += 32;
-    }
-    asm volatile (";;sync.i;;srlz.i;;");
-}
-#define dma_flush_range(start, end) flush_icache_range(start, end)
-#define qemu_cache_utils_init(envp) do { (void) (envp); } while (0)
 #else
-static inline void dma_flush_range(unsigned long start, unsigned long stop)
-{
-}
 #define qemu_cache_utils_init(envp) do { (void) (envp); } while (0)
 #endif
 
configure +0 -10
index ff2332b..78ed911 100755
@@ -482,13 +482,6 @@ Haiku)
   if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
     audio_possible_drivers="$audio_possible_drivers fmod"
   fi
-  if [ "$cpu" = "ia64" ] ; then
-     xen="no"
-     target_list="ia64-softmmu"
-     cpu_emulation="no"
-     gdbstub="no"
-     slirp="no"
-  fi
 ;;
 esac
 
@@ -3275,9 +3268,6 @@ case "$target_arch2" in
     target_phys_bitsd
     target_long_alignment=8
   ;;
-  ia64)
-    target_phys_bitsd
-  ;;
   alpha)
     target_phys_bitsd
     target_long_alignment=8
cpu-exec.c +0 -4
index f224335..de0d716 100644
@@ -19,9 +19,7 @@
 #include "config.h"
 #include "cpu.h"
 #include "disas.h"
-#if !defined(TARGET_IA64)
 #include "tcg.h"
-#endif
 #include "qemu-barrier.h"
 
 int tb_invalidated_flag;
@@ -224,7 +222,6 @@ int cpu_exec(CPUState *env)
 #elif defined(TARGET_SH4)
 #elif defined(TARGET_CRIS)
 #elif defined(TARGET_S390X)
-#elif defined(TARGET_IA64)
     /* XXXXX */
 #else
 #error unsupported target CPU
@@ -616,7 +613,6 @@ int cpu_exec(CPUState *env)
 #elif defined(TARGET_MICROBLAZE)
 #elif defined(TARGET_MIPS)
 #elif defined(TARGET_SH4)
-#elif defined(TARGET_IA64)
 #elif defined(TARGET_ALPHA)
 #elif defined(TARGET_CRIS)
 #elif defined(TARGET_S390X)
exec.c +1 -8
index 0c818bc..f188549 100644
@@ -28,10 +28,7 @@
 #include "cpu.h"
 #include "cache-utils.h"
 
-#if !defined(TARGET_IA64)
 #include "tcg.h"
-#endif
-
 #include "hw/hw.h"
 #include "hw/qdev.h"
 #include "osdep.h"
@@ -4156,8 +4153,6 @@ void *cpu_physical_memory_map(target_phys_addr_t addr,
 void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
                                int is_write, target_phys_addr_t access_len)
 {
-    unsigned long flush_len = (unsigned long)access_len;
-
     if (buffer != bounce.buffer) {
         if (is_write) {
             ram_addr_t addr1 = qemu_ram_addr_from_host_nofail(buffer);
@@ -4175,9 +4170,7 @@ void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
                 }
                 addr1 += l;
                 access_len -= l;
-	    }
-	    dma_flush_range((unsigned long)buffer,
-			    (unsigned long)buffer + flush_len);
+            }
         }
         if (xen_enabled()) {
             xen_invalidate_map_cache_entry(buffer);
hw/acpi_piix4.c +0 -7
index 44eb8ae..3ec01d6 100644
@@ -350,13 +350,6 @@ static int piix4_pm_initfn(PCIDevice *dev)
 
     pci_conf[0x40] = 0x01; /* PM io base read only bit */
 
-#if defined(TARGET_IA64)
-    pci_conf[0x40] = 0x41; /* PM io base read only bit */
-    pci_conf[0x41] = 0x1f;
-    pm_write_config(s, 0x80, 0x01, 1); /*Set default pm_io_base 0x1f40*/
-    s->pmcntrl = SCI_EN;
-#endif
-
     /* APM */
     apm_init(&s->apm, apm_ctrl_changed, s);
 
hw/device-assignment.c +0 -4
index 288f80c..3c73cea 100644
@@ -819,10 +819,6 @@ static int assign_irq(AssignedDevice *dev)
     irq = pci_map_irq(&dev->dev, dev->intpin);
     irq = piix_get_irq(irq);
 
-#ifdef TARGET_IA64
-    irq = ipf_map_irq(&dev->dev, irq);
-#endif
-
     if (dev->girq = irq)
         return r;
 
hw/ipf.c deleted +0 -707

707 lines not on this page · raw message

hw/pci.c +0 -4
index 4d8845c..330a0fe 100644
@@ -1227,10 +1227,6 @@ static void pci_set_irq(void *opaque, int irq_num, int level)
     if (!change)
         return;
 
-#if defined(TARGET_IA64)
-    ioapic_set_irq(pci_dev, irq_num, level);
-#endif
-
     pci_set_irq_state(pci_dev, irq_num, level);
     pci_update_irq_status(pci_dev);
     if (pci_irq_disabled(pci_dev))
hw/vga.c +0 -3
index 8a24f0d..125fb29 100644
@@ -1855,9 +1855,6 @@ static void vga_update_display(void *opaque)
             vga_draw_text(s, full_update);
             break;
         case GMODE_GRAPH:
-#ifdef TARGET_IA64
-            full_update = 1;
-#endif
             vga_draw_graphic(s, full_update);
             break;
         case GMODE_BLANK:
ia64.ld +1 -1
index 081aaf1..0c37796 100644
@@ -7,7 +7,7 @@ ENTRY(_start)
 SECTIONS
 {
   /* Read-only sections, merged into text segment: */
-  PROVIDE (__executable_start = 0x4000000060000000); . = 0x4000000060000000 + SIZEOF_HEADERS;
+  PROVIDE (__executable_start = 0x60000000); . = 0x60000000 + SIZEOF_HEADERS;
   .interp         : { *(.interp) }
   .hash           : { *(.hash) }
   .dynsym         : { *(.dynsym) }
ia64intrin.h deleted +0 -150

150 lines not on this page · raw message

oslib-posix.c +0 -4
index 637fb78..196099c 100644
@@ -80,11 +80,7 @@ void *qemu_memalign(size_t alignment, size_t size)
 void *qemu_vmalloc(size_t size)
 {
     void *ptr;
-#ifndef __ia64__
     ptr = qemu_memalign(getpagesize(), size);
-#else
-    ptr = qemu_memalign(65536, size);
-#endif
     trace_qemu_vmalloc(size, ptr);
     return ptr;
 }
qemu-kvm-ia64.c deleted +0 -145

145 lines not on this page · raw message

qemu-kvm.h +0 -5
index cb474fc..2bd5602 100644
@@ -27,13 +27,8 @@
 
 /* FIXME: share this number with kvm */
 /* FIXME: or dynamically alloc/realloc regions */
-#if defined(__ia64__)
-#define KVM_MAX_NUM_MEM_REGIONS 32u
-#define MAX_VCPUS 256
-#else
 #define KVM_MAX_NUM_MEM_REGIONS 32u
 #define MAX_VCPUS 16
-#endif
 
 #include "kvm.h"
 
qemu-options.hx +0 -2
index 5d9636e..df95cb2 100644
@@ -2478,8 +2478,6 @@ DEF("no-kvm-pit-reinjection", 0, QEMU_OPTION_no_kvm_pit_reinjection,
     "-no-kvm-pit-reinjection\n"
     "                disable KVM kernel mode PIT interrupt reinjection\n",
     QEMU_ARCH_I386)
-DEF("nvram", HAS_ARG, QEMU_OPTION_nvram,
-    "-nvram FILE     provide ia64 nvram contents\n", QEMU_ARCH_ALL)
 DEF("tdf", 0, QEMU_OPTION_tdf,
     "-tdf            enable guest time drift compensation\n", QEMU_ARCH_ALL)
 DEF("kvm-shadow-memory", HAS_ARG, QEMU_OPTION_kvm_shadow_memory,
target-ia64/cpu.h deleted +0 -85

85 lines not on this page · raw message

target-ia64/exec.h deleted +0 -61

61 lines not on this page · raw message

target-ia64/fake-exec.c deleted +0 -50

50 lines not on this page · raw message

target-ia64/firmware.c deleted +0 -715

715 lines not on this page · raw message

target-ia64/firmware.h deleted +0 -62

62 lines not on this page · raw message

target-ia64/helper.c deleted +0 -5
deleted file mode 100644
index 4a94dca..0000000
@@ -1,5 +0,0 @@
-
-/*
- *  IA64 emulation helpers for qemu. (Leave it as blank now.)
- *
- */
target-ia64/libkvm.c deleted +0 -82

82 lines not on this page · raw message

target-ia64/libkvm.h deleted +0 -31
deleted file mode 100644
index 417f7f1..0000000
@@ -1,31 +0,0 @@
-/*
- * This header is for functions & variables that will ONLY be
- * used inside libkvm for x86.
- * THESE ARE NOT EXPOSED TO THE USER AND ARE ONLY FOR USE
- * WITHIN LIBKVM.
- *
- * derived from libkvm.c
- *
- * Copyright (C) 2006 Qumranet, Inc.
- *
- * Authors:
- *	Avi Kivity   <[email protected]>
- *	Yaniv Kamay  <[email protected]>
- *
- * This work is licensed under the GNU LGPL license, version 2.
- */
-
-#ifndef KVM_IA64_H
-#define KVM_IA64_H
-
-#include "libkvm-all.h"
-
-extern int kvm_page_size;
-
-#define PAGE_SIZE kvm_page_size
-#define PAGE_MASK (~(kvm_page_size - 1))
-
-#define ia64_mf()	asm volatile ("mf" ::: "memory")
-#define smp_wmb()	ia64_mf()
-
-#endif
target-ia64/machine.c deleted +0 -36
deleted file mode 100644
index 8cf5bdd..0000000
@@ -1,36 +0,0 @@
-#include "hw/hw.h"
-#include "hw/boards.h"
-
-#include "exec-all.h"
-#include "qemu-kvm.h"
-
-void kvm_arch_save_mpstate(CPUState *env);
-void kvm_arch_load_mpstate(CPUState *env);
-
-void cpu_save(QEMUFile *f, void *opaque)
-{
-    CPUState *env = opaque;
-
-    if (kvm_enabled()) {
-        kvm_arch_save_mpstate(env);
-    }
-}
-
-int cpu_load(QEMUFile *f, void *opaque, int version_id)
-{
-    CPUState *env = opaque;
-
-    if (kvm_enabled()) {
-        kvm_arch_load_mpstate(env);
-    }
-    return 0;
-}
-
-extern QEMUMachine ipf_machine;
-
-static void ipf_machine_init(void)
-{
-    qemu_register_machine(&ipf_machine);
-}
-
-machine_init(ipf_machine_init);
target-ia64/op.c deleted +0 -22
deleted file mode 100644
index f7301c6..0000000
@@ -1,22 +0,0 @@
-/*
- *  IA64 micro operations
- *
- *  Leave it blank for future implementation
- *
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-
target-ia64/op_helper.c deleted +0 -104

104 lines not on this page · raw message

target-ia64/translate.c deleted +0 -39
deleted file mode 100644
index 86f48f5..0000000
@@ -1,39 +0,0 @@
-/*
- *  translation.c : IA64 translation code.
- *  Just put it as blank now, and implement it later.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-#include <stdarg.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <inttypes.h>
-
-static uint16_t *gen_opc_ptr;
-
-#include "cpu.h"
-#include "exec-all.h"
-#include "disas.h"
-#include "gen-op.h"
-
-int gen_intermediate_code(CPUState *env, TranslationBlock *tb)
-{
-    return 0;
-}
-int gen_intermediate_code_pc(CPUState *env, TranslationBlock *tb)
-{
-    return 0;
-}
vl.c +0 -6
index 4654318..9af541b 100644
@@ -231,7 +231,6 @@ int alt_grab = 0;
 int ctrl_grab = 0;
 unsigned int nb_prom_envs = 0;
 const char *prom_envs[MAX_PROM_ENVS];
-const char *nvram = NULL;
 int boot_menu;
 uint8_t *boot_splash_filedata;
 int boot_splash_filedata_size;
@@ -2998,11 +2997,6 @@ int main(int argc, char **argv, char **envp)
                 default_cdrom = 0;
                 default_sdcard = 0;
                 break;
-#ifndef _WIN32
-            case QEMU_OPTION_nvram:
-                nvram = optarg;
-                break;
-#endif
             case QEMU_OPTION_xen_domid:
                 if (!(xen_available())) {
                     printf("Option %s not supported for this target\n", popt->name);
Signature · 1 line
1.7.3.4
Acked-by on v1 1/1
#2 lore raw
In reply to Jan Kiszka
Quoted 5 lines · Jan Kiszka

This target no longer builds since (at least) 0.14, and no one bothered fixing it. Remove any diff to upstream before ia64 emulation pops up there and causes serious merge pain here.

As long as we still have the git history for whoever wants to dive into emulation, I'm fine. In fact, it might be worth to take a look at the kernel parts too and remove them.

Alex

#3 lore raw
In reply to Jan Kiszka
Quoted 5 lines · Jan Kiszka

This target no longer builds since (at least) 0.14, and no one bothered fixing it. Remove any diff to upstream before ia64 emulation pops up there and causes serious merge pain here.

Jan,

Can you please regenerate the patch against master?

#4 lore raw

PATCH v2 1/1 qemu-kvm: Remove broken ia64 fragments

From: Jan Kiszka <[email protected]>

This target no longer builds since (at least) 0.14, and no one bothered fixing it. Remove any diff to upstream before ia64 emulation pops up there and causes serious merge pain here.

---

Rebased as requested.

 Makefile.target         |   12 -
 cache-utils.h           |   21 --
 configure               |   10 -
 cpu-exec.c              |    4 -
 exec.c                  |    9 +-
 hw/acpi_piix4.c         |    7 -
 hw/device-assignment.c  |    4 -
 hw/ipf.c                |  707 ----------------------------------------------
 hw/pci.c                |    4 -
 hw/vga.c                |    3 -
 ia64.ld                 |    2 +-
 ia64intrin.h            |  150 ----------
 oslib-posix.c           |    4 -
 qemu-kvm-ia64.c         |  145 ----------
 qemu-kvm.h              |    5 -
 qemu-options.hx         |    2 -
 target-ia64/cpu.h       |   85 ------
 target-ia64/exec.h      |   61 ----
 target-ia64/fake-exec.c |   50 ----
 target-ia64/firmware.c  |  715 -----------------------------------------------
 target-ia64/firmware.h  |   62 ----
 target-ia64/helper.c    |    5 -
 target-ia64/libkvm.c    |   82 ------
 target-ia64/libkvm.h    |   31 --
 target-ia64/machine.c   |   36 ---
 target-ia64/op.c        |   22 --
 target-ia64/op_helper.c |  104 -------
 target-ia64/translate.c |   39 ---
 vl.c                    |    6 -
 29 files changed, 2 insertions(+), 2385 deletions(-)
 delete mode 100644 hw/ipf.c
 delete mode 100644 ia64intrin.h
 delete mode 100644 qemu-kvm-ia64.c
 delete mode 100644 target-ia64/cpu.h
 delete mode 100644 target-ia64/exec.h
 delete mode 100644 target-ia64/fake-exec.c
 delete mode 100644 target-ia64/firmware.c
 delete mode 100644 target-ia64/firmware.h
 delete mode 100644 target-ia64/helper.c
 delete mode 100644 target-ia64/libkvm.c
 delete mode 100644 target-ia64/libkvm.h
 delete mode 100644 target-ia64/machine.c
 delete mode 100644 target-ia64/op.c
 delete mode 100644 target-ia64/op_helper.c
 delete mode 100644 target-ia64/translate.c
Makefile.target +0 -12
index 24a0015..324b4f1 100644
@@ -241,13 +241,6 @@ obj-i386-y += pcspk.o i8254.o
 obj-i386-$(CONFIG_KVM_PIT) += i8254-kvm.o
 obj-i386-$(CONFIG_KVM_DEVICE_ASSIGNMENT) += device-assignment.o
 
-# Hardware support
-obj-ia64-y += ide.o pckbd.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
-obj-ia64-y += fdc.o mc146818rtc.o serial.o i8259.o ipf.o
-obj-ia64-y += cirrus_vga.o parallel.o acpi.o piix_pci.o
-obj-ia64-y += usb-uhci.o
-obj-ia64-$(CONFIG_KVM_DEVICE_ASSIGNMENT) += device-assignment.o
-
 # shared objects
 obj-ppc-y = ppc.o
 obj-ppc-y += vga.o
@@ -395,11 +388,6 @@ obj-xtensa-y += xtensa_sample.o
 obj-xtensa-y += xtensa_dc232b.o
 obj-xtensa-y += xtensa-semi.o
 
-ifeq ($(TARGET_ARCH), ia64)
-firmware.o: firmware.c
-	$(CC) $(HELPER_CFLAGS) $(CPPFLAGS) $(BASE_CFLAGS) -c -o $@ $<
-endif
-
 main.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
 
 monitor.o: hmp-commands.h qmp-commands.h
cache-utils.h +0 -21
index ee0baef..0b65907 100644
@@ -34,28 +34,7 @@ static inline void flush_icache_range(unsigned long start, unsigned long stop)
     asm volatile ("isync" : : : "memory");
 }
 
-/*
- * Is this correct for PPC?
- */
-static inline void dma_flush_range(unsigned long start, unsigned long stop)
-{
-}
-
-#elif defined(__ia64__)
-static inline void flush_icache_range(unsigned long start, unsigned long stop)
-{
-    while (start < stop) {
-	asm volatile ("fc %0" :: "r"(start));
-	start += 32;
-    }
-    asm volatile (";;sync.i;;srlz.i;;");
-}
-#define dma_flush_range(start, end) flush_icache_range(start, end)
-#define qemu_cache_utils_init(envp) do { (void) (envp); } while (0)
 #else
-static inline void dma_flush_range(unsigned long start, unsigned long stop)
-{
-}
 #define qemu_cache_utils_init(envp) do { (void) (envp); } while (0)
 #endif
 
configure +0 -10
index f6e0653..94c7d31 100755
@@ -482,13 +482,6 @@ Haiku)
   if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
     audio_possible_drivers="$audio_possible_drivers fmod"
   fi
-  if [ "$cpu" = "ia64" ] ; then
-     xen="no"
-     target_list="ia64-softmmu"
-     cpu_emulation="no"
-     gdbstub="no"
-     slirp="no"
-  fi
 ;;
 esac
 
@@ -3257,9 +3250,6 @@ case "$target_arch2" in
     target_phys_bitsd
     target_long_alignment=8
   ;;
-  ia64)
-    target_phys_bitsd
-  ;;
   alpha)
     target_phys_bitsd
     target_long_alignment=8
cpu-exec.c +0 -4
index 5c156ac..aef66f2 100644
@@ -19,9 +19,7 @@
 #include "config.h"
 #include "cpu.h"
 #include "disas.h"
-#if !defined(TARGET_IA64)
 #include "tcg.h"
-#endif
 #include "qemu-barrier.h"
 
 int tb_invalidated_flag;
@@ -226,7 +224,6 @@ int cpu_exec(CPUState *env)
 #elif defined(TARGET_CRIS)
 #elif defined(TARGET_S390X)
 #elif defined(TARGET_XTENSA)
-#elif defined(TARGET_IA64)
     /* XXXXX */
 #else
 #error unsupported target CPU
@@ -624,7 +621,6 @@ int cpu_exec(CPUState *env)
 #elif defined(TARGET_MICROBLAZE)
 #elif defined(TARGET_MIPS)
 #elif defined(TARGET_SH4)
-#elif defined(TARGET_IA64)
 #elif defined(TARGET_ALPHA)
 #elif defined(TARGET_CRIS)
 #elif defined(TARGET_S390X)
exec.c +1 -8
index 76e8c76..8578063 100644
@@ -28,10 +28,7 @@
 #include "cpu.h"
 #include "cache-utils.h"
 
-#if !defined(TARGET_IA64)
 #include "tcg.h"
-#endif
-
 #include "hw/hw.h"
 #include "hw/qdev.h"
 #include "osdep.h"
@@ -4149,8 +4146,6 @@ void *cpu_physical_memory_map(target_phys_addr_t addr,
 void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
                                int is_write, target_phys_addr_t access_len)
 {
-    unsigned long flush_len = (unsigned long)access_len;
-
     if (buffer != bounce.buffer) {
         if (is_write) {
             ram_addr_t addr1 = qemu_ram_addr_from_host_nofail(buffer);
@@ -4168,9 +4163,7 @@ void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
                 }
                 addr1 += l;
                 access_len -= l;
-	    }
-	    dma_flush_range((unsigned long)buffer,
-			    (unsigned long)buffer + flush_len);
+            }
         }
         if (xen_enabled()) {
             xen_invalidate_map_cache_entry(buffer);
hw/acpi_piix4.c +0 -7
index 44eb8ae..3ec01d6 100644
@@ -350,13 +350,6 @@ static int piix4_pm_initfn(PCIDevice *dev)
 
     pci_conf[0x40] = 0x01; /* PM io base read only bit */
 
-#if defined(TARGET_IA64)
-    pci_conf[0x40] = 0x41; /* PM io base read only bit */
-    pci_conf[0x41] = 0x1f;
-    pm_write_config(s, 0x80, 0x01, 1); /*Set default pm_io_base 0x1f40*/
-    s->pmcntrl = SCI_EN;
-#endif
-
     /* APM */
     apm_init(&s->apm, apm_ctrl_changed, s);
 
hw/device-assignment.c +0 -4
index f0a6ca9..0bd2cd0 100644
@@ -819,10 +819,6 @@ static int assign_irq(AssignedDevice *dev)
     irq = pci_map_irq(&dev->dev, dev->intpin);
     irq = piix_get_irq(irq);
 
-#ifdef TARGET_IA64
-    irq = ipf_map_irq(&dev->dev, irq);
-#endif
-
     if (dev->girq = irq)
         return r;
 
hw/ipf.c deleted +0 -707

707 lines not on this page · raw message

hw/pci.c +0 -4
index 98ebfa5..3c5d642 100644
@@ -1165,10 +1165,6 @@ static void pci_set_irq(void *opaque, int irq_num, int level)
     if (!change)
         return;
 
-#if defined(TARGET_IA64)
-    ioapic_set_irq(pci_dev, irq_num, level);
-#endif
-
     pci_set_irq_state(pci_dev, irq_num, level);
     pci_update_irq_status(pci_dev);
     if (pci_irq_disabled(pci_dev))
hw/vga.c +0 -3
index e9f07ee..f9a6014 100644
@@ -1856,9 +1856,6 @@ static void vga_update_display(void *opaque)
             vga_draw_text(s, full_update);
             break;
         case GMODE_GRAPH:
-#ifdef TARGET_IA64
-            full_update = 1;
-#endif
             vga_draw_graphic(s, full_update);
             break;
         case GMODE_BLANK:
ia64.ld +1 -1
index 081aaf1..0c37796 100644
@@ -7,7 +7,7 @@ ENTRY(_start)
 SECTIONS
 {
   /* Read-only sections, merged into text segment: */
-  PROVIDE (__executable_start = 0x4000000060000000); . = 0x4000000060000000 + SIZEOF_HEADERS;
+  PROVIDE (__executable_start = 0x60000000); . = 0x60000000 + SIZEOF_HEADERS;
   .interp         : { *(.interp) }
   .hash           : { *(.hash) }
   .dynsym         : { *(.dynsym) }
ia64intrin.h deleted +0 -150

150 lines not on this page · raw message

oslib-posix.c +0 -4
index 0c853cd..a304fb0 100644
@@ -90,11 +90,7 @@ void *qemu_vmalloc(size_t size)
     size_t align = QEMU_VMALLOC_ALIGN;
 
     if (size < align) {
-#ifndef __ia64__
         align = getpagesize();
-#else
-        align = 65536;
-#endif
     }
     ptr = qemu_memalign(align, size);
     trace_qemu_vmalloc(size, ptr);
qemu-kvm-ia64.c deleted +0 -145

145 lines not on this page · raw message

qemu-kvm.h +0 -5
index cb474fc..2bd5602 100644
@@ -27,13 +27,8 @@
 
 /* FIXME: share this number with kvm */
 /* FIXME: or dynamically alloc/realloc regions */
-#if defined(__ia64__)
-#define KVM_MAX_NUM_MEM_REGIONS 32u
-#define MAX_VCPUS 256
-#else
 #define KVM_MAX_NUM_MEM_REGIONS 32u
 #define MAX_VCPUS 16
-#endif
 
 #include "kvm.h"
 
qemu-options.hx +0 -2
index 9d21e6d..fbebab3 100644
@@ -2478,8 +2478,6 @@ DEF("no-kvm-pit-reinjection", 0, QEMU_OPTION_no_kvm_pit_reinjection,
     "-no-kvm-pit-reinjection\n"
     "                disable KVM kernel mode PIT interrupt reinjection\n",
     QEMU_ARCH_I386)
-DEF("nvram", HAS_ARG, QEMU_OPTION_nvram,
-    "-nvram FILE     provide ia64 nvram contents\n", QEMU_ARCH_ALL)
 DEF("tdf", 0, QEMU_OPTION_tdf,
     "-tdf            enable guest time drift compensation\n", QEMU_ARCH_ALL)
 DEF("kvm-shadow-memory", HAS_ARG, QEMU_OPTION_kvm_shadow_memory,
target-ia64/cpu.h deleted +0 -85

85 lines not on this page · raw message

target-ia64/exec.h deleted +0 -61

61 lines not on this page · raw message

target-ia64/fake-exec.c deleted +0 -50

50 lines not on this page · raw message

target-ia64/firmware.c deleted +0 -715

715 lines not on this page · raw message

target-ia64/firmware.h deleted +0 -62

62 lines not on this page · raw message

target-ia64/helper.c deleted +0 -5
deleted file mode 100644
index 4a94dca..0000000
@@ -1,5 +0,0 @@
-
-/*
- *  IA64 emulation helpers for qemu. (Leave it as blank now.)
- *
- */
target-ia64/libkvm.c deleted +0 -82

82 lines not on this page · raw message

target-ia64/libkvm.h deleted +0 -31
deleted file mode 100644
index 417f7f1..0000000
@@ -1,31 +0,0 @@
-/*
- * This header is for functions & variables that will ONLY be
- * used inside libkvm for x86.
- * THESE ARE NOT EXPOSED TO THE USER AND ARE ONLY FOR USE
- * WITHIN LIBKVM.
- *
- * derived from libkvm.c
- *
- * Copyright (C) 2006 Qumranet, Inc.
- *
- * Authors:
- *	Avi Kivity   <[email protected]>
- *	Yaniv Kamay  <[email protected]>
- *
- * This work is licensed under the GNU LGPL license, version 2.
- */
-
-#ifndef KVM_IA64_H
-#define KVM_IA64_H
-
-#include "libkvm-all.h"
-
-extern int kvm_page_size;
-
-#define PAGE_SIZE kvm_page_size
-#define PAGE_MASK (~(kvm_page_size - 1))
-
-#define ia64_mf()	asm volatile ("mf" ::: "memory")
-#define smp_wmb()	ia64_mf()
-
-#endif
target-ia64/machine.c deleted +0 -36
deleted file mode 100644
index 8cf5bdd..0000000
@@ -1,36 +0,0 @@
-#include "hw/hw.h"
-#include "hw/boards.h"
-
-#include "exec-all.h"
-#include "qemu-kvm.h"
-
-void kvm_arch_save_mpstate(CPUState *env);
-void kvm_arch_load_mpstate(CPUState *env);
-
-void cpu_save(QEMUFile *f, void *opaque)
-{
-    CPUState *env = opaque;
-
-    if (kvm_enabled()) {
-        kvm_arch_save_mpstate(env);
-    }
-}
-
-int cpu_load(QEMUFile *f, void *opaque, int version_id)
-{
-    CPUState *env = opaque;
-
-    if (kvm_enabled()) {
-        kvm_arch_load_mpstate(env);
-    }
-    return 0;
-}
-
-extern QEMUMachine ipf_machine;
-
-static void ipf_machine_init(void)
-{
-    qemu_register_machine(&ipf_machine);
-}
-
-machine_init(ipf_machine_init);
target-ia64/op.c deleted +0 -22
deleted file mode 100644
index f7301c6..0000000
@@ -1,22 +0,0 @@
-/*
- *  IA64 micro operations
- *
- *  Leave it blank for future implementation
- *
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-
target-ia64/op_helper.c deleted +0 -104

104 lines not on this page · raw message

target-ia64/translate.c deleted +0 -39
deleted file mode 100644
index 86f48f5..0000000
@@ -1,39 +0,0 @@
-/*
- *  translation.c : IA64 translation code.
- *  Just put it as blank now, and implement it later.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-#include <stdarg.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <inttypes.h>
-
-static uint16_t *gen_opc_ptr;
-
-#include "cpu.h"
-#include "exec-all.h"
-#include "disas.h"
-#include "gen-op.h"
-
-int gen_intermediate_code(CPUState *env, TranslationBlock *tb)
-{
-    return 0;
-}
-int gen_intermediate_code_pc(CPUState *env, TranslationBlock *tb)
-{
-    return 0;
-}
vl.c +0 -6
index 569a9a1..b0358e9 100644
@@ -229,7 +229,6 @@ int alt_grab = 0;
 int ctrl_grab = 0;
 unsigned int nb_prom_envs = 0;
 const char *prom_envs[MAX_PROM_ENVS];
-const char *nvram = NULL;
 int boot_menu;
 uint8_t *boot_splash_filedata;
 int boot_splash_filedata_size;
@@ -3117,11 +3116,6 @@ int main(int argc, char **argv, char **envp)
                 default_cdrom = 0;
                 default_sdcard = 0;
                 break;
-#ifndef _WIN32
-            case QEMU_OPTION_nvram:
-                nvram = optarg;
-                break;
-#endif
             case QEMU_OPTION_xen_domid:
                 if (!(xen_available())) {
                     printf("Option %s not supported for this target\n", popt->name);