Cover Letter Detail
Show a cover letter.
GET /api/covers/1444197/?format=api
{ "id": 1444197, "url": "http://patchwork.ozlabs.org/api/covers/1444197/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/cover/1614244979-48216-1-git-send-email-bmeng.cn@gmail.com/", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/projects/18/?format=api", "name": "U-Boot", "link_name": "uboot", "list_id": "u-boot.lists.denx.de", "list_email": "u-boot@lists.denx.de", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1614244979-48216-1-git-send-email-bmeng.cn@gmail.com>", "list_archive_url": null, "date": "2021-02-25T09:22:21", "name": "[v3,00/38] ppc: qemu: Convert qemu-ppce500 to driver model and enable additional driver support", "submitter": { "id": 64981, "url": "http://patchwork.ozlabs.org/api/people/64981/?format=api", "name": "Bin Meng", "email": "bmeng.cn@gmail.com" }, "mbox": "http://patchwork.ozlabs.org/project/uboot/cover/1614244979-48216-1-git-send-email-bmeng.cn@gmail.com/mbox/", "series": [ { "id": 230985, "url": "http://patchwork.ozlabs.org/api/series/230985/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=230985", "date": "2021-02-25T09:22:22", "name": "ppc: qemu: Convert qemu-ppce500 to driver model and enable additional driver support", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/230985/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/1444197/comments/", "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 spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=<UNKNOWN>)", "ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20161025 header.b=fpkN/tDl;\n\tdkim-atps=neutral", "phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de", "phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.b=\"fpkN/tDl\";\n\tdkim-atps=neutral", "phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=bmeng.cn@gmail.com" ], "Received": [ "from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 4DmS5m66h2z9sVR\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 25 Feb 2021 20:23:48 +1100 (AEDT)", "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 57D5E806C3;\n\tThu, 25 Feb 2021 10:23:33 +0100 (CET)", "by phobos.denx.de (Postfix, from userid 109)\n id B16AC8006D; Thu, 25 Feb 2021 10:23:30 +0100 (CET)", "from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com\n [IPv6:2a00:1450:4864:20::52e])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 3662F8006D\n for <u-boot@lists.denx.de>; Thu, 25 Feb 2021 10:23:27 +0100 (CET)", "by mail-ed1-x52e.google.com with SMTP id p2so5873200edm.12\n for <u-boot@lists.denx.de>; Thu, 25 Feb 2021 01:23:27 -0800 (PST)", "from pek-vx-bsp2.wrs.com\n (ec2-44-242-66-180.us-west-2.compute.amazonaws.com. [44.242.66.180])\n by smtp.gmail.com with ESMTPSA id k22sm2987368edv.33.2021.02.25.01.23.21\n (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);\n Thu, 25 Feb 2021 01:23:26 -0800 (PST)" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de", "X-Spam-Level": "", "X-Spam-Status": "No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,SPF_HELO_NONE autolearn=ham\n autolearn_force=no version=3.4.2", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n h=from:to:cc:subject:date:message-id;\n bh=MxAg9mEplHYi/WoMH9eGqbZdqmjTbCTLlnsCgEMZaYc=;\n b=fpkN/tDlPY3zPcBW05/FvpN+ZaWG7NySbIAn+6Xx0h/KAHN63K4+aaXIdcTNZ0oabP\n iHlsW0nkBT+nAR6mnub9S3B/59lJpIfRP1zpwwB3ZhHDp1KU9jebLIcKYjuJMVLy2Em+\n iXW7SQtxlyjoV9x+aB0BuL7qZlrqYo9ovUqUmc6G959Ewq4XEcC8DybVtAcc7UC41j9j\n FWFvHluIndr8X08zSkFNEP7MKNO3v5kUR+twS3Z7pAxf9kMiVgRMuPHVDzCRI+5jD7OP\n zCD7VyBiwHcxwpw9Tff0/XRgiexD8ePN/62Z2iQX2WAxLJK5Tuya+wIPs5H+2Yys2nVR\n u9Yw==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20161025;\n h=x-gm-message-state:from:to:cc:subject:date:message-id;\n bh=MxAg9mEplHYi/WoMH9eGqbZdqmjTbCTLlnsCgEMZaYc=;\n b=F5DCm8h4b+D4mO2E1xy58AjnWXLtvRbFLAWOYCHykq4u+f2FA4wEBvoTqpR9hl2TBC\n eAJJsR3cc4C+OMPIKclR5AeQOey27+rvXFLR+6R5PQ+nSdDx8GvgG7CY6mHO3ee66U8U\n O3/nwxnDRoyiqj3ySmRTBB7oLCxq+JpZgwz69qZi9SeheOgWPgaOV7bwa+MQyxJ75lBC\n wdaIQ2tupQDaIolzUUqyn/MrqKbPmvyPXUsFp/ELgI6ZFyT/m9JT3jDh98MMclYIdJ9S\n HLlgyAMLaDnOoV3r+8TwxHY2e7VHIfVGGh9OKxyjxU0sqalYM10Awz9SlV3Q6d6GXipu\n Ru6w==", "X-Gm-Message-State": "AOAM530LwElfwNjSA8s6Kb3okJcv/zIHBvfWAOIVJJtG3I6hOqp7DjwH\n OxN3+7+IAM+w+R5pLR4UtKg=", "X-Google-Smtp-Source": "\n ABdhPJz8e+GMKIvAG5+QjvRqB+8lsOd21nEA9pDahwcaT2mO2k4mw8uZ8JVJAyvzPxIGTjkwEzX+VQ==", "X-Received": "by 2002:a05:6402:3121:: with SMTP id\n dd1mr1924094edb.387.1614245006797;\n Thu, 25 Feb 2021 01:23:26 -0800 (PST)", "From": "Bin Meng <bmeng.cn@gmail.com>", "To": "Simon Glass <sjg@chromium.org>, Alexander Graf <agraf@csgraf.de>,\n Priyanka Jain <priyanka.jain@nxp.com>", "Cc": "U-Boot Mailing List <u-boot@lists.denx.de>, Tom Rini <trini@konsulko.com>,\n Marek Szyprowski <m.szyprowski@samsung.com>,\n Matthias Brugger <mbrugger@suse.com>, Heiko Schocher <hs@denx.de>,\n qemu-ppc@nongnu.org, qemu-devel@nongnu.org", "Subject": "[PATCH v3 00/38] ppc: qemu: Convert qemu-ppce500 to driver model and\n enable additional driver support", "Date": "Thu, 25 Feb 2021 17:22:21 +0800", "Message-Id": "<1614244979-48216-1-git-send-email-bmeng.cn@gmail.com>", "X-Mailer": "git-send-email 2.7.4", "X-BeenThere": "u-boot@lists.denx.de", "X-Mailman-Version": "2.1.34", "Precedence": "list", "List-Id": "U-Boot discussion <u-boot.lists.denx.de>", "List-Unsubscribe": "<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>", "List-Archive": "<https://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 <mailto:u-boot-request@lists.denx.de?subject=subscribe>", "Errors-To": "u-boot-bounces@lists.denx.de", "Sender": "\"U-Boot\" <u-boot-bounces@lists.denx.de>", "X-Virus-Scanned": "clamav-milter 0.102.4 at phobos.denx.de", "X-Virus-Status": "Clean" }, "content": "At present when building qemu-ppce500 the following warnings are seen:\n\n===================== WARNING ======================\nThis board does not use CONFIG_DM. CONFIG_DM will be\ncompulsory starting with the v2020.01 release.\nFailure to update may result in board removal.\n UPD include/generated/timestamp_autogenerated.h\nSee doc/driver-model/migration.rst for more info.\n====================================================\n===================== WARNING ======================\nThis board does not use CONFIG_DM_PCI Please update\nthe board to use CONFIG_DM_PCI before the v2019.07 release.\nFailure to update by the deadline may result in board removal.\nSee doc/driver-model/migration.rst for more info.\n====================================================\n===================== WARNING ======================\nThis board does not use CONFIG_DM_ETH (Driver Model\nfor Ethernet drivers). Please update the board to use\nCONFIG_DM_ETH before the v2020.07 release. Failure to\nupdate by the deadline may result in board removal.\nSee doc/driver-model/migration.rst for more info.\n====================================================\n\nThe conversion of qemu-ppce500 board to driver model is long overdue.\n\nWhen testing the exisitng qemu-ppce500 support, PCI was found broken.\nThis is caused by 2 separate issues:\n\n- One issue was caused by U-Boot:\n Commit e002474158d1 (\"pci: pci-uclass: Dynamically allocate the PCI regions\")\n Patch #1 updated the non-DM fsl_pci_init driver to dynamically allocate the\n PCI regions, to keep in sync with the pci uclass driver\n- One issue was caused by QEMU:\n commit e6b4e5f4795b (\"PPC: e500: Move CCSR and MMIO space to upper end of address space\")\n commit cb3778a0455a (\"PPC: e500 pci host: Add support for ATMUs\")\n Patch #3-4 fixed this issue to keep in sync with latest QEMU upstream\n\nPatch #5-8, #34-36 are minor fixes and clean-ups.\n\nStarting from patch#9, these are driver model conversion patches.\n\nPatch #11-17 are mainly related to CONFIG_ADDR_MAP, a library to support targets\nthat have non-identity virtual-physical address mappings. A new command 'addrmap'\nis introduced to aid debugging, and a fix to arch/powerpc/asm/include/io.h is\nmade to correct the usage of CONFIG_ADDR_MAP as it can only be used in the post-\nrelocation phase. Also the initialization of this library is moved a bit earlier\nin the post-relocation phase otherwise device drivers won't work.\n\nPatch #19-21 are 85xx PCI driver fixes. It adds support to controller register\nphysical address beyond 32-bit, as well as support to 64-bit bus and cpu address\nas current upstream QEMU uses 64-bit cpu address.\n\nStarting from patch#24, these are additional driver support patches.\n\nPatch #24, #26 are minor fix to the 'virtio' command and BLK driver dependency.\n\nPatch #25 enables the VirtIO NET support as by default a VirtIO standard PCI\nnetworking device is connected as an ethernet interface at PCI address 0.1.0.\n\nPatch #27 enables the VirtIO BLK driver support.\n\nPatch #28-30 enables the GPIO support.\n\nPatch #31-32 enables poweroff via GPIO.\n\nPatch #33 enables RTC over the I2C bus.\n\nPatch #37 moves the qemu-ppce500 boards codes to board/emulation as that is the\nplace for other QEMU targets like x86, arm, riscv.\n\nPatch #38 adds a reST document to describe how to build and run U-Boot for the\nQEMU ppce500 machine.\n\nI hope we can make this series to U-Boot v2021.04 release.\n\nThis series is available at u-boot-x86/qemu-ppc for testing.\n\nThis cover letter is cc'ed to QEMU mailing list for a heads-up.\nA future patch will be sent to QEMU mailing list to bring its in-tree\nU-Boot source codes up-to-date.\n\nChanges in v3:\n- rebase on top of u-boot/master\n\nChanges in v2:\n- drop the revert patch of commit e002474158d1\n- new patch: pci: fsl_pci_init: Dynamically allocate the PCI regions\n- add more details in the commit message, and put some comments\n in the codes to explain why\n- add doc/usage/addrmap.rst\n- new patch: test: cmd: Add a basic test for 'addrmap' command\n- new patch: virtio: Fix VirtIO BLK driver dependency\n- new patch: ppc: qemu: Enable VirtIO BLK support\n- new patch: ppc: mpc85xx: Add 'gpibe' register to 'struct ccsr_gpio'\n- new patch: gpio: mpc8xxx: Support controller register physical address beyond 32-bit\n- new patch: ppc: qemu: Enable GPIO support\n- new patch: dm: sysreset: Add a Kconfig option for the 'reset' command\n- new patch: ppc: qemu: Enable support for power off via GPIO\n- new patch: ppc: qemu: Enable RTC support via I2C\n- new patch: ppc: qemu: Delete the temporary FDT virtual-physical mapping after U-Boot is relocated\n- new patch: ppc: qemu: Drop a custom env variable 'fdt_addr_r'\n- new patch: ppc: qemu: Drop fixed_sdram()\n- add descriptions for VirtIO BLK, RTC and power off\n\nBin Meng (38):\n pci: fsl_pci_init: Dynamically allocate the PCI regions\n ppc: qemu: Update MAINTAINERS for correct email address\n common: fdt_support: Support special case of PCI address in\n fdt_read_prop()\n ppc: qemu: Support non-identity PCI bus address\n ppc: qemu: Fix CONFIG_SYS_PCI_MAP_END\n ppc: mpc85xx: Wrap LAW related codes with CONFIG_FSL_LAW\n ppc: qemu: Drop init_laws() and print_laws()\n ppc: qemu: Drop board_early_init_f()\n ppc: qemu: Enable OF_CONTROL\n ppc: qemu: Enable driver model\n include: Remove extern from addr_map.h\n lib: addr_map: Move address_map[] type to the header file\n cmd: Add a command to display the address map\n test: cmd: Add a basic test for 'addrmap' command\n lib: kconfig: Mention CONFIG_ADDR_MAP limitation in the help\n ppc: io.h: Use addrmap_ translation APIs only in post-relocation phase\n common: Move initr_addr_map() to a bit earlier\n ppc: qemu: Switch over to use DM serial\n pci: mpc85xx: Wrap LAW programming with CONFIG_FSL_LAW\n pci: mpc85xx: Support controller register physical address beyond\n 32-bit\n pci: mpc85xx: Support 64-bit bus and cpu address\n ppc: qemu: Switch over to use DM ETH and PCI\n ppc: qemu: Drop CONFIG_OF_BOARD_SETUP\n cmd: Fix virtio command dependency\n ppc: qemu: Enable VirtIO NET support\n virtio: Fix VirtIO BLK driver dependency\n ppc: qemu: Enable VirtIO BLK support\n ppc: mpc85xx: Add 'gpibe' register to 'struct ccsr_gpio'\n gpio: mpc8xxx: Support controller register physical address beyond\n 32-bit\n ppc: qemu: Enable GPIO support\n dm: sysreset: Add a Kconfig option for the 'reset' command\n ppc: qemu: Enable support for power off via GPIO\n ppc: qemu: Enable RTC support via I2C\n ppc: qemu: Delete the temporary FDT virtual-physical mapping after\n U-Boot is relocated\n ppc: qemu: Drop a custom env variable 'fdt_addr_r'\n ppc: qemu: Drop fixed_sdram()\n ppc: qemu: Move board directory from board/freescale to\n board/emulation\n doc: Add a reST document for qemu-ppce500\n\n arch/powerpc/cpu/mpc85xx/Kconfig | 2 +-\n arch/powerpc/cpu/mpc85xx/cpu.c | 2 +\n arch/powerpc/cpu/mpc85xx/cpu_init_early.c | 2 +\n arch/powerpc/include/asm/arch-mpc85xx/gpio.h | 2 +-\n arch/powerpc/include/asm/immap_85xx.h | 1 +\n arch/powerpc/include/asm/io.h | 15 +-\n .../{freescale => emulation}/qemu-ppce500/Kconfig | 2 +-\n board/emulation/qemu-ppce500/MAINTAINERS | 7 +\n .../{freescale => emulation}/qemu-ppce500/Makefile | 0\n .../qemu-ppce500/qemu-ppce500.c | 178 +++++++--------------\n board/freescale/qemu-ppce500/MAINTAINERS | 6 -\n cmd/Kconfig | 8 +\n cmd/Makefile | 1 +\n cmd/addrmap.c | 35 ++++\n common/board_r.c | 6 +-\n common/fdt_support.c | 20 ++-\n configs/qemu-ppce500_defconfig | 27 +++-\n doc/board/emulation/index.rst | 1 +\n doc/board/emulation/qemu-ppce500.rst | 88 ++++++++++\n doc/usage/addrmap.rst | 41 +++++\n doc/usage/index.rst | 1 +\n drivers/gpio/mpc8xxx_gpio.c | 7 +-\n drivers/pci/fsl_pci_init.c | 5 +\n drivers/pci/pci_mpc85xx.c | 25 +--\n drivers/sysreset/Kconfig | 6 +\n drivers/sysreset/sysreset-uclass.c | 2 +\n drivers/virtio/Kconfig | 1 +\n include/addr_map.h | 16 +-\n include/configs/qemu-ppce500.h | 30 +---\n include/test/suites.h | 2 +\n lib/Kconfig | 2 +\n lib/addr_map.c | 6 +-\n test/cmd/Makefile | 1 +\n test/cmd/addrmap.c | 38 +++++\n test/cmd_ut.c | 6 +\n 35 files changed, 397 insertions(+), 195 deletions(-)\n rename board/{freescale => emulation}/qemu-ppce500/Kconfig (86%)\n create mode 100644 board/emulation/qemu-ppce500/MAINTAINERS\n rename board/{freescale => emulation}/qemu-ppce500/Makefile (100%)\n rename board/{freescale => emulation}/qemu-ppce500/qemu-ppce500.c (65%)\n delete mode 100644 board/freescale/qemu-ppce500/MAINTAINERS\n create mode 100644 cmd/addrmap.c\n create mode 100644 doc/board/emulation/qemu-ppce500.rst\n create mode 100644 doc/usage/addrmap.rst\n create mode 100644 test/cmd/addrmap.c" }