From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60503) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1afGJw-0006jb-TZ for qemu-devel@nongnu.org; Sun, 13 Mar 2016 20:25:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1afGJs-00015i-BH for qemu-devel@nongnu.org; Sun, 13 Mar 2016 20:25:16 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:36828) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1afGJs-00015R-5q for qemu-devel@nongnu.org; Sun, 13 Mar 2016 20:25:12 -0400 Received: by mail-wm0-x241.google.com with SMTP id l68so12557809wml.3 for ; Sun, 13 Mar 2016 17:25:11 -0700 (PDT) From: David Kiarie Date: Mon, 14 Mar 2016 03:24:55 +0300 Message-Id: <1457915099-11174-1-git-send-email-davidkiarie4@gmail.com> Subject: [Qemu-devel] [V7 0/4] AMD IOMMU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: marcel@redhat.com, valentine.sinitsyn@gmail.com, jan.kiszka@web.de, David Kiarie , mst@redhat.com Hello there, This series adds AMD IOMMU emulation support to Qemu. The only main change since V6 is: -Fixed a cache bug that caused the issue reported by Jan I have assummed that we are running one IOMMU and users don't have the freedom to run many IOMMUs. For instance, I've decided to stick with 'pci_create_simple' since if I change this and manually create the the device inorder to set the addr, I'll be repeating exactly what 'pci_create_simple' does while there is no immediate benefit. Being able to run multiple IOMMUs is a plus but at the moment I experience a few problems with the code while there is no immediate benefit. Other than these patches there's also an planned GSoC project to add features to feature-limited AMD IO MMU listed here[1]. It could also look at the the possibility of running multiple IOMMUs. GSoC is a program that offers students stipends to work on open source projects. You can read more about GSoC here[2]. Am a student and am willing to take up this IO MMU related project but I've not got a full mentor. Yeah, you're right, there are mentors listed on the project's details but they would only want to co-mentor as they may not have much time. They were listed there mainly for purposes of listing the project. I'd like to know if anyone is willing to mentor this project mainly the people involved in the review process or anyone else! David Kiarie (4): hw/i386: Introduce AMD IOMMU hw/i386: ACPI table for AMD IOMMU hw/core: Add AMD IOMMU to machine properties hw/pci-host: Emulate AMD IOMMU hw/core/machine.c | 27 +- hw/i386/Makefile.objs | 1 + hw/i386/acpi-build.c | 98 ++- hw/i386/amd_iommu.c | 1431 +++++++++++++++++++++++++++++++++++++++++ hw/i386/amd_iommu.h | 398 ++++++++++++ hw/pci-host/q35.c | 21 +- include/hw/acpi/acpi-defs.h | 55 ++ include/hw/boards.h | 1 + include/hw/i386/intel_iommu.h | 2 + include/hw/pci/pci.h | 2 + qemu-options.hx | 7 +- util/qemu-config.c | 4 +- 12 files changed, 2027 insertions(+), 20 deletions(-) create mode 100644 hw/i386/amd_iommu.c create mode 100644 hw/i386/amd_iommu.h [1]http://qemu-project.org/Google_Summer_of_Code_2016#Qemu_AMD_IO_MMU_emulation [2]https://summerofcode.withgoogle.com/ -- 2.1.4