From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v2 26/27] ARM: vITS: create ITS subnodes for Dom0 DT Date: Thu, 16 Mar 2017 11:20:29 +0000 Message-ID: <20170316112030.20419-27-andre.przywara@arm.com> References: <20170316112030.20419-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1coTRF-0008TJ-UA for xen-devel@lists.xenproject.org; Thu, 16 Mar 2017 11:19:26 +0000 In-Reply-To: <20170316112030.20419-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: Stefano Stabellini , Julien Grall Cc: xen-devel@lists.xenproject.org, Shanker Donthineni , Vijay Kilari List-Id: xen-devel@lists.xenproject.org RG9tMCBleHBlY3RzIGFsbCBJVFNlcyBpbiB0aGUgc3lzdGVtIHRvIGJlIHByb3BhZ2F0ZWQgdG8g YmUgYWJsZSB0bwp1c2UgTVNJcy4KQ3JlYXRlIERvbTAgRFQgbm9kZXMgZm9yIGVhY2ggaGFyZHdh cmUgSVRTLCBrZWVwaW5nIHRoZSByZWdpc3RlciBmcmFtZQphZGRyZXNzIHRoZSBzYW1lLCBhcyB0 aGUgZG9vcmJlbGwgYWRkcmVzcyB0aGF0IHRoZSBEb20wIGRyaXZlcnMgcHJvZ3JhbQppbnRvIHRo ZSBCQVJzIGhhcyB0byBtYXRjaCB0aGUgaGFyZHdhcmUuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZSBQ cnp5d2FyYSA8YW5kcmUucHJ6eXdhcmFAYXJtLmNvbT4KLS0tCiB4ZW4vYXJjaC9hcm0vZ2ljLXYz LWl0cy5jICAgICAgICB8IDc4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIHhlbi9hcmNoL2FybS9naWMtdjMuYyAgICAgICAgICAgIHwgIDQgKystCiB4ZW4vaW5jbHVk ZS9hc20tYXJtL2dpY192M19pdHMuaCB8IDEzICsrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgOTQg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9n aWMtdjMtaXRzLmMgYi94ZW4vYXJjaC9hcm0vZ2ljLXYzLWl0cy5jCmluZGV4IGFhOWIxYjIuLmI4 ZmU1YTMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9naWMtdjMtaXRzLmMKKysrIGIveGVuL2Fy Y2gvYXJtL2dpYy12My1pdHMuYwpAQCAtMjAsNiArMjAsNyBAQAogCiAjaW5jbHVkZSA8eGVuL2xp Yi5oPgogI2luY2x1ZGUgPHhlbi9kZWxheS5oPgorI2luY2x1ZGUgPHhlbi9saWJmZHQvbGliZmR0 Lmg+CiAjaW5jbHVkZSA8eGVuL21tLmg+CiAjaW5jbHVkZSA8eGVuL3JidHJlZS5oPgogI2luY2x1 ZGUgPHhlbi9zY2hlZC5oPgpAQCAtODAyLDYgKzgwMyw4MyBAQCBpbnQgZ2ljdjNfbHBpX2NoYW5n ZV92Y3B1KHN0cnVjdCBkb21haW4gKmQsIHBhZGRyX3QgZG9vcmJlbGwsCiAgICAgcmV0dXJuIDA7 CiB9CiAKKy8qCisgKiBDcmVhdGUgdGhlIHJlc3BlY3RpdmUgZ3Vlc3QgRFQgbm9kZXMgZm9yIGEg bGlzdCBvZiBob3N0IElUU2VzLgorICogVGhpcyBjb3BpZXMgdGhlIHJlZyBwcm9wZXJ0eSwgc28g dGhlIGd1ZXN0IHNlZXMgdGhlIElUUyBhdCB0aGUgc2FtZSBhZGRyZXNzCisgKiBhcyB0aGUgaG9z dC4KKyAqIEdpdmluZyBOVUxMIGZvciB0aGUgaXRzX2xpc3Qgd2lsbCBtYWtlIGl0IHVzZSB0aGUg bGlzdCBvZiBob3N0IElUU2VzLgorICovCitpbnQgZ2ljdjNfaXRzX21ha2VfZHRfbm9kZXMoc3Ry dWN0IGxpc3RfaGVhZCAqaXRzX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3Qgc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz dHJ1Y3QgZHRfZGV2aWNlX25vZGUgKmdpYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 b2lkICpmZHQpCit7CisgICAgdWludDMyX3QgbGVuOworICAgIGludCByZXM7CisgICAgY29uc3Qg dm9pZCAqcHJvcCA9IE5VTEw7CisgICAgY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICppdHMg PSBOVUxMOworICAgIGNvbnN0IHN0cnVjdCBob3N0X2l0cyAqaXRzX2RhdGE7CisKKyAgICBpZiAo ICFpdHNfbGlzdCApCisgICAgICAgIGl0c19saXN0ID0gJmhvc3RfaXRzX2xpc3Q7CisKKyAgICBp ZiAoIGxpc3RfZW1wdHkoaXRzX2xpc3QpICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICAvKiBU aGUgc3ViLW5vZGVzIHJlcXVpcmUgdGhlIHJhbmdlcyBwcm9wZXJ0eSAqLworICAgIHByb3AgPSBk dF9nZXRfcHJvcGVydHkoZ2ljLCAicmFuZ2VzIiwgJmxlbik7CisgICAgaWYgKCAhcHJvcCApCisg ICAgeworICAgICAgICBwcmludGsoWEVOTE9HX0VSUiAiQ2FuJ3QgZmluZCByYW5nZXMgcHJvcGVy dHkgZm9yIHRoZSBnaWMgbm9kZVxuIik7CisgICAgICAgIHJldHVybiAtRkRUX0VSUl9YRU4oRU5P RU5UKTsKKyAgICB9CisKKyAgICByZXMgPSBmZHRfcHJvcGVydHkoZmR0LCAicmFuZ2VzIiwgcHJv cCwgbGVuKTsKKyAgICBpZiAoIHJlcyApCisgICAgICAgIHJldHVybiByZXM7CisKKyAgICBsaXN0 X2Zvcl9lYWNoX2VudHJ5KGl0c19kYXRhLCBpdHNfbGlzdCwgZW50cnkpCisgICAgeworICAgICAg ICBpdHMgPSBpdHNfZGF0YS0+ZHRfbm9kZTsKKworICAgICAgICByZXMgPSBmZHRfYmVnaW5fbm9k ZShmZHQsIGl0cy0+bmFtZSk7CisgICAgICAgIGlmICggcmVzICkKKyAgICAgICAgICAgIHJldHVy biByZXM7CisKKyAgICAgICAgcmVzID0gZmR0X3Byb3BlcnR5X3N0cmluZyhmZHQsICJjb21wYXRp YmxlIiwgImFybSxnaWMtdjMtaXRzIik7CisgICAgICAgIGlmICggcmVzICkKKyAgICAgICAgICAg IHJldHVybiByZXM7CisKKyAgICAgICAgcmVzID0gZmR0X3Byb3BlcnR5KGZkdCwgIm1zaS1jb250 cm9sbGVyIiwgTlVMTCwgMCk7CisgICAgICAgIGlmICggcmVzICkKKyAgICAgICAgICAgIHJldHVy biByZXM7CisKKyAgICAgICAgaWYgKCBpdHMtPnBoYW5kbGUgKQorICAgICAgICB7CisgICAgICAg ICAgICByZXMgPSBmZHRfcHJvcGVydHlfY2VsbChmZHQsICJwaGFuZGxlIiwgaXRzLT5waGFuZGxl KTsKKyAgICAgICAgICAgIGlmICggcmVzICkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmVzOwor ICAgICAgICB9CisKKyAgICAgICAgLyogVXNlIHRoZSBzYW1lIHJlZyByZWdpb25zIGFzIHRoZSBJ VFMgbm9kZSBpbiBob3N0IERUQi4gKi8KKyAgICAgICAgcHJvcCA9IGR0X2dldF9wcm9wZXJ0eShp dHMsICJyZWciLCAmbGVuKTsKKyAgICAgICAgaWYgKCAhcHJvcCApCisgICAgICAgIHsKKyAgICAg ICAgICAgIHByaW50ayhYRU5MT0dfRVJSICJHSUN2MzogQ2FuJ3QgZmluZCBJVFMgcmVnIHByb3Bl cnR5LlxuIik7CisgICAgICAgICAgICByZXMgPSAtRkRUX0VSUl9YRU4oRU5PRU5UKTsKKyAgICAg ICAgICAgIHJldHVybiByZXM7CisgICAgICAgIH0KKworICAgICAgICByZXMgPSBmZHRfcHJvcGVy dHkoZmR0LCAicmVnIiwgcHJvcCwgbGVuKTsKKyAgICAgICAgaWYgKCByZXMgKQorICAgICAgICAg ICAgcmV0dXJuIHJlczsKKworICAgICAgICBmZHRfZW5kX25vZGUoZmR0KTsKKyAgICB9CisKKyAg ICByZXR1cm4gcmVzOworfQorCiAvKiBTY2FuIHRoZSBEVCBmb3IgYW55IElUUyBub2RlcyBhbmQg Y3JlYXRlIGEgbGlzdCBvZiBob3N0IElUU2VzIG91dCBvZiBpdC4gKi8KIHZvaWQgZ2ljdjNfaXRz X2R0X2luaXQoY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlKQogewpkaWZmIC0tZ2l0 IGEveGVuL2FyY2gvYXJtL2dpYy12My5jIGIveGVuL2FyY2gvYXJtL2dpYy12My5jCmluZGV4IDgz YTgzOWEuLmY5MTkzYTYgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9naWMtdjMuYworKysgYi94 ZW4vYXJjaC9hcm0vZ2ljLXYzLmMKQEAgLTExNjcsOCArMTE2NywxMCBAQCBzdGF0aWMgaW50IGdp Y3YzX21ha2VfaHdkb21fZHRfbm9kZShjb25zdCBzdHJ1Y3QgZG9tYWluICpkLAogCiAgICAgcmVz ID0gZmR0X3Byb3BlcnR5KGZkdCwgInJlZyIsIG5ld19jZWxscywgbGVuKTsKICAgICB4ZnJlZShu ZXdfY2VsbHMpOworICAgIGlmICggcmVzICkKKyAgICAgICAgcmV0dXJuIHJlczsKIAotICAgIHJl dHVybiByZXM7CisgICAgcmV0dXJuIGdpY3YzX2l0c19tYWtlX2R0X25vZGVzKE5VTEwsIGQsIGdp YywgZmR0KTsKIH0KIAogc3RhdGljIGNvbnN0IGh3X2lycV9jb250cm9sbGVyIGdpY3YzX2hvc3Rf aXJxX3R5cGUgPSB7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19pdHMu aCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCmluZGV4IDU1ZWYxNDMuLjY3Y2Q0 OGQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCisrKyBiL3hl bi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCkBAIC0xNTQsNiArMTU0LDEyIEBAIGludCBn aWN2M19pdHNfc2V0dXBfY29sbGVjdGlvbih1bnNpZ25lZCBpbnQgY3B1KTsKICAqLwogaW50IHZn aWNfdjNfaXRzX2luaXRfdmlydHVhbChzdHJ1Y3QgZG9tYWluICpkLCBwYWRkcl90IGd1ZXN0X2Fk ZHIpOwogCisvKiBHaXZlbiBhIGxpc3Qgb2YgSVRTZXMsIGNyZWF0ZSB0aGUgYXBwcm9wcmlhdGUg RFQgbm9kZXMgZm9yIGEgZG9tYWluLiAqLworaW50IGdpY3YzX2l0c19tYWtlX2R0X25vZGVzKHN0 cnVjdCBsaXN0X2hlYWQgKml0c19saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IHN0cnVjdCBkb21haW4gKmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg c3RydWN0IGR0X2RldmljZV9ub2RlICpnaWMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg dm9pZCAqZmR0KTsKKwogLyoKICAqIE1hcCBhIGRldmljZSBvbiB0aGUgaG9zdCBieSBhbGxvY2F0 aW5nIGFuIElUVCBvbiB0aGUgaG9zdCAoSVRTKS4KICAqICJucl9ldmVudCIgc3BlY2lmaWVzIGhv dyBtYW55IGV2ZW50cyAoaW50ZXJydXB0cykgdGhpcyBkZXZpY2Ugd2lsbCBuZWVkLgpAQCAtMjIy LDYgKzIyOCwxMyBAQCBzdGF0aWMgaW5saW5lIGludCB2Z2ljX3YzX2l0c19pbml0X3ZpcnR1YWwo c3RydWN0IGRvbWFpbiAqZCwgcGFkZHJfdCBndWVzdF9hZGRyKQogewogICAgIHJldHVybiAwOwog fQorc3RhdGljIGlubGluZSBpbnQgZ2ljdjNfaXRzX21ha2VfZHRfbm9kZXMoc3RydWN0IGxpc3Rf aGVhZCAqaXRzX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpnaWMsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpmZHQpCit7CisgICAgcmV0dXJuIDA7Cit9CiAK ICNlbmRpZiAvKiBDT05GSUdfSEFTX0lUUyAqLwogCi0tIAoyLjkuMAoKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QK WGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=