Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E02FACA9EA1 for ; Fri, 18 Oct 2019 13:49:32 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BE043222BD for ; Fri, 18 Oct 2019 13:49:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BE043222BD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iLScR-0004jl-JH; Fri, 18 Oct 2019 13:48:39 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iLScQ-0004jY-FR for xen-devel@lists.xenproject.org; Fri, 18 Oct 2019 13:48:38 +0000 X-Inumbo-ID: fc57f292-f1ad-11e9-93f5-12813bfff9fa Received: from mx1.redhat.com (unknown [209.132.183.28]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id fc57f292-f1ad-11e9-93f5-12813bfff9fa; Fri, 18 Oct 2019 13:48:38 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 721463078467; Fri, 18 Oct 2019 13:48:37 +0000 (UTC) Received: from x1w.redhat.com (unknown [10.40.205.74]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BDF7060C4E; Fri, 18 Oct 2019 13:48:27 +0000 (UTC) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Date: Fri, 18 Oct 2019 15:47:37 +0200 Message-Id: <20191018134754.16362-4-philmd@redhat.com> In-Reply-To: <20191018134754.16362-1-philmd@redhat.com> References: <20191018134754.16362-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.41]); Fri, 18 Oct 2019 13:48:37 +0000 (UTC) Subject: [Xen-devel] [PATCH v2 03/20] piix4: Add a i8259 Interrupt Controller as specified in datasheet X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Marcel Apfelbaum , "Michael S. Tsirkin" , Paul Durrant , Paolo Bonzini , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , Aleksandar Markovic , Igor Mammedov , Anthony Perard , xen-devel@lists.xenproject.org, Aleksandar Rikalo , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno , Eduardo Habkost Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" RnJvbTogSGVydsOpIFBvdXNzaW5lYXUgPGhwb3Vzc2luQHJlYWN0b3Mub3JnPgoKQWRkIElTQSBp cnFzIGFzIHBpaXg0IGdwaW8gaW4sIGFuZCBDUFUgaW50ZXJydXB0IHJlcXVlc3QgYXMgcGlpeDQg Z3BpbyBvdXQuClJlbW92ZSBpODI1OSBpbnN0YW5jaWF0ZWQgaW4gbWFsdGEgYm9hcmQsIHRvIG5v dCBoYXZlIGl0IHR3aWNlLgoKV2UgY2FuIGFsc28gcmVtb3ZlIHRoZSBub3cgdW51c2VkIHBpaXg0 X2luaXQoKSBmdW5jdGlvbi4KCkFja2VkLWJ5OiBNaWNoYWVsIFMuIFRzaXJraW4gPG1zdEByZWRo YXQuY29tPgpBY2tlZC1ieTogUGFvbG8gQm9uemluaSA8cGJvbnppbmlAcmVkaGF0LmNvbT4KU2ln bmVkLW9mZi1ieTogSGVydsOpIFBvdXNzaW5lYXUgPGhwb3Vzc2luQHJlYWN0b3Mub3JnPgpNZXNz YWdlLUlkOiA8MjAxNzEyMTYwOTAyMjguMjg1MDUtOC1ocG91c3NpbkByZWFjdG9zLm9yZz4KUmV2 aWV3ZWQtYnk6IEFsZWtzYW5kYXIgTWFya292aWMgPGFtYXJrb3ZpY0B3YXZlY29tcC5jb20+CltQ TUQ6IHJlYmFzZWQsIHVwZGF0ZWQgaW5jbHVkZXMsIHVzZSBJU0FfTlVNX0lSUVMgaW4gZm9yIGxv b3BdClNpZ25lZC1vZmYtYnk6IFBoaWxpcHBlIE1hdGhpZXUtRGF1ZMOpIDxwaGlsbWRAcmVkaGF0 LmNvbT4KLS0tCiBody9pc2EvcGlpeDQuYyAgICAgICB8IDQzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0KIGh3L21pcHMvbWlwc19tYWx0YS5jIHwgMzIgKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1ZGUvaHcvaTM4Ni9wYy5oIHwgIDEgLQog MyBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9ody9pc2EvcGlpeDQuYyBiL2h3L2lzYS9waWl4NC5jCmluZGV4IGQwYjE4ZTA1ODYu LjljMzdjODVhZTIgMTAwNjQ0Ci0tLSBhL2h3L2lzYS9waWl4NC5jCisrKyBiL2h3L2lzYS9waWl4 NC5jCkBAIC0yNCw2ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgInFlbXUvb3NkZXAuaCIKKyNp bmNsdWRlICJody9pcnEuaCIKICNpbmNsdWRlICJody9pMzg2L3BjLmgiCiAjaW5jbHVkZSAiaHcv cGNpL3BjaS5oIgogI2luY2x1ZGUgImh3L2lzYS9pc2EuaCIKQEAgLTM2LDYgKzM3LDggQEAgUENJ RGV2aWNlICpwaWl4NF9kZXY7CiAKIHR5cGVkZWYgc3RydWN0IFBJSVg0U3RhdGUgewogICAgIFBD SURldmljZSBkZXY7CisgICAgcWVtdV9pcnEgY3B1X2ludHI7CisgICAgcWVtdV9pcnEgKmlzYTsK IAogICAgIC8qIFJlc2V0IENvbnRyb2wgUmVnaXN0ZXIgKi8KICAgICBNZW1vcnlSZWdpb24gcmNy X21lbTsKQEAgLTk0LDYgKzk3LDE4IEBAIHN0YXRpYyBjb25zdCBWTVN0YXRlRGVzY3JpcHRpb24g dm1zdGF0ZV9waWl4NCA9IHsKICAgICB9CiB9OwogCitzdGF0aWMgdm9pZCBwaWl4NF9yZXF1ZXN0 X2k4MjU5X2lycSh2b2lkICpvcGFxdWUsIGludCBpcnEsIGludCBsZXZlbCkKK3sKKyAgICBQSUlY NFN0YXRlICpzID0gb3BhcXVlOworICAgIHFlbXVfc2V0X2lycShzLT5jcHVfaW50ciwgbGV2ZWwp OworfQorCitzdGF0aWMgdm9pZCBwaWl4NF9zZXRfaTgyNTlfaXJxKHZvaWQgKm9wYXF1ZSwgaW50 IGlycSwgaW50IGxldmVsKQoreworICAgIFBJSVg0U3RhdGUgKnMgPSBvcGFxdWU7CisgICAgcWVt dV9zZXRfaXJxKHMtPmlzYVtpcnFdLCBsZXZlbCk7Cit9CisKIHN0YXRpYyB2b2lkIHBpaXg0X3Jj cl93cml0ZSh2b2lkICpvcGFxdWUsIGh3YWRkciBhZGRyLCB1aW50NjRfdCB2YWwsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGxlbikKIHsKQEAgLTEyNywyOSArMTQy LDM1IEBAIHN0YXRpYyBjb25zdCBNZW1vcnlSZWdpb25PcHMgcGlpeDRfcmNyX29wcyA9IHsKIHN0 YXRpYyB2b2lkIHBpaXg0X3JlYWxpemUoUENJRGV2aWNlICpkZXYsIEVycm9yICoqZXJycCkKIHsK ICAgICBQSUlYNFN0YXRlICpzID0gUElJWDRfUENJX0RFVklDRShkZXYpOworICAgIElTQUJ1cyAq aXNhX2J1czsKKyAgICBxZW11X2lycSAqaTgyNTlfb3V0X2lycTsKIAotICAgIGlmICghaXNhX2J1 c19uZXcoREVWSUNFKGRldiksIHBjaV9hZGRyZXNzX3NwYWNlKGRldiksCi0gICAgICAgICAgICAg ICAgICAgICBwY2lfYWRkcmVzc19zcGFjZV9pbyhkZXYpLCBlcnJwKSkgeworICAgIGlzYV9idXMg PSBpc2FfYnVzX25ldyhERVZJQ0UoZGV2KSwgcGNpX2FkZHJlc3Nfc3BhY2UoZGV2KSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgcGNpX2FkZHJlc3Nfc3BhY2VfaW8oZGV2KSwgZXJycCk7Cisg ICAgaWYgKCFpc2FfYnVzKSB7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBxZGV2X2lu aXRfZ3Bpb19pbl9uYW1lZChERVZJQ0UoZGV2KSwgcGlpeDRfc2V0X2k4MjU5X2lycSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiaXNhIiwgSVNBX05VTV9JUlFTKTsKKyAgICBxZGV2X2lu aXRfZ3Bpb19vdXRfbmFtZWQoREVWSUNFKGRldiksICZzLT5jcHVfaW50ciwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgImludHIiLCAxKTsKKwogICAgIG1lbW9yeV9yZWdpb25faW5pdF9p bygmcy0+cmNyX21lbSwgT0JKRUNUKGRldiksICZwaWl4NF9yY3Jfb3BzLCBzLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAicmVzZXQtY29udHJvbCIsIDEpOwogICAgIG1lbW9yeV9yZWdpb25f YWRkX3N1YnJlZ2lvbl9vdmVybGFwKHBjaV9hZGRyZXNzX3NwYWNlX2lvKGRldiksIDB4Y2Y5LAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzLT5yY3JfbWVtLCAxKTsK IAorICAgIC8qIGluaXRpYWxpemUgaTgyNTkgcGljICovCisgICAgaTgyNTlfb3V0X2lycSA9IHFl bXVfYWxsb2NhdGVfaXJxcyhwaWl4NF9yZXF1ZXN0X2k4MjU5X2lycSwgcywgMSk7CisgICAgcy0+ aXNhID0gaTgyNTlfaW5pdChpc2FfYnVzLCAqaTgyNTlfb3V0X2lycSk7CisKKyAgICAvKiBpbml0 aWFsaXplIElTQSBpcnFzICovCisgICAgaXNhX2J1c19pcnFzKGlzYV9idXMsIHMtPmlzYSk7CisK ICAgICBwaWl4NF9kZXYgPSBkZXY7CiB9CiAKLWludCBwaWl4NF9pbml0KFBDSUJ1cyAqYnVzLCBJ U0FCdXMgKippc2FfYnVzLCBpbnQgZGV2Zm4pCi17Ci0gICAgUENJRGV2aWNlICpkOwotCi0gICAg ZCA9IHBjaV9jcmVhdGVfc2ltcGxlX211bHRpZnVuY3Rpb24oYnVzLCBkZXZmbiwgdHJ1ZSwgIlBJ SVg0Iik7Ci0gICAgKmlzYV9idXMgPSBJU0FfQlVTKHFkZXZfZ2V0X2NoaWxkX2J1cyhERVZJQ0Uo ZCksICJpc2EuMCIpKTsKLSAgICByZXR1cm4gZC0+ZGV2Zm47Ci19Ci0KIHN0YXRpYyB2b2lkIHBp aXg0X2NsYXNzX2luaXQoT2JqZWN0Q2xhc3MgKmtsYXNzLCB2b2lkICpkYXRhKQogewogICAgIERl dmljZUNsYXNzICpkYyA9IERFVklDRV9DTEFTUyhrbGFzcyk7CmRpZmYgLS1naXQgYS9ody9taXBz L21pcHNfbWFsdGEuYyBiL2h3L21pcHMvbWlwc19tYWx0YS5jCmluZGV4IDRkOWM2NGIzNmEuLjdk MjVhYjZjMjMgMTAwNjQ0Ci0tLSBhL2h3L21pcHMvbWlwc19tYWx0YS5jCisrKyBiL2h3L21pcHMv bWlwc19tYWx0YS5jCkBAIC05Nyw3ICs5Nyw3IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBTeXNC dXNEZXZpY2UgcGFyZW50X29iajsKIAogICAgIE1JUFNDUFNTdGF0ZSBjcHM7Ci0gICAgcWVtdV9p cnEgKmk4MjU5OworICAgIHFlbXVfaXJxIGk4MjU5WzE2XTsKIH0gTWFsdGFTdGF0ZTsKIAogc3Rh dGljIElTQURldmljZSAqcGl0OwpAQCAtMTIzNSw4ICsxMjM1LDggQEAgdm9pZCBtaXBzX21hbHRh X2luaXQoTWFjaGluZVN0YXRlICptYWNoaW5lKQogICAgIGludDY0X3Qga2VybmVsX2VudHJ5LCBi b290bG9hZGVyX3J1bl9hZGRyOwogICAgIFBDSUJ1cyAqcGNpX2J1czsKICAgICBJU0FCdXMgKmlz YV9idXM7Ci0gICAgcWVtdV9pcnEgKmlzYV9pcnE7CiAgICAgcWVtdV9pcnEgY2J1c19pcnEsIGk4 MjU5X2lycTsKKyAgICBQQ0lEZXZpY2UgKnBjaTsKICAgICBpbnQgcGlpeDRfZGV2Zm47CiAgICAg STJDQnVzICpzbWJ1czsKICAgICBEcml2ZUluZm8gKmRpbmZvOwpAQCAtMTQwNywzMCArMTQwNywy NCBAQCB2b2lkIG1pcHNfbWFsdGFfaW5pdChNYWNoaW5lU3RhdGUgKm1hY2hpbmUpCiAgICAgLyog Qm9hcmQgSUQgPSAweDQyMCAoTWFsdGEgQm9hcmQgd2l0aCBDb3JlTFYpICovCiAgICAgc3RsX3Ao bWVtb3J5X3JlZ2lvbl9nZXRfcmFtX3B0cihiaW9zX2NvcHkpICsgMHgxMCwgMHgwMDAwMDQyMCk7 CiAKLSAgICAvKgotICAgICAqIFdlIGhhdmUgYSBjaXJjdWxhciBkZXBlbmRlbmN5IHByb2JsZW06 IHBjaV9idXMgZGVwZW5kcyBvbiBpc2FfaXJxLAotICAgICAqIGlzYV9pcnEgaXMgcHJvdmlkZWQg YnkgaTgyNTksIGk4MjU5IGRlcGVuZHMgb24gSVNBLCBJU0EgZGVwZW5kcwotICAgICAqIG9uIHBp aXg0LCBhbmQgcGlpeDQgZGVwZW5kcyBvbiBwY2lfYnVzLiAgVG8gc3RvcCB0aGUgY3ljbGUgd2Ug aGF2ZQotICAgICAqIHFlbXVfaXJxX3Byb3h5KCkgYWRkcyBhbiBleHRyYSBiaXQgb2YgaW5kaXJl Y3Rpb24sIGFsbG93aW5nIHVzCi0gICAgICogdG8gcmVzb2x2ZSB0aGUgaXNhX2lycSAtPiBpODI1 OSBkZXBlbmRlbmN5IGFmdGVyIGk4MjU5IGlzIGluaXRpYWxpemVkLgotICAgICAqLwotICAgIGlz YV9pcnEgPSBxZW11X2lycV9wcm94eSgmcy0+aTgyNTksIDE2KTsKLQogICAgIC8qIE5vcnRoYnJp ZGdlICovCi0gICAgcGNpX2J1cyA9IGd0NjQxMjBfcmVnaXN0ZXIoaXNhX2lycSk7CisgICAgcGNp X2J1cyA9IGd0NjQxMjBfcmVnaXN0ZXIocy0+aTgyNTkpOwogCiAgICAgLyogU291dGhicmlkZ2Ug Ki8KICAgICBpZGVfZHJpdmVfZ2V0KGhkLCBBUlJBWV9TSVpFKGhkKSk7CiAKLSAgICBwaWl4NF9k ZXZmbiA9IHBpaXg0X2luaXQocGNpX2J1cywgJmlzYV9idXMsIDgwKTsKKyAgICBwY2kgPSBwY2lf Y3JlYXRlX3NpbXBsZV9tdWx0aWZ1bmN0aW9uKHBjaV9idXMsIFBDSV9ERVZGTigxMCwgMCksCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlLCAiUElJWDQiKTsK KyAgICBkZXYgPSBERVZJQ0UocGNpKTsKKyAgICBpc2FfYnVzID0gSVNBX0JVUyhxZGV2X2dldF9j aGlsZF9idXMoZGV2LCAiaXNhLjAiKSk7CisgICAgcGlpeDRfZGV2Zm4gPSBwY2ktPmRldmZuOwog Ci0gICAgLyoKLSAgICAgKiBJbnRlcnJ1cHQgY29udHJvbGxlcgotICAgICAqIFRoZSA4MjU5IGlz IGF0dGFjaGVkIHRvIHRoZSBNSVBTIENQVSBJTlQwIHBpbiwgaWUgaW50ZXJydXB0IDIKLSAgICAg Ki8KLSAgICBzLT5pODI1OSA9IGk4MjU5X2luaXQoaXNhX2J1cywgaTgyNTlfaXJxKTsKKyAgICAv KiBJbnRlcnJ1cHQgY29udHJvbGxlciAqLworICAgIHFkZXZfY29ubmVjdF9ncGlvX291dF9uYW1l ZChkZXYsICJpbnRyIiwgMCwgaTgyNTlfaXJxKTsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IElT QV9OVU1fSVJRUzsgaSsrKSB7CisgICAgICAgIHMtPmk4MjU5W2ldID0gcWRldl9nZXRfZ3Bpb19p bl9uYW1lZChkZXYsICJpc2EiLCBpKTsKKyAgICB9CiAKLSAgICBpc2FfYnVzX2lycXMoaXNhX2J1 cywgcy0+aTgyNTkpOwogICAgIHBjaV9waWl4NF9pZGVfaW5pdChwY2lfYnVzLCBoZCwgcGlpeDRf ZGV2Zm4gKyAxKTsKICAgICBwY2lfY3JlYXRlX3NpbXBsZShwY2lfYnVzLCBwaWl4NF9kZXZmbiAr IDIsICJwaWl4NC11c2ItdWhjaSIpOwogICAgIHNtYnVzID0gcGlpeDRfcG1faW5pdChwY2lfYnVz LCBwaWl4NF9kZXZmbiArIDMsIDB4MTEwMCwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvaHcvaTM4Ni9w Yy5oIGIvaW5jbHVkZS9ody9pMzg2L3BjLmgKaW5kZXggMzdiZmQ5NTExMy4uMzc0ZjNlODgzNSAx MDA2NDQKLS0tIGEvaW5jbHVkZS9ody9pMzg2L3BjLmgKKysrIGIvaW5jbHVkZS9ody9pMzg2L3Bj LmgKQEAgLTI4Niw3ICsyODYsNiBAQCBQQ0lCdXMgKmk0NDBmeF9pbml0KGNvbnN0IGNoYXIgKmhv c3RfdHlwZSwgY29uc3QgY2hhciAqcGNpX3R5cGUsCiBQQ0lCdXMgKmZpbmRfaTQ0MGZ4KHZvaWQp OwogLyogcGlpeDQuYyAqLwogZXh0ZXJuIFBDSURldmljZSAqcGlpeDRfZGV2OwotaW50IHBpaXg0 X2luaXQoUENJQnVzICpidXMsIElTQUJ1cyAqKmlzYV9idXMsIGludCBkZXZmbik7CiAKIC8qIHBj X3N5c2Z3LmMgKi8KIHZvaWQgcGNfc3lzdGVtX2ZsYXNoX2NyZWF0ZShQQ01hY2hpbmVTdGF0ZSAq cGNtcyk7Ci0tIAoyLjIxLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs