From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55756) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxWNT-0001Wk-Pg for qemu-devel@nongnu.org; Wed, 27 May 2015 04:07:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YxWNQ-0001GW-F6 for qemu-devel@nongnu.org; Wed, 27 May 2015 04:07:51 -0400 Received: from static.88-198-71-155.clients.your-server.de ([88.198.71.155]:47945 helo=socrates.bennee.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxWNQ-0001Fj-8H for qemu-devel@nongnu.org; Wed, 27 May 2015 04:07:48 -0400 References: <1432522520-8068-1-git-send-email-zhaoshenglong@huawei.com> <1432522520-8068-3-git-send-email-zhaoshenglong@huawei.com> From: Alex =?utf-8?Q?Benn=C3=A9e?= In-reply-to: <1432522520-8068-3-git-send-email-zhaoshenglong@huawei.com> Date: Wed, 27 May 2015 09:07:51 +0100 Message-ID: <87zj4qphns.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v9 02/24] hw/arm/virt: Move common definitions to virt.h List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Shannon Zhao Cc: peter.maydell@linaro.org, hangaohuai@huawei.com, mst@redhat.com, a.spyridakis@virtualopensystems.com, claudio.fontana@huawei.com, qemu-devel@nongnu.org, peter.huangpeng@huawei.com, hanjun.guo@linaro.org, imammedo@redhat.com, pbonzini@redhat.com, lersek@redhat.com, christoffer.dall@linaro.org, shannon.zhao@linaro.org Shannon Zhao writes: > From: Shannon Zhao > > Move some common definitions to virt.h. These will be used by > generating ACPI tables. > > Signed-off-by: Shannon Zhao > Signed-off-by: Shannon Zhao Reviewed-by: Alex Bennée > --- > hw/arm/virt.c | 21 +------------------ > include/hw/arm/virt.h | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 57 insertions(+), 20 deletions(-) > create mode 100644 include/hw/arm/virt.h > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index a7f9a10..8959d0c 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -31,6 +31,7 @@ > #include "hw/sysbus.h" > #include "hw/arm/arm.h" > #include "hw/arm/primecell.h" > +#include "hw/arm/virt.h" > #include "hw/devices.h" > #include "net/net.h" > #include "sysemu/block-backend.h" > @@ -44,8 +45,6 @@ > #include "qemu/error-report.h" > #include "hw/pci-host/gpex.h" > > -#define NUM_VIRTIO_TRANSPORTS 32 > - > /* Number of external interrupt lines to configure the GIC with */ > #define NUM_IRQS 128 > > @@ -60,24 +59,6 @@ > #define GIC_FDT_IRQ_PPI_CPU_START 8 > #define GIC_FDT_IRQ_PPI_CPU_WIDTH 8 > > -enum { > - VIRT_FLASH, > - VIRT_MEM, > - VIRT_CPUPERIPHS, > - VIRT_GIC_DIST, > - VIRT_GIC_CPU, > - VIRT_UART, > - VIRT_MMIO, > - VIRT_RTC, > - VIRT_FW_CFG, > - VIRT_PCIE, > -}; > - > -typedef struct MemMapEntry { > - hwaddr base; > - hwaddr size; > -} MemMapEntry; > - > typedef struct VirtBoardInfo { > struct arm_boot_info bootinfo; > const char *cpu_model; > diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h > new file mode 100644 > index 0000000..2fe0d2e > --- /dev/null > +++ b/include/hw/arm/virt.h > @@ -0,0 +1,56 @@ > +/* > + * > + * Copyright (c) 2015 Linaro Limited > + * > + * This program is free software; you can redistribute it and/or modify it > + * under the terms and conditions of the GNU General Public License, > + * version 2 or later, as published by the Free Software Foundation. > + * > + * This program is distributed in the hope it will be useful, but WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for > + * more details. > + * > + * You should have received a copy of the GNU General Public License along with > + * this program. If not, see . > + * > + * Emulate a virtual board which works by passing Linux all the information > + * it needs about what devices are present via the device tree. > + * There are some restrictions about what we can do here: > + * + we can only present devices whose Linux drivers will work based > + * purely on the device tree with no platform data at all > + * + we want to present a very stripped-down minimalist platform, > + * both because this reduces the security attack surface from the guest > + * and also because it reduces our exposure to being broken when > + * the kernel updates its device tree bindings and requires further > + * information in a device binding that we aren't providing. > + * This is essentially the same approach kvmtool uses. > + */ > + > +#ifndef QEMU_ARM_VIRT_H > +#define QEMU_ARM_VIRT_H > + > +#include "qemu-common.h" > + > +#define NUM_VIRTIO_TRANSPORTS 32 > + > +enum { > + VIRT_FLASH, > + VIRT_MEM, > + VIRT_CPUPERIPHS, > + VIRT_GIC_DIST, > + VIRT_GIC_CPU, > + VIRT_UART, > + VIRT_MMIO, > + VIRT_RTC, > + VIRT_FW_CFG, > + VIRT_PCIE, > +}; > + > +typedef struct MemMapEntry { > + hwaddr base; > + hwaddr size; > +} MemMapEntry; > + > + > +#endif -- Alex Bennée