This way we get rid of an entire file with mostly
duplicated code plus a Kconfig option that you always
had to take care to check it in order for kvm to work.

Signed-off-by: Laurentiu Tudor <[email protected]>
---
 arch/powerpc/platforms/85xx/Kconfig           | 15 -----
 arch/powerpc/platforms/85xx/Makefile          |  1 -
 arch/powerpc/platforms/85xx/corenet_generic.c |  1 +
 arch/powerpc/platforms/85xx/qemu_e500.c       | 85 ---------------------------
 4 files changed, 1 insertion(+), 101 deletions(-)
 delete mode 100644 arch/powerpc/platforms/85xx/qemu_e500.c

diff --git a/arch/powerpc/platforms/85xx/Kconfig 
b/arch/powerpc/platforms/85xx/Kconfig
index 97915fe..0c1ce10 100644
--- a/arch/powerpc/platforms/85xx/Kconfig
+++ b/arch/powerpc/platforms/85xx/Kconfig
@@ -249,21 +249,6 @@ config MVME2500
 
 endif # PPC32
 
-config PPC_QEMU_E500
-       bool "QEMU generic e500 platform"
-       select DEFAULT_UIMAGE
-       help
-         This option enables support for running as a QEMU guest using
-         QEMU's generic e500 machine.  This is not required if you're
-         using a QEMU machine that targets a specific board, such as
-         mpc8544ds.
-
-         Unlike most e500 boards that target a specific CPU, this
-         platform works with any e500-family CPU that QEMU supports.
-         Thus, you'll need to make sure CONFIG_PPC_E500MC is set or
-         unset based on the emulated CPU (or actual host CPU in the case
-         of KVM).
-
 config CORENET_GENERIC
        bool "Freescale CoreNet Generic"
        select DEFAULT_UIMAGE
diff --git a/arch/powerpc/platforms/85xx/Makefile 
b/arch/powerpc/platforms/85xx/Makefile
index 1fe7fb9..33fbfb8 100644
--- a/arch/powerpc/platforms/85xx/Makefile
+++ b/arch/powerpc/platforms/85xx/Makefile
@@ -29,6 +29,5 @@ obj-$(CONFIG_SOCRATES)    += socrates.o socrates_fpga_pic.o
 obj-$(CONFIG_KSI8560)    += ksi8560.o
 obj-$(CONFIG_XES_MPC85xx) += xes_mpc85xx.o
 obj-$(CONFIG_GE_IMP3A)   += ge_imp3a.o
-obj-$(CONFIG_PPC_QEMU_E500) += qemu_e500.o
 obj-$(CONFIG_SGY_CTS1000) += sgy_cts1000.o
 obj-$(CONFIG_MVME2500)   += mvme2500.o
diff --git a/arch/powerpc/platforms/85xx/corenet_generic.c 
b/arch/powerpc/platforms/85xx/corenet_generic.c
index bd839dc..85078ee 100644
--- a/arch/powerpc/platforms/85xx/corenet_generic.c
+++ b/arch/powerpc/platforms/85xx/corenet_generic.c
@@ -159,6 +159,7 @@ static const char * const boards[] __initconst = {
        "fsl,T1042RDB",
        "fsl,T1042RDB_PI",
        "keymile,kmcoge4",
+       "fsl,qemu-e500",
        NULL
 };
 
diff --git a/arch/powerpc/platforms/85xx/qemu_e500.c 
b/arch/powerpc/platforms/85xx/qemu_e500.c
deleted file mode 100644
index 8ad2fe6..0000000
--- a/arch/powerpc/platforms/85xx/qemu_e500.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Paravirt target for a generic QEMU e500 machine
- *
- * This is intended to be a flexible device-tree-driven platform, not fixed
- * to a particular piece of hardware or a particular spec of virtual hardware,
- * beyond the assumption of an e500-family CPU.  Some things are still 
hardcoded
- * here, such as MPIC, but this is a limitation of the current code rather than
- * an interface contract with QEMU.
- *
- * Copyright 2012 Freescale Semiconductor Inc.
- *
- * This program is free software; you can redistribute  it and/or modify it
- * under  the terms of  the GNU General  Public License as published by the
- * Free Software Foundation;  either version 2 of the  License, or (at your
- * option) any later version.
- */
-
-#include <linux/kernel.h>
-#include <linux/of_fdt.h>
-#include <asm/machdep.h>
-#include <asm/pgtable.h>
-#include <asm/time.h>
-#include <asm/udbg.h>
-#include <asm/mpic.h>
-#include <sysdev/fsl_soc.h>
-#include <sysdev/fsl_pci.h>
-#include "smp.h"
-#include "mpc85xx.h"
-
-void __init qemu_e500_pic_init(void)
-{
-       struct mpic *mpic;
-       unsigned int flags = MPIC_BIG_ENDIAN | MPIC_SINGLE_DEST_CPU |
-               MPIC_ENABLE_COREINT;
-
-       mpic = mpic_alloc(NULL, 0, flags, 0, 256, " OpenPIC  ");
-
-       BUG_ON(mpic == NULL);
-       mpic_init(mpic);
-}
-
-static void __init qemu_e500_setup_arch(void)
-{
-       ppc_md.progress("qemu_e500_setup_arch()", 0);
-
-       fsl_pci_assign_primary();
-       swiotlb_detect_4g();
-#if defined(CONFIG_FSL_PCI) && defined(CONFIG_ZONE_DMA32)
-       /*
-        * Inbound windows don't cover the full lower 4 GiB
-        * due to conflicts with PCICSRBAR and outbound windows,
-        * so limit the DMA32 zone to 2 GiB, to allow consistent
-        * allocations to succeed.
-        */
-       limit_zone_pfn(ZONE_DMA32, 1UL << (31 - PAGE_SHIFT));
-#endif
-       mpc85xx_smp_init();
-}
-
-/*
- * Called very early, device-tree isn't unflattened
- */
-static int __init qemu_e500_probe(void)
-{
-       unsigned long root = of_get_flat_dt_root();
-
-       return !!of_flat_dt_is_compatible(root, "fsl,qemu-e500");
-}
-
-machine_arch_initcall(qemu_e500, mpc85xx_common_publish_devices);
-
-define_machine(qemu_e500) {
-       .name                   = "QEMU e500",
-       .probe                  = qemu_e500_probe,
-       .setup_arch             = qemu_e500_setup_arch,
-       .init_IRQ               = qemu_e500_pic_init,
-#ifdef CONFIG_PCI
-       .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
-       .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
-#endif
-       .get_irq                = mpic_get_coreint_irq,
-       .restart                = fsl_rstcr_restart,
-       .calibrate_decr         = generic_calibrate_decr,
-       .progress               = udbg_progress,
-};
-- 
1.8.3.1
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to