From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v4 02/27] ARM: GICv3 ITS: initialize host ITS Date: Mon, 3 Apr 2017 21:28:04 +0100 Message-ID: <20170403202829.7278-3-andre.przywara@arm.com> References: <20170403202829.7278-1-andre.przywara@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cv8Ye-0004tM-7A for xen-devel@lists.xenproject.org; Mon, 03 Apr 2017 20:26:36 +0000 In-Reply-To: <20170403202829.7278-1-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Julien Grall , Stefano Stabellini Cc: xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org TWFwIHRoZSByZWdpc3RlcnMgZnJhbWUgZm9yIGVhY2ggaG9zdCBJVFMgYW5kIHBvcHVsYXRlIHRo ZSBob3N0IElUUwpzdHJ1Y3R1cmUgd2l0aCBzb21lIHBhcmFtZXRlcnMgZGVzY3JpYmluZyB0aGUg c2l6ZSBvZiBjZXJ0YWluIHByb3BlcnRpZXMKbGlrZSB0aGUgbnVtYmVyIG9mIGJpdHMgZm9yIGRl dmljZSBJRHMuCkludHJvZHVjZSBhIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXIgdG8gbGltaXQgdGhl IG51bWJlciBvZiBkZXZpY2VzIFhlbgpzaG91bGQgaGFuZGxlLiBUaGlzIGRlZmF1bHRzIHRvIHRo ZSB2YWx1ZSBhZHZlcnRpc2VkIGJ5IGhhcmR3YXJlLgoKU2lnbmVkLW9mZi1ieTogQW5kcmUgUHJ6 eXdhcmEgPGFuZHJlLnByenl3YXJhQGFybS5jb20+Ci0tLQogZG9jcy9taXNjL3hlbi1jb21tYW5k LWxpbmUubWFya2Rvd24gfCAgOSArKysrKysrKwogeGVuL2FyY2gvYXJtL2dpYy12My1pdHMuYyAg ICAgICAgICAgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2FyY2gv YXJtL2dpYy12My5jICAgICAgICAgICAgICAgfCAgNSArKysrKwogeGVuL2luY2x1ZGUvYXNtLWFy bS9naWNfdjNfaXRzLmggICAgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCiA0IGZpbGVzIGNoYW5nZWQsIDk2IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2Nz L21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93biBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1s aW5lLm1hcmtkb3duCmluZGV4IDllYjg1ZDYuLjVhOTA2MjUgMTAwNjQ0Ci0tLSBhL2RvY3MvbWlz Yy94ZW4tY29tbWFuZC1saW5lLm1hcmtkb3duCisrKyBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1s aW5lLm1hcmtkb3duCkBAIC0xMTcyLDYgKzExNzIsMTUgQEAgYmFzZWQgaW50ZXJydXB0cy4gQW55 IGhpZ2hlciBJUlFzIHdpbGwgYmUgYXZhaWxhYmxlIGZvciB1c2UgdmlhIFBDSSBNU0kuCiAjIyMg bWF4Y3B1cwogPiBgPSA8aW50ZWdlcj5gCiAKKyMjIyBtYXhcX2l0c1xfZGV2aWNlXF9iaXRzCis+ IGA9IDxpbnRlZ2VyPmAKKworU3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBkZXZpY2Vz IHVzaW5nIE1TSXMgb24gdGhlIEFSTSBHSUN2MyBJVFMKK2NvbnRyb2xsZXIgdG8gYWxsb2NhdGUg dGFibGUgZW50cmllcyBmb3IuIEVhY2ggdGFibGUgZW50cnkgdXNlcyBhIGhhcmR3YXJlCitzcGVj aWZpYyBzaXplLCB0eXBpY2FsbHkgOCBvciAxNiBieXRlcy4gVGhpcyB2YWx1ZSBpcyBnaXZlbiBh cyB0aGUgbnVtYmVyCitvZiBiaXRzIHJlcXVpcmVkIHRvIGhvbGQgb25lIGRldmljZSBJRC4KK0Rl ZmF1bHRzIHRvIHRoZSBtYWNoaW5lIHByb3ZpZGVkIHZhbHVlLCB3aGljaCBpcyBhdCBtb3N0IDMy IGJpdHMuCisKICMjIyBtY2UKID4gYD0gPGludGVnZXI+YAogCmRpZmYgLS1naXQgYS94ZW4vYXJj aC9hcm0vZ2ljLXYzLWl0cy5jIGIveGVuL2FyY2gvYXJtL2dpYy12My1pdHMuYwppbmRleCA2YjAy MzQ5Li41OGM2YWMwIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vZ2ljLXYzLWl0cy5jCisrKyBi L3hlbi9hcmNoL2FybS9naWMtdjMtaXRzLmMKQEAgLTE5LDggKzE5LDEwIEBACiAgKi8KIAogI2lu Y2x1ZGUgPHhlbi9saWIuaD4KKyNpbmNsdWRlIDx4ZW4vbW0uaD4KICNpbmNsdWRlIDxhc20vZ2lj X3YzX2RlZnMuaD4KICNpbmNsdWRlIDxhc20vZ2ljX3YzX2l0cy5oPgorI2luY2x1ZGUgPGFzbS9p by5oPgogCiAvKgogICogTm8gbG9jayBoZXJlLCBhcyB0aGlzIGxpc3QgZ2V0cyBvbmx5IHBvcHVs YXRlZCB1cG9uIGJvb3Qgd2hpbGUgc2Nhbm5pbmcKQEAgLTMzLDYgKzM1LDQyIEBAIGJvb2wgZ2lj djNfaXRzX2hvc3RfaGFzX2l0cyh2b2lkKQogICAgIHJldHVybiAhbGlzdF9lbXB0eSgmaG9zdF9p dHNfbGlzdCk7CiB9CiAKKy8qIEFsbG93IGEgdXNlciB0byBsaW1pdCB0aGUgbnVtYmVyIG9mIGRl dmljZXMuICovCitzdGF0aWMgdW5zaWduZWQgaW50IG1heF9pdHNfZGV2aWNlX2JpdHMgPSAzMjsK K2ludGVnZXJfcGFyYW0oIm1heF9pdHNfZGV2aWNlX2JpdHMiLCBtYXhfaXRzX2RldmljZV9iaXRz KTsKKworc3RhdGljIGludCBnaWN2M19pdHNfaW5pdF9zaW5nbGVfaXRzKHN0cnVjdCBob3N0X2l0 cyAqaHdfaXRzKQoreworICAgIHVpbnQ2NF90IHJlZzsKKworICAgIGh3X2l0cy0+aXRzX2Jhc2Ug PSBpb3JlbWFwX25vY2FjaGUoaHdfaXRzLT5hZGRyLCBod19pdHMtPnNpemUpOworICAgIGlmICgg IWh3X2l0cy0+aXRzX2Jhc2UgKQorICAgICAgICByZXR1cm4gLUVOT01FTTsKKworICAgIHJlZyA9 IHJlYWRxX3JlbGF4ZWQoaHdfaXRzLT5pdHNfYmFzZSArIEdJVFNfVFlQRVIpOworICAgIGh3X2l0 cy0+ZGV2aWRfYml0cyA9IEdJVFNfVFlQRVJfREVWSUNFX0lEX0JJVFMocmVnKTsKKyAgICBod19p dHMtPmRldmlkX2JpdHMgPSBtaW4oaHdfaXRzLT5kZXZpZF9iaXRzLCBtYXhfaXRzX2RldmljZV9i aXRzKTsKKyAgICBod19pdHMtPmV2aWRfYml0cyA9IEdJVFNfVFlQRVJfRVZFTlRfSURfQklUUyhy ZWcpOworICAgIGh3X2l0cy0+aXR0ZV9zaXplID0gR0lUU19UWVBFUl9JVFRfU0laRShyZWcpOwor CisgICAgcmV0dXJuIDA7Cit9CisKK2ludCBnaWN2M19pdHNfaW5pdCh2b2lkKQoreworICAgIHN0 cnVjdCBob3N0X2l0cyAqaHdfaXRzOworICAgIGludCByZXQ7CisKKyAgICBsaXN0X2Zvcl9lYWNo X2VudHJ5KGh3X2l0cywgJmhvc3RfaXRzX2xpc3QsIGVudHJ5KQorICAgIHsKKyAgICAgICAgcmV0 ID0gZ2ljdjNfaXRzX2luaXRfc2luZ2xlX2l0cyhod19pdHMpOworICAgICAgICBpZiAoIHJldCAp CisgICAgICAgICAgICByZXR1cm4gcmV0OworICAgIH0KKworICAgIHJldHVybiAwOworfQorCiAv KiBTY2FuIHRoZSBEVCBmb3IgYW55IElUUyBub2RlcyBhbmQgY3JlYXRlIGEgbGlzdCBvZiBob3N0 IElUU2VzIG91dCBvZiBpdC4gKi8KIHZvaWQgZ2ljdjNfaXRzX2R0X2luaXQoY29uc3Qgc3RydWN0 IGR0X2RldmljZV9ub2RlICpub2RlKQogewpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2dpYy12 My5jIGIveGVuL2FyY2gvYXJtL2dpYy12My5jCmluZGV4IGI2MjYyOTguLmQzZDU3ODQgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL2FybS9naWMtdjMuYworKysgYi94ZW4vYXJjaC9hcm0vZ2ljLXYzLmMK QEAgLTE1OTAsNiArMTU5MCwxMSBAQCBzdGF0aWMgaW50IF9faW5pdCBnaWN2M19pbml0KHZvaWQp CiAgICAgc3Bpbl9sb2NrKCZnaWN2My5sb2NrKTsKIAogICAgIGdpY3YzX2Rpc3RfaW5pdCgpOwor CisgICAgcmVzID0gZ2ljdjNfaXRzX2luaXQoKTsKKyAgICBpZiAoIHJlcyApCisgICAgICAgIHBh bmljKCJHSUN2MzogSVRTOiBpbml0aWFsaXphdGlvbiBmYWlsZWQ6ICVkXG4iLCByZXMpOworCiAg ICAgcmVzID0gZ2ljdjNfY3B1X2luaXQoKTsKICAgICBnaWN2M19oeXBfaW5pdCgpOwogCmRpZmYg LS1naXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19pdHMuaCBiL3hlbi9pbmNsdWRlL2Fz bS1hcm0vZ2ljX3YzX2l0cy5oCmluZGV4IDc2NWE2NTUuLjdkODg5ODcgMTAwNjQ0Ci0tLSBhL3hl bi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0v Z2ljX3YzX2l0cy5oCkBAIC0yMCw2ICsyMCwzOCBAQAogI2lmbmRlZiBfX0FTTV9BUk1fSVRTX0hf XwogI2RlZmluZSBfX0FTTV9BUk1fSVRTX0hfXwogCisjZGVmaW5lIEdJVFNfQ1RMUiAgICAgICAg ICAgICAgICAgICAgICAgMHgwMDAKKyNkZWZpbmUgR0lUU19JSURSICAgICAgICAgICAgICAgICAg ICAgICAweDAwNAorI2RlZmluZSBHSVRTX1RZUEVSICAgICAgICAgICAgICAgICAgICAgIDB4MDA4 CisjZGVmaW5lIEdJVFNfQ0JBU0VSICAgICAgICAgICAgICAgICAgICAgMHgwODAKKyNkZWZpbmUg R0lUU19DV1JJVEVSICAgICAgICAgICAgICAgICAgICAweDA4OAorI2RlZmluZSBHSVRTX0NSRUFE UiAgICAgICAgICAgICAgICAgICAgIDB4MDkwCisjZGVmaW5lIEdJVFNfQkFTRVJfTlJfUkVHUyAg ICAgICAgICAgICAgOAorI2RlZmluZSBHSVRTX0JBU0VSMCAgICAgICAgICAgICAgICAgICAgIDB4 MTAwCisjZGVmaW5lIEdJVFNfQkFTRVIxICAgICAgICAgICAgICAgICAgICAgMHgxMDgKKyNkZWZp bmUgR0lUU19CQVNFUjIgICAgICAgICAgICAgICAgICAgICAweDExMAorI2RlZmluZSBHSVRTX0JB U0VSMyAgICAgICAgICAgICAgICAgICAgIDB4MTE4CisjZGVmaW5lIEdJVFNfQkFTRVI0ICAgICAg ICAgICAgICAgICAgICAgMHgxMjAKKyNkZWZpbmUgR0lUU19CQVNFUjUgICAgICAgICAgICAgICAg ICAgICAweDEyOAorI2RlZmluZSBHSVRTX0JBU0VSNiAgICAgICAgICAgICAgICAgICAgIDB4MTMw CisjZGVmaW5lIEdJVFNfQkFTRVI3ICAgICAgICAgICAgICAgICAgICAgMHgxMzgKKworLyogUmVn aXN0ZXIgYml0cyAqLworI2RlZmluZSBHSVRTX1RZUEVSX0RFVklEU19TSElGVCAgICAgICAgIDEz CisjZGVmaW5lIEdJVFNfVFlQRVJfREVWSURTX01BU0sgICAgICAgICAgKDB4MWZVTCA8PCBHSVRT X1RZUEVSX0RFVklEU19TSElGVCkKKyNkZWZpbmUgR0lUU19UWVBFUl9ERVZJQ0VfSURfQklUUyhy KSAgICAoKChyICYgR0lUU19UWVBFUl9ERVZJRFNfTUFTSykgPj4gXAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHSVRTX1RZUEVSX0RFVklEU19TSElGVCkg KyAxKQorCisjZGVmaW5lIEdJVFNfVFlQRVJfSURCSVRTX1NISUZUICAgICAgICAgOAorI2RlZmlu ZSBHSVRTX1RZUEVSX0lEQklUU19NQVNLICAgICAgICAgICgweDFmVUwgPDwgR0lUU19UWVBFUl9J REJJVFNfU0hJRlQpCisjZGVmaW5lIEdJVFNfVFlQRVJfRVZFTlRfSURfQklUUyhyKSAgICAgKCgo ciAmIEdJVFNfVFlQRVJfSURCSVRTX01BU0spID4+IFwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR0lUU19UWVBFUl9JREJJVFNfU0hJRlQpICsgMSkKKwor I2RlZmluZSBHSVRTX1RZUEVSX0lUVF9TSVpFX1NISUZUICAgICAgIDQKKyNkZWZpbmUgR0lUU19U WVBFUl9JVFRfU0laRV9NQVNLICAgICAgICAoMHhmVUwgPDwgR0lUU19UWVBFUl9JVFRfU0laRV9T SElGVCkKKyNkZWZpbmUgR0lUU19UWVBFUl9JVFRfU0laRShyKSAgICAgICAgICAoKCgocikgJiBH SVRTX1RZUEVSX0lUVF9TSVpFX01BU0spID4+IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHSVRTX1RZUEVSX0lUVF9TSVpFX1NISUZUKSArIDEpCisK ICNpbmNsdWRlIDx4ZW4vZGV2aWNlX3RyZWUuaD4KIAogLyogZGF0YSBzdHJ1Y3R1cmUgZm9yIGVh Y2ggaGFyZHdhcmUgSVRTICovCkBAIC0yOCw2ICs2MCwxMCBAQCBzdHJ1Y3QgaG9zdF9pdHMgewog ICAgIGNvbnN0IHN0cnVjdCBkdF9kZXZpY2Vfbm9kZSAqZHRfbm9kZTsKICAgICBwYWRkcl90IGFk ZHI7CiAgICAgcGFkZHJfdCBzaXplOworICAgIHZvaWQgX19pb21lbSAqaXRzX2Jhc2U7CisgICAg dW5zaWduZWQgaW50IGRldmlkX2JpdHM7CisgICAgdW5zaWduZWQgaW50IGV2aWRfYml0czsKKyAg ICB1bnNpZ25lZCBpbnQgaXR0ZV9zaXplOwogfTsKIAogCkBAIC00MCw2ICs3Niw5IEBAIHZvaWQg Z2ljdjNfaXRzX2R0X2luaXQoY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlKTsKIAog Ym9vbCBnaWN2M19pdHNfaG9zdF9oYXNfaXRzKHZvaWQpOwogCisvKiBJbml0aWFsaXplIHRoZSBo b3N0IHN0cnVjdHVyZXMgZm9yIHRoZSBob3N0IElUU2VzLiAqLworaW50IGdpY3YzX2l0c19pbml0 KHZvaWQpOworCiAjZWxzZQogCiBzdGF0aWMgTElTVF9IRUFEKGhvc3RfaXRzX2xpc3QpOwpAQCAt NTMsNiArOTIsMTEgQEAgc3RhdGljIGlubGluZSBib29sIGdpY3YzX2l0c19ob3N0X2hhc19pdHMo dm9pZCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK3N0YXRpYyBpbmxpbmUgaW50IGdpY3YzX2l0 c19pbml0KHZvaWQpCit7CisgICAgcmV0dXJuIDA7Cit9CisKICNlbmRpZiAvKiBDT05GSUdfSEFT X0lUUyAqLwogCiAjZW5kaWYKLS0gCjIuOS4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==