From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39767) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZzYsP-0002np-IL for qemu-devel@nongnu.org; Thu, 19 Nov 2015 18:44:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZzYsO-00027g-K8 for qemu-devel@nongnu.org; Thu, 19 Nov 2015 18:44:29 -0500 Message-ID: <1447976660.4697.210.camel@redhat.com> From: Alex Williamson Date: Thu, 19 Nov 2015 16:44:20 -0700 In-Reply-To: <1447946528-1533-1-git-send-email-eric.auger@linaro.org> References: <1447946528-1533-1-git-send-email-eric.auger@linaro.org> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RESEND RFC 0/6] AMD XGBE KVM platform passthrough List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eric Auger Cc: b.reynal@virtualopensystems.com, peter.maydell@linaro.org, eric.auger@st.com, patches@linaro.org, qemu-devel@nongnu.org, qemu-arm@nongnu.org, suravee.suthikulpanit@amd.com, pbonzini@redhat.com, thomas.lendacky@amd.com, christoffer.dall@linaro.org On Thu, 2015-11-19 at 15:22 +0000, Eric Auger wrote: > I am resending this RFC from Oct 12, after kernel 4.4-rc1 and > QEMU 2.5-rc1, hoping things have calmed down a little bit. > > This RFC allows to set up AMD XGBE passthrough. This was tested on AMD > Seattle. > > The first upstreamed device supporting KVM platform passthrough was the > Calxeda Midway XGMAC. Compared to this latter, the XGBE XGMAC exposes a > much more complex device tree node. Generating the device tree node for > the guest is the challenging and controversary part of this series. > > - First There are 2 device tree node formats: > one where XGBE and PHY are described in separate nodes and another one > that combines both description in a single node (only supported by 4.2 > onwards kernels). Only the combined description is supported for passthrough, > meaning the host must be >= 4.2 and must feature a device tree with a combined > description. The guest will also be exposed with a combined description, > meaning only >= 4.2 guest are supported. It is not planned to support > separate node representation since assignment of the PHY is less > straigtforward. > > - the XGMAC/PHY node depends on 2 clock nodes (DMA and PTP). > The code checks those clocks are fixed to make sure they cannot be > switched off at some point after the native driver gets unbound. > > - there are many property values to populate on guest side. Most of them > cannot be hardcoded. That series proposes a way to parse the host device > tree blob and retrieve host values to feed guest representation. Current > approach relies on dtc binary availability plus libfdt usage. > Other alternatives were discussed in: > http://www.spinics.net/lists/kvm-arm/msg16648.html. > > - Currently host booted with ACPI is not supported. I won't pretend to know all the politics in the ARM space, but doesn't this last bullet sort of imply that this is dead-on-arrival code? Maybe not in the embedded space, but certainly in the server space, I thought ACPI was declared the winner. Thanks, Alex