[{"id":1771566,"web_url":"http://patchwork.ozlabs.org/comment/1771566/","msgid":"<CAEUhbmUHjo9ny=zyOubtbN_cMtzEzdd9HrnFT2mi5m1FY3-osQ@mail.gmail.com>","list_archive_url":null,"date":"2017-09-20T05:02:00","subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","submitter":{"id":64981,"url":"http://patchwork.ozlabs.org/api/people/64981/","name":"Bin Meng","email":"bmeng.cn@gmail.com"},"content":"Hi Tuomas,\n\nOn Wed, Sep 20, 2017 at 4:18 AM, Tuomas Tynkkynen\n<tuomas.tynkkynen@iki.fi> wrote:\n> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n> machine on ARM. The minimal QEMU command line is:\n>\n>     qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n>\n> (Note that the 'highmem=off' parameter to the 'virt' machine is required for\n> PCI to work in U-Boot.) This command line enables the following:\n>     - u-boot.bin loaded and executing in the emulated flash at address 0x0\n>     - A generated device tree blob placed at the start of RAM\n>     - A freely configurable amount of RAM, described by the DTB\n>     - A PL011 serial port, discoverable via the DTB\n>     - An ARMv7 architected timer\n>     - PSCI for rebooting the system\n>     - A generic ECAM-based PCI host controller, discoverable via the DTB\n>\n> Additionally, QEMU allows plugging a bunch of useful peripherals to the PCI bus.\n> The following ones are supported by both U-Boot and Linux:\n>\n> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n>     -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci -device ide-drive,drive=mydisk,bus=ahci.0\n> - To add an Intel E1000 network adapter, pass e.g.:\n>     -net nic,model=e1000 -net user\n\nWith this parameter I got:\n\nWarning: requested NIC (anonymous, model e1000) was not created (not\nsupported by this machine?)\n\nI am using QEMU v2.5.0. It's better to mention the minimum required\nQEMU version in the commit message as well.\n\n> - To add an EHCI-compliant USB host controller, pass e.g.:\n>     -device usb-ehci,id=ehci\n> - To add a NVMe disk, pass e.g.:\n>     -drive if=none,file=disk.img,id=mydisk -device nvme,drive=mydisk,serial=foo\n>\n> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n> ---\n> v2:\n> - enable CONFIG_NVME\n> - alphasort correctly\n> - remove unnecessary gd declaration\n> - move board under board/emulation\n> - add MAINTAINERS\n> ---\n>  arch/arm/Kconfig                     | 10 +++++++\n>  arch/arm/mach-qemu/Kconfig           | 12 ++++++++\n>  board/emulation/qemu-arm/MAINTAINERS |  6 ++++\n>  board/emulation/qemu-arm/Makefile    |  5 ++++\n>  board/emulation/qemu-arm/qemu-arm.c  | 33 ++++++++++++++++++++\n>  configs/qemu_arm_defconfig           | 28 +++++++++++++++++\n>  include/configs/qemu-arm.h           | 58 ++++++++++++++++++++++++++++++++++++\n>  7 files changed, 152 insertions(+)\n>  create mode 100644 arch/arm/mach-qemu/Kconfig\n>  create mode 100644 board/emulation/qemu-arm/MAINTAINERS\n>  create mode 100644 board/emulation/qemu-arm/Makefile\n>  create mode 100644 board/emulation/qemu-arm/qemu-arm.c\n>  create mode 100644 configs/qemu_arm_defconfig\n>  create mode 100644 include/configs/qemu-arm.h\n>\n> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig\n> index 53eae8953e..1de5be7a72 100644\n> --- a/arch/arm/Kconfig\n> +++ b/arch/arm/Kconfig\n> @@ -630,6 +630,14 @@ config ARCH_MX5\n>         select CPU_V7\n>         select BOARD_EARLY_INIT_F\n>\n> +config ARCH_QEMU\n> +       bool \"QEMU Virtual Platform\"\n> +       select CPU_V7\n> +       select ARCH_SUPPORT_PSCI\n> +       select DM\n> +       select DM_SERIAL\n> +       select OF_CONTROL\n> +\n>  config ARCH_RMOBILE\n>         bool \"Renesas ARM SoCs\"\n>         select DM\n> @@ -1142,6 +1150,8 @@ source \"arch/arm/mach-rmobile/Kconfig\"\n>\n>  source \"arch/arm/mach-meson/Kconfig\"\n>\n> +source \"arch/arm/mach-qemu/Kconfig\"\n> +\n>  source \"arch/arm/mach-rockchip/Kconfig\"\n>\n>  source \"arch/arm/mach-s5pc1xx/Kconfig\"\n> diff --git a/arch/arm/mach-qemu/Kconfig b/arch/arm/mach-qemu/Kconfig\n> new file mode 100644\n> index 0000000000..3500b56cb0\n> --- /dev/null\n> +++ b/arch/arm/mach-qemu/Kconfig\n> @@ -0,0 +1,12 @@\n> +if ARCH_QEMU\n> +\n> +config SYS_VENDOR\n> +       default \"emulation\"\n> +\n> +config SYS_BOARD\n> +       default \"qemu-arm\"\n> +\n> +config SYS_CONFIG_NAME\n> +       default \"qemu-arm\"\n> +\n> +endif\n> diff --git a/board/emulation/qemu-arm/MAINTAINERS b/board/emulation/qemu-arm/MAINTAINERS\n> new file mode 100644\n> index 0000000000..a803061ff4\n> --- /dev/null\n> +++ b/board/emulation/qemu-arm/MAINTAINERS\n> @@ -0,0 +1,6 @@\n> +QEMU ARM 'VIRT' BOARD\n> +M:     Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n> +S:     Maintained\n> +F:     board/emulation/qemu-arm/\n> +F:     include/configs/qemu-arm.h\n> +F:     configs/qemu_arm_defconfig\n> diff --git a/board/emulation/qemu-arm/Makefile b/board/emulation/qemu-arm/Makefile\n> new file mode 100644\n> index 0000000000..716a6e9c28\n> --- /dev/null\n> +++ b/board/emulation/qemu-arm/Makefile\n> @@ -0,0 +1,5 @@\n> +#\n> +# SPDX-License-Identifier:     GPL-2.0+\n> +#\n> +\n> +obj-y  += qemu-arm.o\n> diff --git a/board/emulation/qemu-arm/qemu-arm.c b/board/emulation/qemu-arm/qemu-arm.c\n> new file mode 100644\n> index 0000000000..e29ba4630f\n> --- /dev/null\n> +++ b/board/emulation/qemu-arm/qemu-arm.c\n> @@ -0,0 +1,33 @@\n> +/*\n> + * Copyright (c) 2017 Tuomas Tynkkynen\n> + *\n> + * SPDX-License-Identifier:    GPL-2.0+\n> + */\n> +#include <common.h>\n> +#include <fdtdec.h>\n> +\n> +int board_init(void)\n> +{\n> +       return 0;\n> +}\n> +\n> +int dram_init(void)\n> +{\n> +       if (fdtdec_setup_memory_size() != 0)\n> +               return -EINVAL;\n> +\n> +       return 0;\n> +}\n> +\n> +int dram_init_banksize(void)\n> +{\n> +       fdtdec_setup_memory_banksize();\n> +\n> +       return 0;\n> +}\n> +\n> +void *board_fdt_blob_setup(void)\n> +{\n> +       /* QEMU loads a generated DTB for us at the start of RAM. */\n\nnits: remove the ending period\n\n> +       return (void *)CONFIG_SYS_SDRAM_BASE;\n> +}\n> diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig\n\nCan we use 'qemu-arm_defconfig\", to be in consistent with the board name?\n\n> new file mode 100644\n> index 0000000000..2a8594d472\n> --- /dev/null\n> +++ b/configs/qemu_arm_defconfig\n> @@ -0,0 +1,28 @@\n> +CONFIG_ARM=y\n> +CONFIG_ARM_SMCCC=y\n> +CONFIG_ARCH_QEMU=y\n> +CONFIG_AHCI=y\n> +CONFIG_DISTRO_DEFAULTS=y\n> +# CONFIG_DISPLAY_CPUINFO is not set\n> +# CONFIG_DISPLAY_BOARDINFO is not set\n> +# CONFIG_CMD_IMLS is not set\n> +CONFIG_CMD_PCI=y\n> +CONFIG_CMD_USB=y\n> +CONFIG_OF_BOARD=y\n> +CONFIG_AHCI_PCI=y\n> +CONFIG_BLK=y\n> +# CONFIG_MMC is not set\n> +CONFIG_DM_ETH=y\n> +CONFIG_E1000=y\n> +CONFIG_NVME=y\n> +CONFIG_PCI=y\n> +CONFIG_DM_PCI=y\n> +CONFIG_PCIE_ECAM_GENERIC=y\n> +CONFIG_SCSI=y\n> +CONFIG_DM_SCSI=y\n> +CONFIG_SYSRESET=y\n> +CONFIG_SYSRESET_PSCI=y\n> +CONFIG_USB=y\n> +CONFIG_DM_USB=y\n> +CONFIG_USB_EHCI_HCD=y\n> +CONFIG_USB_EHCI_PCI=y\n> diff --git a/include/configs/qemu-arm.h b/include/configs/qemu-arm.h\n> new file mode 100644\n> index 0000000000..4376a24787\n> --- /dev/null\n> +++ b/include/configs/qemu-arm.h\n> @@ -0,0 +1,58 @@\n> +/*\n> + * Copyright (c) 2017 Tuomas Tynkkynen\n> + *\n> + * SPDX-License-Identifier:    GPL-2.0+\n> + */\n> +\n> +#ifndef __CONFIG_H\n> +#define __CONFIG_H\n> +\n> +#include <linux/sizes.h>\n> +\n> +/* Physical memory map */\n> +#define CONFIG_SYS_TEXT_BASE           0x00000000\n> +\n> +#define CONFIG_NR_DRAM_BANKS           1\n> +#define CONFIG_SYS_SDRAM_BASE          0x40000000\n> +\n> +/* The DTB generated by QEMU is placed at start of RAM, stay away from there */\n> +#define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_SDRAM_BASE + SZ_2M)\n> +#define CONFIG_SYS_LOAD_ADDR           (CONFIG_SYS_SDRAM_BASE + SZ_2M)\n> +#define CONFIG_SYS_MALLOC_LEN          SZ_16M\n> +\n> +/* QEMU's PL011 serial port is detected via FDT using the device model */\n> +#define CONFIG_PL01X_SERIAL\n> +\n> +/* QEMU implements a 62.5MHz architected timer */\n> +/* FIXME: can we rely on CNTFREQ instead of hardcoding this fact here? */\n> +#define CONFIG_SYS_ARCH_TIMER\n> +#define CONFIG_SYS_HZ                       1000\n> +#define CONFIG_SYS_HZ_CLOCK                 62500000\n> +\n> +/* For block devices, QEMU emulates an ICH9 AHCI controller over PCI */\n> +#define CONFIG_SYS_SCSI_MAX_SCSI_ID 6\n> +#define CONFIG_SCSI_AHCI\n> +#define CONFIG_LIBATA\n> +\n> +/* Environment options */\n> +#define CONFIG_ENV_SIZE                                SZ_64K\n> +\n> +#include <config_distro_defaults.h>\n> +\n> +#define BOOT_TARGET_DEVICES(func) \\\n> +       func(SCSI, scsi, 0)\n> +\n> +#include <config_distro_bootcmd.h>\n> +\n> +#define CONFIG_PREBOOT \"pci enum\"\n> +#define CONFIG_EXTRA_ENV_SETTINGS \\\n> +       \"fdt_high=0xffffffff\\0\" \\\n> +       \"initrd_high=0xffffffff\\0\" \\\n> +       \"fdt_addr=0x40000000\\0\" \\\n> +       \"scriptaddr=0x40200000\\0\" \\\n> +       \"pxefile_addr_r=0x40300000\\0\" \\\n> +       \"kernel_addr_r=0x40400000\\0\" \\\n> +       \"ramdisk_addr_r=0x44000000\\0\" \\\n> +       BOOTENV\n> +\n> +#endif /* __CONFIG_H */\n> --\n\nRegards,\nBin","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"IKlcszRU\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3xxnhZ1CxPz9s82\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 20 Sep 2017 15:03:58 +1000 (AEST)","by lists.denx.de (Postfix, from userid 105)\n\tid CD30EC21DE6; Wed, 20 Sep 2017 05:03:00 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id E9D81C21DCA;\n\tWed, 20 Sep 2017 05:02:32 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid 80A80C21D78; Wed, 20 Sep 2017 05:02:05 +0000 (UTC)","from mail-wm0-f66.google.com (mail-wm0-f66.google.com\n\t[74.125.82.66])\n\tby lists.denx.de (Postfix) with ESMTPS id 7F6DDC21D7E\n\tfor <u-boot@lists.denx.de>; Wed, 20 Sep 2017 05:02:01 +0000 (UTC)","by mail-wm0-f66.google.com with SMTP id i131so1336427wma.1\n\tfor <u-boot@lists.denx.de>; Tue, 19 Sep 2017 22:02:01 -0700 (PDT)","by 10.223.145.3 with HTTP; Tue, 19 Sep 2017 22:02:00 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=FREEMAIL_FROM,\n\tRCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID\n\tautolearn=unavailable autolearn_force=no version=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=OMQ48oXbIXQ6kdhA0XQ3faaAVnYeuZR0V6VEOqlQCc8=;\n\tb=IKlcszRUeFuJuHIeBK4lLVO/EumPreFtBhcWHIg5O6pIPaPTxR8p4On2ir3joCiUTZ\n\tzU7vhqXC+nLVi7sYp6G/RH4UOxN3gjChWA0n9aHssB8SL2jiPUBHW5xGmICx0gKp2hwD\n\tA1X/uXQrhRYZIdi/ySkCoeJbKq5Yy9jYChWvBr/Bhk73vixphlmwcg0AbhHp4UnuwnGu\n\tEerhTRcw8tTj9q4H6GsFoo4NfwmcVMJOduNgd+zMXpti2pKo9/d7FbmftOI387TDKCeL\n\tUzmHyqGbUI5w6PRoYl9clrR+RTAbZXrHD9+K0fXY76Cx37JjrymmZR7na9ytQQSs++Hk\n\tbzfg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=OMQ48oXbIXQ6kdhA0XQ3faaAVnYeuZR0V6VEOqlQCc8=;\n\tb=PR2MUiyw8pZ+6+0LJYP9N3R9lu9M10zrTnhypR6Hq3ereLckZVSxY339ytpX29Q3pn\n\t0y0zBENY+EemPjI8d1w3O52YjVpHgOSOTzkOwTKaTN2pWIqZqChE+n7IiHUHH9ef10Hx\n\tWgyORWOx95eHnjZbpo6HomA+n2w52Uj36VZhWzKmrF9oBHZjj0KuhJ3LUhfG3jgOlwch\n\tFZo5tyS5aurSDeOEgU3sO/A5sWwveOpGnLQMTDEgXQiebNq5vFL8w6O5GGHy0JCSsTY2\n\tV+XhgnooZ8NX1WaP+w6vHfdwrOwhXP/WVe3sY3d2q5NX8r2uQtny9ryz38Y2v6F4o1JX\n\tqCjQ==","X-Gm-Message-State":"AHPjjUjFvSvG+3fwDq4qTf+HTTZVu8q7Hk16//HGmZ/K7LBQOXwvo6WT\n\t6Vwd8/QgztF3ZpfLMjGeCWn0WoAUc7mOl5ksdEc=","X-Google-Smtp-Source":"AOwi7QDcJnN1O2ko3p1B8sejCI+yHF0GPEFHFVI9iHVT7sL+vKGguWCjKQ1kabI8tex8Srnz1XKVXswJe0azoROqk9c=","X-Received":"by 10.28.130.131 with SMTP id e125mr3022055wmd.125.1505883721096;\n\tTue, 19 Sep 2017 22:02:01 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>","References":"<20170919201808.11433-1-tuomas.tynkkynen@iki.fi>\n\t<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>","From":"Bin Meng <bmeng.cn@gmail.com>","Date":"Wed, 20 Sep 2017 13:02:00 +0800","Message-ID":"<CAEUhbmUHjo9ny=zyOubtbN_cMtzEzdd9HrnFT2mi5m1FY3-osQ@mail.gmail.com>","To":"Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>","Cc":"U-Boot Mailing List <u-boot@lists.denx.de>, Tom Rini <trini@konsulko.com>","Subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}},{"id":1774011,"web_url":"http://patchwork.ozlabs.org/comment/1774011/","msgid":"<ecb801b1-6031-5aa1-5463-83bfcfe65890@iki.fi>","list_archive_url":null,"date":"2017-09-23T10:32:44","subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","submitter":{"id":32296,"url":"http://patchwork.ozlabs.org/api/people/32296/","name":"Tuomas Tynkkynen","email":"tuomas.tynkkynen@iki.fi"},"content":"Hi Bin,\n\nOn 09/20/2017 08:02 AM, Bin Meng wrote:\n> Hi Tuomas,\n> \n> On Wed, Sep 20, 2017 at 4:18 AM, Tuomas Tynkkynen\n> <tuomas.tynkkynen@iki.fi> wrote:\n>> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n>> machine on ARM. The minimal QEMU command line is:\n>>\n>>      qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n>>\n>> (Note that the 'highmem=off' parameter to the 'virt' machine is required for\n>> PCI to work in U-Boot.) This command line enables the following:\n>>      - u-boot.bin loaded and executing in the emulated flash at address 0x0\n>>      - A generated device tree blob placed at the start of RAM\n>>      - A freely configurable amount of RAM, described by the DTB\n>>      - A PL011 serial port, discoverable via the DTB\n>>      - An ARMv7 architected timer\n>>      - PSCI for rebooting the system\n>>      - A generic ECAM-based PCI host controller, discoverable via the DTB\n>>\n>> Additionally, QEMU allows plugging a bunch of useful peripherals to the PCI bus.\n>> The following ones are supported by both U-Boot and Linux:\n>>\n>> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n>>      -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci -device ide-drive,drive=mydisk,bus=ahci.0\n>> - To add an Intel E1000 network adapter, pass e.g.:\n>>      -net nic,model=e1000 -net user\n> \n> With this parameter I got:\n> \n> Warning: requested NIC (anonymous, model e1000) was not created (not\n> supported by this machine?)\n> \n> I am using QEMU v2.5.0. It's better to mention the minimum required\n> QEMU version in the commit message as well.\n> \n\nI primarily tested with 2.9.0, but I found out that it will work in \n2.5.0 as well by changing the syntax to\n     -netdev user,id=net0 -device e1000,netdev=net0\nI will update the commit message accordingly.\n\n>> - To add an EHCI-compliant USB host controller, pass e.g.:\n>>      -device usb-ehci,id=ehci\n>> - To add a NVMe disk, pass e.g.:\n>>      -drive if=none,file=disk.img,id=mydisk -device nvme,drive=mydisk,serial=foo\n>>\n>> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n>> ---\n>> v2:\n>> - enable CONFIG_NVME\n>> - alphasort correctly\n>> - remove unnecessary gd declaration\n>> - move board under board/emulation\n>> - add MAINTAINERS\n>> ---\n>>   arch/arm/Kconfig                     | 10 +++++++\n>>   arch/arm/mach-qemu/Kconfig           | 12 ++++++++\n>>   board/emulation/qemu-arm/MAINTAINERS |  6 ++++\n>>   board/emulation/qemu-arm/Makefile    |  5 ++++\n>>   board/emulation/qemu-arm/qemu-arm.c  | 33 ++++++++++++++++++++\n>>   configs/qemu_arm_defconfig           | 28 +++++++++++++++++\n>>   include/configs/qemu-arm.h           | 58 ++++++++++++++++++++++++++++++++++++\n>>   7 files changed, 152 insertions(+)\n>>   create mode 100644 arch/arm/mach-qemu/Kconfig\n>>   create mode 100644 board/emulation/qemu-arm/MAINTAINERS\n>>   create mode 100644 board/emulation/qemu-arm/Makefile\n>>   create mode 100644 board/emulation/qemu-arm/qemu-arm.c\n>>   create mode 100644 configs/qemu_arm_defconfig\n>>   create mode 100644 include/configs/qemu-arm.h\n>>\n>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig\n>> index 53eae8953e..1de5be7a72 100644\n>> --- a/arch/arm/Kconfig\n>> +++ b/arch/arm/Kconfig\n>> @@ -630,6 +630,14 @@ config ARCH_MX5\n>>          select CPU_V7\n>>          select BOARD_EARLY_INIT_F\n>>\n>> +config ARCH_QEMU\n>> +       bool \"QEMU Virtual Platform\"\n>> +       select CPU_V7\n>> +       select ARCH_SUPPORT_PSCI\n>> +       select DM\n>> +       select DM_SERIAL\n>> +       select OF_CONTROL\n>> +\n>>   config ARCH_RMOBILE\n>>          bool \"Renesas ARM SoCs\"\n>>          select DM\n>> @@ -1142,6 +1150,8 @@ source \"arch/arm/mach-rmobile/Kconfig\"\n>>\n>>   source \"arch/arm/mach-meson/Kconfig\"\n>>\n>> +source \"arch/arm/mach-qemu/Kconfig\"\n>> +\n>>   source \"arch/arm/mach-rockchip/Kconfig\"\n>>\n>>   source \"arch/arm/mach-s5pc1xx/Kconfig\"\n>> diff --git a/arch/arm/mach-qemu/Kconfig b/arch/arm/mach-qemu/Kconfig\n>> new file mode 100644\n>> index 0000000000..3500b56cb0\n>> --- /dev/null\n>> +++ b/arch/arm/mach-qemu/Kconfig\n>> @@ -0,0 +1,12 @@\n>> +if ARCH_QEMU\n>> +\n>> +config SYS_VENDOR\n>> +       default \"emulation\"\n>> +\n>> +config SYS_BOARD\n>> +       default \"qemu-arm\"\n>> +\n>> +config SYS_CONFIG_NAME\n>> +       default \"qemu-arm\"\n>> +\n>> +endif\n>> diff --git a/board/emulation/qemu-arm/MAINTAINERS b/board/emulation/qemu-arm/MAINTAINERS\n>> new file mode 100644\n>> index 0000000000..a803061ff4\n>> --- /dev/null\n>> +++ b/board/emulation/qemu-arm/MAINTAINERS\n>> @@ -0,0 +1,6 @@\n>> +QEMU ARM 'VIRT' BOARD\n>> +M:     Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n>> +S:     Maintained\n>> +F:     board/emulation/qemu-arm/\n>> +F:     include/configs/qemu-arm.h\n>> +F:     configs/qemu_arm_defconfig\n>> diff --git a/board/emulation/qemu-arm/Makefile b/board/emulation/qemu-arm/Makefile\n>> new file mode 100644\n>> index 0000000000..716a6e9c28\n>> --- /dev/null\n>> +++ b/board/emulation/qemu-arm/Makefile\n>> @@ -0,0 +1,5 @@\n>> +#\n>> +# SPDX-License-Identifier:     GPL-2.0+\n>> +#\n>> +\n>> +obj-y  += qemu-arm.o\n>> diff --git a/board/emulation/qemu-arm/qemu-arm.c b/board/emulation/qemu-arm/qemu-arm.c\n>> new file mode 100644\n>> index 0000000000..e29ba4630f\n>> --- /dev/null\n>> +++ b/board/emulation/qemu-arm/qemu-arm.c\n>> @@ -0,0 +1,33 @@\n>> +/*\n>> + * Copyright (c) 2017 Tuomas Tynkkynen\n>> + *\n>> + * SPDX-License-Identifier:    GPL-2.0+\n>> + */\n>> +#include <common.h>\n>> +#include <fdtdec.h>\n>> +\n>> +int board_init(void)\n>> +{\n>> +       return 0;\n>> +}\n>> +\n>> +int dram_init(void)\n>> +{\n>> +       if (fdtdec_setup_memory_size() != 0)\n>> +               return -EINVAL;\n>> +\n>> +       return 0;\n>> +}\n>> +\n>> +int dram_init_banksize(void)\n>> +{\n>> +       fdtdec_setup_memory_banksize();\n>> +\n>> +       return 0;\n>> +}\n>> +\n>> +void *board_fdt_blob_setup(void)\n>> +{\n>> +       /* QEMU loads a generated DTB for us at the start of RAM. */\n> \n> nits: remove the ending period\n> \n>> +       return (void *)CONFIG_SYS_SDRAM_BASE;\n>> +}\n>> diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig\n> \n> Can we use 'qemu-arm_defconfig\", to be in consistent with the board name?\n> \n\nSure.","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"rSv2iv8i\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3xzmrz3Lvtz9tX5\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 23 Sep 2017 20:33:07 +1000 (AEST)","by lists.denx.de (Postfix, from userid 105)\n\tid 1EDE9C21F9E; Sat, 23 Sep 2017 10:33:03 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id 1A8D6C21D63;\n\tSat, 23 Sep 2017 10:33:00 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid D4CDFC21D63; Sat, 23 Sep 2017 10:32:58 +0000 (UTC)","from mail-lf0-f67.google.com (mail-lf0-f67.google.com\n\t[209.85.215.67])\n\tby lists.denx.de (Postfix) with ESMTPS id 6481EC21D5D\n\tfor <u-boot@lists.denx.de>; Sat, 23 Sep 2017 10:32:58 +0000 (UTC)","by mail-lf0-f67.google.com with SMTP id l196so1741220lfl.3\n\tfor <u-boot@lists.denx.de>; Sat, 23 Sep 2017 03:32:58 -0700 (PDT)","from [10.33.51.39] ([83.145.195.18])\n\tby smtp.gmail.com with ESMTPSA id\n\tn29sm279405lfi.27.2017.09.23.03.32.56\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tSat, 23 Sep 2017 03:32:56 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE,\n\tRCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID autolearn=unavailable\n\tautolearn_force=no version=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=sender:subject:to:cc:references:from:message-id:date:user-agent\n\t:mime-version:in-reply-to:content-language:content-transfer-encoding; \n\tbh=Bv40kLyNo07+BBzpDnOJwjHfjHNEahoYcVWPfb+T8GU=;\n\tb=rSv2iv8iYeb30Xp/fdY+ZqadQkHCWtccMVQZXnyRa04OMiKcHS4+nvHSCXm/sonn1K\n\tDAKQwsX9Iitloael+8REWHIy2SOyhzPo3JK3NKGmStjoQv/rV5t6g0HK55chmIxWuO7H\n\t6IjGqFrR3MyxlYhl8hV8ZyXzd6jeytBvaKCi2WSouk3YT+911tC9N3w5pmrTqPR+DkLx\n\tJGRxZtCMlcZ5+ECIh2SS4jxJmtUsP0Gw/ZBTClz/HL+GsPJayXUSWGLYm+MU8ezkUKj0\n\tOFDt+A3255IaLULy56jcaYVZMktwvvqMxXfAPv4LuB8V+FRL14GAmu2HeOFRUmlw1gwF\n\t1Mag==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:sender:subject:to:cc:references:from:message-id\n\t:date:user-agent:mime-version:in-reply-to:content-language\n\t:content-transfer-encoding;\n\tbh=Bv40kLyNo07+BBzpDnOJwjHfjHNEahoYcVWPfb+T8GU=;\n\tb=WGbMiYKZ90dMReoZlKObnGpqREDitANlI+1GqHxpEeXJihI4T8C4wdsHCu6t5IlHxt\n\tet/IWemUTY7nG549vx9d5maLWsKa738/Y5voXV99NqsM/VLfIugmCct2CwCgsfPkdArl\n\t0GPm0xDVMF1+u/xUfNKuWt6bXFFxONYh0jglIN+N7S6JxjwYy+bzJBEO2/7tg5nPQ5LX\n\t+Uk6L+gnzJ3dJ3rLSCX/xwiDzc+jfGrlhezWR+lQJKocp4aU20WY79Iiop3pQ1vfuo3C\n\tJgJsIF1PtLo1rnRjD2+n2ioo2FOLQtVYZ/CO4BolQ+Bidr0yVX1xxQpDPnvaw1a5iyJ2\n\t2QjQ==","X-Gm-Message-State":"AHPjjUg5aOqpIlmn3z0bREr4KBLh5ItawKTJkGX3NtqnGI8jpg/mVFlg\n\tZZohi2f5nkC4YGl3eSuL8ltjaECF","X-Google-Smtp-Source":"AOwi7QAt0zZ8FqsVogHnRThPx8gJ3mo3hDpZhQzqOcvUtZC4Knd91bY1OZTLRKEkuBDjb3uU/ckm2w==","X-Received":"by 10.25.149.83 with SMTP id x80mr577481lfd.175.1506162777759;\n\tSat, 23 Sep 2017 03:32:57 -0700 (PDT)","To":"Bin Meng <bmeng.cn@gmail.com>","References":"<20170919201808.11433-1-tuomas.tynkkynen@iki.fi>\n\t<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>\n\t<CAEUhbmUHjo9ny=zyOubtbN_cMtzEzdd9HrnFT2mi5m1FY3-osQ@mail.gmail.com>","From":"Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>","Message-ID":"<ecb801b1-6031-5aa1-5463-83bfcfe65890@iki.fi>","Date":"Sat, 23 Sep 2017 13:32:44 +0300","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.1.0","MIME-Version":"1.0","In-Reply-To":"<CAEUhbmUHjo9ny=zyOubtbN_cMtzEzdd9HrnFT2mi5m1FY3-osQ@mail.gmail.com>","Content-Language":"en-US","Cc":"U-Boot Mailing List <u-boot@lists.denx.de>, Tom Rini <trini@konsulko.com>","Subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Transfer-Encoding":"base64","Content-Type":"text/plain; charset=\"utf-8\"; Format=\"flowed\"","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}},{"id":1776601,"web_url":"http://patchwork.ozlabs.org/comment/1776601/","msgid":"<CALeDE9PnxH+8x9-LoHR=TSUFa_GFwSRswyNCr2f+M-MDigXoNg@mail.gmail.com>","list_archive_url":null,"date":"2017-09-27T20:38:47","subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","submitter":{"id":13206,"url":"http://patchwork.ozlabs.org/api/people/13206/","name":"Peter Robinson","email":"pbrobinson@gmail.com"},"content":">> Hi Tuomas,\n>>\n>> On Wed, Sep 20, 2017 at 4:18 AM, Tuomas Tynkkynen\n>> <tuomas.tynkkynen@iki.fi> wrote:\n>>>\n>>> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n>>> machine on ARM. The minimal QEMU command line is:\n>>>\n>>>      qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n>>>\n>>> (Note that the 'highmem=off' parameter to the 'virt' machine is required\n>>> for\n>>> PCI to work in U-Boot.) This command line enables the following:\n>>>      - u-boot.bin loaded and executing in the emulated flash at address\n>>> 0x0\n>>>      - A generated device tree blob placed at the start of RAM\n>>>      - A freely configurable amount of RAM, described by the DTB\n>>>      - A PL011 serial port, discoverable via the DTB\n>>>      - An ARMv7 architected timer\n>>>      - PSCI for rebooting the system\n>>>      - A generic ECAM-based PCI host controller, discoverable via the DTB\n>>>\n>>> Additionally, QEMU allows plugging a bunch of useful peripherals to the\n>>> PCI bus.\n>>> The following ones are supported by both U-Boot and Linux:\n>>>\n>>> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n>>>      -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci\n>>> -device ide-drive,drive=mydisk,bus=ahci.0\n>>> - To add an Intel E1000 network adapter, pass e.g.:\n>>>      -net nic,model=e1000 -net user\n>>\n>>\n>> With this parameter I got:\n>>\n>> Warning: requested NIC (anonymous, model e1000) was not created (not\n>> supported by this machine?)\n>>\n>> I am using QEMU v2.5.0. It's better to mention the minimum required\n>> QEMU version in the commit message as well.\n>>\n>\n> I primarily tested with 2.9.0, but I found out that it will work in 2.5.0 as\n> well by changing the syntax to\n>     -netdev user,id=net0 -device e1000,netdev=net0\n> I will update the commit message accordingly.\n\nI wonder how hard it would be to support virtio interfaces for\nnetwork/storage, that would provide a fast/standard interface.\n\nPeter","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"O66A0YPY\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3y2V6H1x7qz9t66\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 06:39:01 +1000 (AEST)","by lists.denx.de (Postfix, from userid 105)\n\tid 6A3C1C21DC3; Wed, 27 Sep 2017 20:38:54 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id 256DDC21C59;\n\tWed, 27 Sep 2017 20:38:52 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid 020FDC21C59; Wed, 27 Sep 2017 20:38:50 +0000 (UTC)","from mail-wm0-f68.google.com (mail-wm0-f68.google.com\n\t[74.125.82.68])\n\tby lists.denx.de (Postfix) with ESMTPS id 09D8FC21C51\n\tfor <u-boot@lists.denx.de>; Wed, 27 Sep 2017 20:38:49 +0000 (UTC)","by mail-wm0-f68.google.com with SMTP id m127so84147wmm.1\n\tfor <u-boot@lists.denx.de>; Wed, 27 Sep 2017 13:38:49 -0700 (PDT)","by 10.223.148.161 with HTTP; Wed, 27 Sep 2017 13:38:47 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=FREEMAIL_FROM,\n\tRCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID\n\tautolearn=unavailable autolearn_force=no version=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=lLSJ8Ao6dTD+4I/nCcNmUd/MUVQnhXCUpkQC/30BuNQ=;\n\tb=O66A0YPYLaM+gyle6d19xORWkhvXK68ARKzlkB5sEQFqmk+Ca9hEErPiz8gySHjX20\n\tPA3MOhqEyIHns7WpLPWiHlBYEsr/5FdVVOypbDAP2tXtmZIcAEthMFiCKwyqgihZoCvE\n\t4E2G/FLLIgF43UL71FRejN/3LJHvN6+JeLQTg9RNY4i547nbDItMfTedBXDjgfxABQWA\n\tGZqOyw5CNx2mJm7NVj1+/zqUIpnxK1fAHHTC42+BNO1khy4/WJwjkq7VcZpwC2/6VtnU\n\t/DCrDasE5qVSanotUSNFmEUnlVjljS8TPqsELUNBbJgu1BxvU2qRMEaPHbB03Ve+VTau\n\tTudw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=lLSJ8Ao6dTD+4I/nCcNmUd/MUVQnhXCUpkQC/30BuNQ=;\n\tb=cp/JYhi030/L8hPcPTg/XBH4aXm6OlaWYepeLlW6ISEfveblDi5v6U+JTbzHwGZaCq\n\tJOxGNoqVmKZ5pvfe25PyHEGxkyU719Z3LyVp7IFulNMgwHyN39SqljHM4iiC5WPmuYBr\n\t56Rt9mylYrIHvR3j09aZ9+qTfofsg3mQxh03lBMkc+KXzw9aSgt43OhXPfRHS5AgRTrm\n\tdENJTnA45KSHQr3VrZImcwW7eviFW+s9wo5f5hJEw+n4B6Qnyl0TwHcGoEw0YFiUZFXO\n\tNBo3yzM7ytCjUkGUIwEhmWvzGHwBg2QS8/Ux6xLnsa+CvQl5HEIJsIXxLrb5YauVG3mz\n\twWTw==","X-Gm-Message-State":"AHPjjUi3NDlgV+MQxYRcIoZp83LLVbWOWy8kUL+UR2BhI9KMVdsWmD0r\n\tA8f+ZMyJdnCu3aTfqUyMYMFs8P8TQwcyHJYSN6w=","X-Google-Smtp-Source":"AOwi7QCxIzl7n7I9EO4BP4DnUkV0f5s0VVJObQ4uN4ApEDbYmXvQVrBTB0Gd2kAuswUVGb/QTYGPERu4PSmn2J2ZAW0=","X-Received":"by 10.28.144.206 with SMTP id s197mr1501070wmd.142.1506544728596;\n\tWed, 27 Sep 2017 13:38:48 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<ecb801b1-6031-5aa1-5463-83bfcfe65890@iki.fi>","References":"<20170919201808.11433-1-tuomas.tynkkynen@iki.fi>\n\t<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>\n\t<CAEUhbmUHjo9ny=zyOubtbN_cMtzEzdd9HrnFT2mi5m1FY3-osQ@mail.gmail.com>\n\t<ecb801b1-6031-5aa1-5463-83bfcfe65890@iki.fi>","From":"Peter Robinson <pbrobinson@gmail.com>","Date":"Wed, 27 Sep 2017 21:38:47 +0100","Message-ID":"<CALeDE9PnxH+8x9-LoHR=TSUFa_GFwSRswyNCr2f+M-MDigXoNg@mail.gmail.com>","To":"Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>","Cc":"U-Boot Mailing List <u-boot@lists.denx.de>, Tom Rini <trini@konsulko.com>","Subject":"Re: [U-Boot] [PATCH v2 5/6] ARM: Add a new arch + board for QEMU's\n\t'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}},{"id":1782111,"web_url":"http://patchwork.ozlabs.org/comment/1782111/","msgid":"<20171007130802.GS25966@bill-the-cat>","list_archive_url":null,"date":"2017-10-07T13:08:02","subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","submitter":{"id":65875,"url":"http://patchwork.ozlabs.org/api/people/65875/","name":"Tom Rini","email":"trini@konsulko.com"},"content":"On Tue, Sep 19, 2017 at 11:18:07PM +0300, Tuomas Tynkkynen wrote:\n\n> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n> machine on ARM. The minimal QEMU command line is:\n> \n>     qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n> \n> (Note that the 'highmem=off' parameter to the 'virt' machine is required for\n> PCI to work in U-Boot.) This command line enables the following:\n>     - u-boot.bin loaded and executing in the emulated flash at address 0x0\n>     - A generated device tree blob placed at the start of RAM\n>     - A freely configurable amount of RAM, described by the DTB\n>     - A PL011 serial port, discoverable via the DTB\n>     - An ARMv7 architected timer\n>     - PSCI for rebooting the system\n>     - A generic ECAM-based PCI host controller, discoverable via the DTB\n> \n> Additionally, QEMU allows plugging a bunch of useful peripherals to the PCI bus.\n> The following ones are supported by both U-Boot and Linux:\n> \n> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n>     -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci -device ide-drive,drive=mydisk,bus=ahci.0\n> - To add an Intel E1000 network adapter, pass e.g.:\n>     -net nic,model=e1000 -net user\n> - To add an EHCI-compliant USB host controller, pass e.g.:\n>     -device usb-ehci,id=ehci\n> - To add a NVMe disk, pass e.g.:\n>     -drive if=none,file=disk.img,id=mydisk -device nvme,drive=mydisk,serial=foo\n> \n> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n\nApplied to u-boot/master, thanks!","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=konsulko.com header.i=@konsulko.com\n\theader.b=\"QGYUIshG\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3y8Rnn4yDxz9t6x\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSun,  8 Oct 2017 00:15:25 +1100 (AEDT)","by lists.denx.de (Postfix, from userid 105)\n\tid 46CCCC21DF4; Sat,  7 Oct 2017 13:11:02 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id 26813C21EA6;\n\tSat,  7 Oct 2017 13:09:07 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid 84D18C21E32; Sat,  7 Oct 2017 13:08:10 +0000 (UTC)","from mail-qt0-f176.google.com (mail-qt0-f176.google.com\n\t[209.85.216.176])\n\tby lists.denx.de (Postfix) with ESMTPS id A8D3EC21DE5\n\tfor <u-boot@lists.denx.de>; Sat,  7 Oct 2017 13:08:06 +0000 (UTC)","by mail-qt0-f176.google.com with SMTP id a43so30083459qta.0\n\tfor <u-boot@lists.denx.de>; Sat, 07 Oct 2017 06:08:06 -0700 (PDT)","from bill-the-cat ([2606:a000:1401:811b:6821:3a00:ff9f:889e])\n\tby smtp.gmail.com with ESMTPSA id\n\tm189sm213212ywb.78.2017.10.07.06.08.04\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tSat, 07 Oct 2017 06:08:04 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3,\n\tRCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID autolearn=unavailable autolearn_force=no\n\tversion=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=konsulko.com;\n\ts=google; \n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:in-reply-to:user-agent;\n\tbh=LkwA+NGoMbg3Sf8bNYxxM1Hqy2H66zOU2WRz58dleSA=;\n\tb=QGYUIshGsLn3Dw7mWF37g71tBJXjeR7RNSgdyQrOoyLS8SKtGTIy8txx4HIBFrOUc8\n\tcDVZDnTRIDMWXh5k6mQtK5p+o9Zf73CEgOgWilJDnssVgXs+vpaLwngmcdI4gCTnN39T\n\t64sEJpgipIWJspG8z3zkm8giGHqj+owRFNM+Q=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:in-reply-to:user-agent;\n\tbh=LkwA+NGoMbg3Sf8bNYxxM1Hqy2H66zOU2WRz58dleSA=;\n\tb=oPU48Gcfk/h3hLYqq9TkL0/cjlBQljXdBHeI6i2yz9kuRj70B2c4GSbX3UR5sdP5V1\n\tmTzBASVaDRM5/QFUbuxMcn8HSV3bT2BTb+VzRlOt54buBU898mglG97SW36nFqJzNNhg\n\t6Q/T8MD0PY4KyzCukl+aYXlgc/98P+8xa9GofB9InwyO8aDX7nBICOLulWskFs1aY8bU\n\tagRe+h+/rQl6kyFZvlL/iSnFLyib1a2YZD0db1B9bw09ek+cBUyhIisrg0Mg0CYkCLLd\n\tbLtLflMCJ6rB9G8KXTZikA62DEXAW/N6Em7qIhdTVz3ySoqJ82VRC+MKhSm45e9Xopdy\n\tAQKQ==","X-Gm-Message-State":"AMCzsaWarDaOF1Jpfi3+41yOj+k+46dVkvazvHGU/CioZBqEshAE6peG\n\tE9Sd35Ccj+vxvOonMHqJpbLwkQ==","X-Google-Smtp-Source":"AOwi7QCt69LHGv9V9+8kPBKEMBimYtoR/TaFytBhAUjlZFHh5U+NqwN82thO3JBfP1rKDicYMMDMdA==","X-Received":"by 10.13.254.196 with SMTP id o187mr4160549ywf.229.1507381685540;\n\tSat, 07 Oct 2017 06:08:05 -0700 (PDT)","Date":"Sat, 7 Oct 2017 09:08:02 -0400","From":"Tom Rini <trini@konsulko.com>","To":"Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>","Message-ID":"<20171007130802.GS25966@bill-the-cat>","References":"<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>","MIME-Version":"1.0","In-Reply-To":"<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>","User-Agent":"Mutt/1.5.24 (2015-08-30)","Cc":"u-boot@lists.denx.de","Subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Type":"multipart/mixed;\n\tboundary=\"===============8786120568886007814==\"","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}},{"id":1782139,"web_url":"http://patchwork.ozlabs.org/comment/1782139/","msgid":"<CAEUhbmX_B1vSJd2mSj+o821fHVpasQJAxiEi4d_0xE8gOPAmmg@mail.gmail.com>","list_archive_url":null,"date":"2017-10-07T13:27:21","subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","submitter":{"id":64981,"url":"http://patchwork.ozlabs.org/api/people/64981/","name":"Bin Meng","email":"bmeng.cn@gmail.com"},"content":"Hi Tom,\n\nOn Sat, Oct 7, 2017 at 9:08 PM, Tom Rini <trini@konsulko.com> wrote:\n> On Tue, Sep 19, 2017 at 11:18:07PM +0300, Tuomas Tynkkynen wrote:\n>\n>> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n>> machine on ARM. The minimal QEMU command line is:\n>>\n>>     qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n>>\n>> (Note that the 'highmem=off' parameter to the 'virt' machine is required for\n>> PCI to work in U-Boot.) This command line enables the following:\n>>     - u-boot.bin loaded and executing in the emulated flash at address 0x0\n>>     - A generated device tree blob placed at the start of RAM\n>>     - A freely configurable amount of RAM, described by the DTB\n>>     - A PL011 serial port, discoverable via the DTB\n>>     - An ARMv7 architected timer\n>>     - PSCI for rebooting the system\n>>     - A generic ECAM-based PCI host controller, discoverable via the DTB\n>>\n>> Additionally, QEMU allows plugging a bunch of useful peripherals to the PCI bus.\n>> The following ones are supported by both U-Boot and Linux:\n>>\n>> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n>>     -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci -device ide-drive,drive=mydisk,bus=ahci.0\n>> - To add an Intel E1000 network adapter, pass e.g.:\n>>     -net nic,model=e1000 -net user\n>> - To add an EHCI-compliant USB host controller, pass e.g.:\n>>     -device usb-ehci,id=ehci\n>> - To add a NVMe disk, pass e.g.:\n>>     -drive if=none,file=disk.img,id=mydisk -device nvme,drive=mydisk,serial=foo\n>>\n>> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n>\n> Applied to u-boot/master, thanks!\n>\n\nI expect Tuomas will send a new version with commit message revised. See below:\n\n> I primarily tested with 2.9.0, but I found out that it will work in 2.5.0 as well by changing the syntax to\n>    -netdev user,id=net0 -device e1000,netdev=net0\n> I will update the commit message accordingly.\n\nRegards,\nBin","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"GR9jOFQD\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3y8S6P16B5z9t6Z\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSun,  8 Oct 2017 00:29:49 +1100 (AEDT)","by lists.denx.de (Postfix, from userid 105)\n\tid C8CECC21E18; Sat,  7 Oct 2017 13:29:22 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id 73317C21E92;\n\tSat,  7 Oct 2017 13:29:20 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid B7E76C21E74; Sat,  7 Oct 2017 13:27:24 +0000 (UTC)","from mail-wm0-f67.google.com (mail-wm0-f67.google.com\n\t[74.125.82.67])\n\tby lists.denx.de (Postfix) with ESMTPS id 1F017C21ECA\n\tfor <u-boot@lists.denx.de>; Sat,  7 Oct 2017 13:27:23 +0000 (UTC)","by mail-wm0-f67.google.com with SMTP id i124so13277695wmf.3\n\tfor <u-boot@lists.denx.de>; Sat, 07 Oct 2017 06:27:23 -0700 (PDT)","by 10.223.198.76 with HTTP; Sat, 7 Oct 2017 06:27:21 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=FREEMAIL_FROM,\n\tRCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID autolearn=unavailable\n\tautolearn_force=no version=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=T1oiyVYeG1Pup7fIKqcExtWc++X7xlg4f+XK5bvMMeU=;\n\tb=GR9jOFQD4s7JmQc59k15BveI/kmL6XWybLC8o+tC6qCktxs6bpUW2lhWzOeOjnEAWo\n\tdCmhWSDFSmW/RC1VijpT1sVbhDcIrS6PEy6ocurlwQmy1lGe1Hgr5oKEHV7QUQmapk7f\n\t/QO7G2fmSaSEHeK+qDyEqjS1cdIogtmXSWQEeo8NpSMwcvHZhNzSWSwWJmXUwJT8WZ3A\n\tH+SK3PJ9dc9hjb7YdMJ+RtTOb6p1xfSLzUomjlJHdx1HpqiUFQpU6ynpyBGFvNFndu/d\n\tsHj4kSb2MD64aZr0QuMVrYKc3JgvftQApLixsNvsTFKOlza4oYInQdiXafSvzpPf4VMQ\n\tOjmw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=T1oiyVYeG1Pup7fIKqcExtWc++X7xlg4f+XK5bvMMeU=;\n\tb=Hppf8ivmFElV+4SWVaMv9Ed4h/9i0StlR4WIuVhK6jkb6XkQfU+ljdlpw3NkjR+cvm\n\t6kryaBnxQYJxcFOtby2r5HVtSQW1XAGIWN51GA4Wbihx0+5fI10XtOGFwHGUTdmzwNnl\n\tbD3KPZfDl0+RenDynWdcSKVrOm5ytzEfrAKC2IHKfUhEauGn9cvrECUvs80Xe9k4VloK\n\tgZqDse6jiBiWD6wJdQOZ/WbOP8sUxOOZqipGSS4yx3f3pA6exBzvwi5cwaJTT9xhOOnB\n\tjh3tHIhaQgr+7IG/X6U7aLqRLJQK+UKENYISSZpz8mG2Hp0OiRJMbjlYpS05v7P3CC+Y\n\tl/9g==","X-Gm-Message-State":"AMCzsaV6C4loyaTpm32Eli+Hm4jQrJIzqLB2qN8MzSojvk83MmnTiO9q\n\tPgVpLKnMX6BZxUlE+KykEy6gVZI5s0cvlL/wVCs=","X-Google-Smtp-Source":"AOwi7QA5qGqrBd2ZExVnUvkrw6gwJUJbs8Nm3uiWIInVjvJ8p9P4CTfk84d92Pbsfb1Jp3g5WWKxQwtG3DKBoBlBgks=","X-Received":"by 10.28.24.134 with SMTP id 128mr4500698wmy.61.1507382842701;\n\tSat, 07 Oct 2017 06:27:22 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<20171007130802.GS25966@bill-the-cat>","References":"<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>\n\t<20171007130802.GS25966@bill-the-cat>","From":"Bin Meng <bmeng.cn@gmail.com>","Date":"Sat, 7 Oct 2017 21:27:21 +0800","Message-ID":"<CAEUhbmX_B1vSJd2mSj+o821fHVpasQJAxiEi4d_0xE8gOPAmmg@mail.gmail.com>","To":"Tom Rini <trini@konsulko.com>","Cc":"U-Boot Mailing List <u-boot@lists.denx.de>","Subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}},{"id":1782140,"web_url":"http://patchwork.ozlabs.org/comment/1782140/","msgid":"<20171007140557.GK25966@bill-the-cat>","list_archive_url":null,"date":"2017-10-07T14:05:57","subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","submitter":{"id":65875,"url":"http://patchwork.ozlabs.org/api/people/65875/","name":"Tom Rini","email":"trini@konsulko.com"},"content":"On Sat, Oct 07, 2017 at 09:27:21PM +0800, Bin Meng wrote:\n> Hi Tom,\n> \n> On Sat, Oct 7, 2017 at 9:08 PM, Tom Rini <trini@konsulko.com> wrote:\n> > On Tue, Sep 19, 2017 at 11:18:07PM +0300, Tuomas Tynkkynen wrote:\n> >\n> >> This board builds an U-Boot binary that is bootable with QEMU's 'virt'\n> >> machine on ARM. The minimal QEMU command line is:\n> >>\n> >>     qemu-system-arm -machine virt,highmem=off -bios u-boot.bin\n> >>\n> >> (Note that the 'highmem=off' parameter to the 'virt' machine is required for\n> >> PCI to work in U-Boot.) This command line enables the following:\n> >>     - u-boot.bin loaded and executing in the emulated flash at address 0x0\n> >>     - A generated device tree blob placed at the start of RAM\n> >>     - A freely configurable amount of RAM, described by the DTB\n> >>     - A PL011 serial port, discoverable via the DTB\n> >>     - An ARMv7 architected timer\n> >>     - PSCI for rebooting the system\n> >>     - A generic ECAM-based PCI host controller, discoverable via the DTB\n> >>\n> >> Additionally, QEMU allows plugging a bunch of useful peripherals to the PCI bus.\n> >> The following ones are supported by both U-Boot and Linux:\n> >>\n> >> - To add a Serial ATA disk via an Intel ICH9 AHCI controller, pass e.g.:\n> >>     -drive if=none,file=disk.img,id=mydisk -device ich9-ahci,id=ahci -device ide-drive,drive=mydisk,bus=ahci.0\n> >> - To add an Intel E1000 network adapter, pass e.g.:\n> >>     -net nic,model=e1000 -net user\n> >> - To add an EHCI-compliant USB host controller, pass e.g.:\n> >>     -device usb-ehci,id=ehci\n> >> - To add a NVMe disk, pass e.g.:\n> >>     -drive if=none,file=disk.img,id=mydisk -device nvme,drive=mydisk,serial=foo\n> >>\n> >> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>\n> >\n> > Applied to u-boot/master, thanks!\n> >\n> \n> I expect Tuomas will send a new version with commit message revised. See below:\n> \n> > I primarily tested with 2.9.0, but I found out that it will work in 2.5.0 as well by changing the syntax to\n> >    -netdev user,id=net0 -device e1000,netdev=net0\n> > I will update the commit message accordingly.\n\nAh, oops.  But, lets make sure that information ends up in a doc/ README\nsomewhere for easy reference.  Thanks!","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.denx.de\n\t(client-ip=81.169.180.215; helo=lists.denx.de;\n\tenvelope-from=u-boot-bounces@lists.denx.de;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=konsulko.com header.i=@konsulko.com\n\theader.b=\"f1CzWJl5\"; dkim-atps=neutral"],"Received":["from lists.denx.de (dione.denx.de [81.169.180.215])\n\tby ozlabs.org (Postfix) with ESMTP id 3y8SwQ1kSMz9t4Z\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSun,  8 Oct 2017 01:06:12 +1100 (AEDT)","by lists.denx.de (Postfix, from userid 105)\n\tid D1716C21E79; Sat,  7 Oct 2017 14:06:07 +0000 (UTC)","from lists.denx.de (localhost [IPv6:::1])\n\tby lists.denx.de (Postfix) with ESMTP id 5797AC21DED;\n\tSat,  7 Oct 2017 14:06:05 +0000 (UTC)","by lists.denx.de (Postfix, from userid 105)\n\tid 0BF8CC21DED; Sat,  7 Oct 2017 14:06:03 +0000 (UTC)","from mail-qt0-f169.google.com (mail-qt0-f169.google.com\n\t[209.85.216.169])\n\tby lists.denx.de (Postfix) with ESMTPS id 217E7C21DDD\n\tfor <u-boot@lists.denx.de>; Sat,  7 Oct 2017 14:06:01 +0000 (UTC)","by mail-qt0-f169.google.com with SMTP id o52so36152059qtc.9\n\tfor <u-boot@lists.denx.de>; Sat, 07 Oct 2017 07:06:01 -0700 (PDT)","from bill-the-cat ([2606:a000:1401:811b:6821:3a00:ff9f:889e])\n\tby smtp.gmail.com with ESMTPSA id\n\ti5sm2535199ywi.65.2017.10.07.07.05.58\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tSat, 07 Oct 2017 07:05:59 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3,\n\tRCVD_IN_MSPIKE_WL,\n\tT_DKIM_INVALID autolearn=unavailable autolearn_force=no\n\tversion=3.4.0","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=konsulko.com;\n\ts=google; \n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:in-reply-to:user-agent;\n\tbh=+ZldwowxxUQvN4ylhU80rwWLP8/csJjdusU6MOjyMpE=;\n\tb=f1CzWJl5r/23Su3YzJxJQL3X3duw0uYYYcfRSXg+Z+Q9biqFlnx3YwHFtE9leD27Y/\n\ttPwizc74YdPxKIpdwgNc+vDtYmdAPO3S9kAVrm4u1X9NMbAjbbbBO2QZoqUOPnFDCbQ4\n\tB0kDfVkf5ziR7xpeymgMA5ShyMop3x15jfDoI=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:in-reply-to:user-agent;\n\tbh=+ZldwowxxUQvN4ylhU80rwWLP8/csJjdusU6MOjyMpE=;\n\tb=EnXT80Ve2dpqHZfaTSCfhGUmAX73EFzu1COfoHryQTi87C3yRE/4FMnLhpXJTlcQPy\n\tW5p1H8iOoQmVnkkRYvoaU+IBOsNMy7oPkkaoam/zHut6Omqo90NxjuShqUBrqH963xB/\n\tYKI2WI71ylqrwMzK839G2o+Tak2tA60Ml7BsGP2k4/YOhOJRCcz8aPEE279Awb1euWPU\n\tR4nBGytGVKagdpTVcoRYTiI9cuOs9tBOFCXfbTxADJNMTTnqEykyiFFwCCTANuHJ3nq5\n\taTyOi2A2Nw6UP8Ugncp7Fwn2Nfu48diC/H+5cU+AhGycLkTtj/EqtjTXsm8I1xKxM6YC\n\tKA+w==","X-Gm-Message-State":"AMCzsaXazO56mJD0tycH4iQQDGIbD1uak7llwRdk9Fcm3iuvBKoriMm1\n\tL47wjF4djr3cjohX5rpYTGMP0g==","X-Google-Smtp-Source":"AOwi7QDjKs1vgl6p+ccO1pLvpEsW0nYFktMLhRS7MVmTS5QgI78GNUwxLK5rxIQ/MIKP/bHsRW6Q/A==","X-Received":"by 10.129.200.69 with SMTP id k5mr4240134ywl.223.1507385159712; \n\tSat, 07 Oct 2017 07:05:59 -0700 (PDT)","Date":"Sat, 7 Oct 2017 10:05:57 -0400","From":"Tom Rini <trini@konsulko.com>","To":"Bin Meng <bmeng.cn@gmail.com>","Message-ID":"<20171007140557.GK25966@bill-the-cat>","References":"<20170919201808.11433-6-tuomas.tynkkynen@iki.fi>\n\t<20171007130802.GS25966@bill-the-cat>\n\t<CAEUhbmX_B1vSJd2mSj+o821fHVpasQJAxiEi4d_0xE8gOPAmmg@mail.gmail.com>","MIME-Version":"1.0","In-Reply-To":"<CAEUhbmX_B1vSJd2mSj+o821fHVpasQJAxiEi4d_0xE8gOPAmmg@mail.gmail.com>","User-Agent":"Mutt/1.5.24 (2015-08-30)","Cc":"U-Boot Mailing List <u-boot@lists.denx.de>","Subject":"Re: [U-Boot] [U-Boot, v2,\n\t5/6] ARM: Add a new arch + board for QEMU's 'virt' machine","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.18","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<http://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>","Content-Type":"multipart/mixed;\n\tboundary=\"===============7362069488473427988==\"","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>"}}]