From nobody Sun May 5 11:05:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1587492041; cv=none; d=zohomail.com; s=zohoarc; b=Ji9U2YvbdZN4y66VPDnJiZCj0ckdwfYaUOWwE7zvynO6U/URcb80S2XeyHw0940Klb3d9yxV5OOybbb6A4LCbIpA1XzqHVKp3J2sSXm45RY/fT4yAHzjcXD/8kMOJYFgnjth9Fakn+9j1LYoMwI4+/RHEC4ZD37B5vLv9UyLH8c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1587492041; h=Content-Type:Content-Transfer-Encoding:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=CSxDBQhOe3lkJAJOen6wlRDA63tm7C/Er6PumyhdLEY=; b=gz2JwzF3mWrEzsZ0RYi5wF1ZJzRFZWUM0DS3K+88fpp+xxxShl3QrdUlPytWJyxEk4ASWyFgH623033Wr5o3G5IbJJv+m0SCMKGy4I6++6nm0xCJrkTsUxNXWsVy8okXrxp9ZheLS4yAaXlQdX4DJ93wB6ydQCIb/LEXdFS7wEM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1587492041421633.2206738972103; Tue, 21 Apr 2020 11:00:41 -0700 (PDT) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-5-QGDQuOj1OSKl8A6z4HWfSg-1; Tue, 21 Apr 2020 14:00:37 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id BE40F1005510; Tue, 21 Apr 2020 18:00:31 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id A994D9DD78; Tue, 21 Apr 2020 18:00:29 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id C95D99391A; Tue, 21 Apr 2020 18:00:26 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 03LI0PPM025471 for ; Tue, 21 Apr 2020 14:00:25 -0400 Received: by smtp.corp.redhat.com (Postfix) id 0542E1001B30; Tue, 21 Apr 2020 18:00:25 +0000 (UTC) Received: from localhost.localdomain (unknown [10.40.194.78]) by smtp.corp.redhat.com (Postfix) with ESMTP id 77C02100E7E3 for ; Tue, 21 Apr 2020 18:00:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1587492040; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=CSxDBQhOe3lkJAJOen6wlRDA63tm7C/Er6PumyhdLEY=; b=Ziyo2wsvDjnJB+3wCJbBxGqoknGbFYuoNB5P1w1T1tkwfFDN3AJyBRvQIxRZ7e/oTjpDvN LYNdnjZYDtxJn682P3ExrMBawjLSLzhs1gu2NT3ZR9SKdXNL+NTzWxfbZ6oLn0R5x/idjM w4yhXOzj2jqi/pYGZmfXhlhLnFTkihU= X-MC-Unique: QGDQuOj1OSKl8A6z4HWfSg-1 From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH v2] docs: Document reserved PCI addresses for QEMU Date: Tue, 21 Apr 2020 20:00:16 +0200 Message-Id: <065fe4414cc7c285769902ee7c9740bcfa1b0d93.1587491966.git.mprivozn@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" >From time to time we are asked which PCI addresses are reserved in QEMU. Let's document them in one place, it's easier than reconstructing the list from the code each time. Signed-off-by: Michal Privoznik Reviewed-by: Laine Stump --- diff to v1: - All Laine's comment worked in, hopefully. docs/pci-addresses.rst | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/docs/pci-addresses.rst b/docs/pci-addresses.rst index 885d50517a..4f123c7eb9 100644 --- a/docs/pci-addresses.rst +++ b/docs/pci-addresses.rst @@ -235,3 +235,53 @@ guest OS rather than as ``0001:08:00.1``, which is the= address of the device on the host. =20 Of course, all the rules and behaviors described above still apply. + + +Reserved addresses +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +Due to some historical reasons hypervisors might expect some PCI +devices to appear at certain addresses instead of 'random' ones. +For QEMU this is machine type and guest architecture dependant. +But to give you at least a gist here is list of reserved PCI +addresses: + +For ``I440FX`` the following devices are hard coded into QEMU and can't be +moved or eliminated: + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +0000:00:00.0 Host bridge +0000:00:01.0 ISA bridge +0000:00:01.1 primary IDE controller +0000:00:01.2 PIIX3 USB controller +0000:00:01.3 ACPI (power management) and SMBus controller +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +The following addresses will be used as default ones for the corresponding +devices (if the address is free or a different address wasn't provided for= the +device): + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D +0000:00:02.0 primary video card +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D + + +For ``Q35`` the following devices are hard coded into QEMU and can't be mo= ved +or eliminated: + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +0000:00:00.0 Host bridge +0000:00:1f.2 primary SATA controller +0000:00:1f.0 ISA bridge +0000:00:1f.3 SMBus +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +The following addresses will be used as default ones for the corresponding +devices (if the address is free or a different address wasn't provided for= the +device) because that's how real ``Q35`` would do it: + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D +0000:00:1a.0 USB2 controller +0000:00:1b.0 ICH9 sound chip +0000:00:1d.0 USB2 controller +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --=20 2.25.3