From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shannon Zhao Subject: [PATCH v10 17/17] Xen: EFI: Parse DT parameters for Xen specific UEFI Date: Fri, 1 Apr 2016 23:49:15 +0800 Message-ID: <1459525755-36968-18-git-send-email-shannon.zhao__39512.7270058312$1459525995$gmane$org@linaro.org> References: <1459525755-36968-1-git-send-email-shannon.zhao@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1459525755-36968-1-git-send-email-shannon.zhao@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: linux-arm-kernel@lists.infradead.org, stefano.stabellini@citrix.com Cc: devicetree@vger.kernel.org, linux-efi@vger.kernel.org, Matt Fleming , catalin.marinas@arm.com, will.deacon@arm.com, linux-kernel@vger.kernel.org, peter.huangpeng@huawei.com, julien.grall@arm.com, david.vrabel@citrix.com, zhaoshenglong@huawei.com, xen-devel@lists.xen.org, shannon.zhao@linaro.org List-Id: xen-devel@lists.xenproject.org QWRkIGEgbmV3IGZ1bmN0aW9uIHRvIHBhcnNlIERUIHBhcmFtZXRlcnMgZm9yIFhlbiBzcGVjaWZp YyBVRUZJIGp1c3QKbGlrZSB0aGUgd2F5IGZvciBub3JtYWwgVUVGSS4gVGhlbiBpdCBjb3VsZCBy ZXVzZSB0aGUgZXhpc3RpbmcgY29kZXMuCgpJZiBYZW4gc3VwcG9ydHMgRUZJLCBpbml0aWFsaXpl IHJ1bnRpbWUgc2VydmljZXMuCgpDQzogTWF0dCBGbGVtaW5nIDxtYXR0QGNvZGVibHVlcHJpbnQu Y28udWs+ClNpZ25lZC1vZmYtYnk6IFNoYW5ub24gWmhhbyA8c2hhbm5vbi56aGFvQGxpbmFyby5v cmc+ClJldmlld2VkLWJ5OiBNYXR0IEZsZW1pbmcgPG1hdHRAY29kZWJsdWVwcmludC5jby51az4K UmV2aWV3ZWQtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3RlZmFuby5zdGFiZWxsaW5pQGV1LmNp dHJpeC5jb20+Ci0tLQogYXJjaC9hcm0veGVuL2VubGlnaHRlbi5jICAgICAgICAgICB8ICA2ICsr KysrCiBkcml2ZXJzL2Zpcm13YXJlL2VmaS9hcm0tcnVudGltZS5jIHwgMTcgKysrKysrKysrLS0t LS0KIGRyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5jICAgICAgICAgfCA0NSArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKy0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA1NiBpbnNlcnRpb25z KCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS94ZW4vZW5saWdodGVu LmMgYi9hcmNoL2FybS94ZW4vZW5saWdodGVuLmMKaW5kZXggMTNlM2U5Zi4uZTEzMDU2MiAxMDA2 NDQKLS0tIGEvYXJjaC9hcm0veGVuL2VubGlnaHRlbi5jCisrKyBiL2FyY2gvYXJtL3hlbi9lbmxp Z2h0ZW4uYwpAQCAtMjYxLDYgKzI2MSwxMiBAQCBzdGF0aWMgaW50IF9faW5pdCBmZHRfZmluZF9o eXBlcl9ub2RlKHVuc2lnbmVkIGxvbmcgbm9kZSwgY29uc3QgY2hhciAqdW5hbWUsCiAJICAgICFz dHJuY21wKGh5cGVyX25vZGUucHJlZml4LCBzLCBzdHJsZW4oaHlwZXJfbm9kZS5wcmVmaXgpKSkK IAkJaHlwZXJfbm9kZS52ZXJzaW9uID0gcyArIHN0cmxlbihoeXBlcl9ub2RlLnByZWZpeCk7CiAK KwlpZiAoSVNfRU5BQkxFRChDT05GSUdfWEVOX0VGSSkpIHsKKwkJLyogQ2hlY2sgaWYgWGVuIHN1 cHBvcnRzIEVGSSAqLworCQlpZiAob2ZfZ2V0X2ZsYXRfZHRfc3Vibm9kZV9ieV9uYW1lKG5vZGUs ICJ1ZWZpIikgPiAwKQorCQkJc2V0X2JpdChFRklfUEFSQVZJUlQsICZlZmkuZmxhZ3MpOworCX0K KwogCXJldHVybiAwOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9hcm0t cnVudGltZS5jIGIvZHJpdmVycy9maXJtd2FyZS9lZmkvYXJtLXJ1bnRpbWUuYwppbmRleCA2YWUy MWU0Li5hYzYwOWI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9hcm0tcnVudGlt ZS5jCisrKyBiL2RyaXZlcnMvZmlybXdhcmUvZWZpL2FybS1ydW50aW1lLmMKQEAgLTI3LDYgKzI3 LDcgQEAKICNpbmNsdWRlIDxhc20vbW11Lmg+CiAjaW5jbHVkZSA8YXNtL3BnYWxsb2MuaD4KICNp bmNsdWRlIDxhc20vcGd0YWJsZS5oPgorI2luY2x1ZGUgPGFzbS94ZW4veGVuLW9wcy5oPgogCiBl eHRlcm4gdTY0IGVmaV9zeXN0ZW1fdGFibGU7CiAKQEAgLTEwNywxMyArMTA4LDE5IEBAIHN0YXRp YyBpbnQgX19pbml0IGFybV9lbmFibGVfcnVudGltZV9zZXJ2aWNlcyh2b2lkKQogCX0KIAlzZXRf Yml0KEVGSV9TWVNURU1fVEFCTEVTLCAmZWZpLmZsYWdzKTsKIAotCWlmICghZWZpX3ZpcnRtYXBf aW5pdCgpKSB7Ci0JCXByX2VycigiTm8gVUVGSSB2aXJ0dWFsIG1hcHBpbmcgd2FzIGluc3RhbGxl ZCAtLSBydW50aW1lIHNlcnZpY2VzIHdpbGwgbm90IGJlIGF2YWlsYWJsZVxuIik7Ci0JCXJldHVy biAtRU5PTUVNOworCWlmIChJU19FTkFCTEVEKENPTkZJR19YRU5fRUZJKSAmJiBlZmlfZW5hYmxl ZChFRklfUEFSQVZJUlQpKSB7CisJCS8qIFNldCB1cCBydW50aW1lIHNlcnZpY2VzIGZ1bmN0aW9u IHBvaW50ZXJzIGZvciBYZW4gRG9tMCAqLworCQl4ZW5fZWZpX3J1bnRpbWVfc2V0dXAoKTsKKwl9 IGVsc2UgeworCQlpZiAoIWVmaV92aXJ0bWFwX2luaXQoKSkgeworCQkJcHJfZXJyKCJObyBVRUZJ IHZpcnR1YWwgbWFwcGluZyB3YXMgaW5zdGFsbGVkIC0tIHJ1bnRpbWUgc2VydmljZXMgd2lsbCBu b3QgYmUgYXZhaWxhYmxlXG4iKTsKKwkJCXJldHVybiAtRU5PTUVNOworCQl9CisKKwkJLyogU2V0 IHVwIHJ1bnRpbWUgc2VydmljZXMgZnVuY3Rpb24gcG9pbnRlcnMgKi8KKwkJZWZpX25hdGl2ZV9y dW50aW1lX3NldHVwKCk7CiAJfQogCi0JLyogU2V0IHVwIHJ1bnRpbWUgc2VydmljZXMgZnVuY3Rp b24gcG9pbnRlcnMgKi8KLQllZmlfbmF0aXZlX3J1bnRpbWVfc2V0dXAoKTsKIAlzZXRfYml0KEVG SV9SVU5USU1FX1NFUlZJQ0VTLCAmZWZpLmZsYWdzKTsKIAogCWVmaS5ydW50aW1lX3ZlcnNpb24g PSBlZmkuc3lzdGFiLT5oZHIucmV2aXNpb247CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Zpcm13YXJl L2VmaS9lZmkuYyBiL2RyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5jCmluZGV4IDNhNjllZDUuLjUx OWMwOTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5jCisrKyBiL2RyaXZl cnMvZmlybXdhcmUvZWZpL2VmaS5jCkBAIC00NjksMTIgKzQ2OSwxNCBAQCBkZXZpY2VfaW5pdGNh bGwoZWZpX2xvYWRfZWZpdmFycyk7CiAJCUZJRUxEX1NJWkVPRihzdHJ1Y3QgZWZpX2ZkdF9wYXJh bXMsIGZpZWxkKSBcCiAJfQogCi1zdGF0aWMgX19pbml0ZGF0YSBzdHJ1Y3Qgeworc3RydWN0IHBh cmFtcyB7CiAJY29uc3QgY2hhciBuYW1lWzMyXTsKIAljb25zdCBjaGFyIHByb3BuYW1lWzMyXTsK IAlpbnQgb2Zmc2V0OwogCWludCBzaXplOwotfSBkdF9wYXJhbXNbXSA9IHsKK307CisKK3N0YXRp YyBzdHJ1Y3QgcGFyYW1zIGZkdF9wYXJhbXNbXSBfX2luaXRkYXRhID0gewogCVVFRklfUEFSQU0o IlN5c3RlbSBUYWJsZSIsICJsaW51eCx1ZWZpLXN5c3RlbS10YWJsZSIsIHN5c3RlbV90YWJsZSks CiAJVUVGSV9QQVJBTSgiTWVtTWFwIEFkZHJlc3MiLCAibGludXgsdWVmaS1tbWFwLXN0YXJ0Iiwg bW1hcCksCiAJVUVGSV9QQVJBTSgiTWVtTWFwIFNpemUiLCAibGludXgsdWVmaS1tbWFwLXNpemUi LCBtbWFwX3NpemUpLApAQCAtNDgyLDI0ICs0ODQsNDUgQEAgc3RhdGljIF9faW5pdGRhdGEgc3Ry dWN0IHsKIAlVRUZJX1BBUkFNKCJNZW1NYXAgRGVzYy4gVmVyc2lvbiIsICJsaW51eCx1ZWZpLW1t YXAtZGVzYy12ZXIiLCBkZXNjX3ZlcikKIH07CiAKK3N0YXRpYyBzdHJ1Y3QgcGFyYW1zIHhlbl9m ZHRfcGFyYW1zW10gX19pbml0ZGF0YSA9IHsKKwlVRUZJX1BBUkFNKCJTeXN0ZW0gVGFibGUiLCAi eGVuLHVlZmktc3lzdGVtLXRhYmxlIiwgc3lzdGVtX3RhYmxlKSwKKwlVRUZJX1BBUkFNKCJNZW1N YXAgQWRkcmVzcyIsICJ4ZW4sdWVmaS1tbWFwLXN0YXJ0IiwgbW1hcCksCisJVUVGSV9QQVJBTSgi TWVtTWFwIFNpemUiLCAieGVuLHVlZmktbW1hcC1zaXplIiwgbW1hcF9zaXplKSwKKwlVRUZJX1BB UkFNKCJNZW1NYXAgRGVzYy4gU2l6ZSIsICJ4ZW4sdWVmaS1tbWFwLWRlc2Mtc2l6ZSIsIGRlc2Nf c2l6ZSksCisJVUVGSV9QQVJBTSgiTWVtTWFwIERlc2MuIFZlcnNpb24iLCAieGVuLHVlZmktbW1h cC1kZXNjLXZlciIsIGRlc2NfdmVyKQorfTsKKwogc3RydWN0IHBhcmFtX2luZm8gewogCWludCBm b3VuZDsKIAl2b2lkICpwYXJhbXM7CisJc3RydWN0IHBhcmFtcyAqZHRfcGFyYW1zOworCWludCBz aXplOwogfTsKIAogc3RhdGljIGludCBfX2luaXQgZmR0X2ZpbmRfdWVmaV9wYXJhbXModW5zaWdu ZWQgbG9uZyBub2RlLCBjb25zdCBjaGFyICp1bmFtZSwKIAkJCQkgICAgICAgaW50IGRlcHRoLCB2 b2lkICpkYXRhKQogewogCXN0cnVjdCBwYXJhbV9pbmZvICppbmZvID0gZGF0YTsKKwlzdHJ1Y3Qg cGFyYW1zICpkdF9wYXJhbXMgPSBpbmZvLT5kdF9wYXJhbXM7CiAJY29uc3Qgdm9pZCAqcHJvcDsK IAl2b2lkICpkZXN0OwogCXU2NCB2YWw7Ci0JaW50IGksIGxlbjsKKwlpbnQgaSwgbGVuLCBvZmZz ZXQ7CiAKLQlpZiAoZGVwdGggIT0gMSB8fCBzdHJjbXAodW5hbWUsICJjaG9zZW4iKSAhPSAwKQot CQlyZXR1cm4gMDsKKwlpZiAoZWZpX2VuYWJsZWQoRUZJX1BBUkFWSVJUKSkgeworCQlpZiAoZGVw dGggIT0gMSB8fCBzdHJjbXAodW5hbWUsICJoeXBlcnZpc29yIikgIT0gMCkKKwkJCXJldHVybiAw OwogCi0JZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZHRfcGFyYW1zKTsgaSsrKSB7CisJCW9m ZnNldCA9IG9mX2dldF9mbGF0X2R0X3N1Ym5vZGVfYnlfbmFtZShub2RlLCAidWVmaSIpOworCQlp ZiAob2Zmc2V0IDwgMCkKKwkJCXJldHVybiAwOworCQlub2RlID0gb2Zmc2V0OworCX0gZWxzZSB7 CisJCWlmIChkZXB0aCAhPSAxIHx8IHN0cmNtcCh1bmFtZSwgImNob3NlbiIpICE9IDApCisJCQly ZXR1cm4gMDsKKwl9CisKKwlmb3IgKGkgPSAwOyBpIDwgaW5mby0+c2l6ZTsgaSsrKSB7CiAJCXBy b3AgPSBvZl9nZXRfZmxhdF9kdF9wcm9wKG5vZGUsIGR0X3BhcmFtc1tpXS5wcm9wbmFtZSwgJmxl bik7CiAJCWlmICghcHJvcCkKIAkJCXJldHVybiAwOwpAQCAtNTMwLDEyICs1NTMsMjAgQEAgaW50 IF9faW5pdCBlZmlfZ2V0X2ZkdF9wYXJhbXMoc3RydWN0IGVmaV9mZHRfcGFyYW1zICpwYXJhbXMp CiAJaW5mby5mb3VuZCA9IDA7CiAJaW5mby5wYXJhbXMgPSBwYXJhbXM7CiAKKwlpZiAoZWZpX2Vu YWJsZWQoRUZJX1BBUkFWSVJUKSkgeworCQlpbmZvLmR0X3BhcmFtcyA9IHhlbl9mZHRfcGFyYW1z OworCQlpbmZvLnNpemUgPSBBUlJBWV9TSVpFKHhlbl9mZHRfcGFyYW1zKTsKKwl9IGVsc2Ugewor CQlpbmZvLmR0X3BhcmFtcyA9IGZkdF9wYXJhbXM7CisJCWluZm8uc2l6ZSA9IEFSUkFZX1NJWkUo ZmR0X3BhcmFtcyk7CisJfQorCiAJcmV0ID0gb2Zfc2Nhbl9mbGF0X2R0KGZkdF9maW5kX3VlZmlf cGFyYW1zLCAmaW5mbyk7CiAJaWYgKCFpbmZvLmZvdW5kKQogCQlwcl9pbmZvKCJVRUZJIG5vdCBm b3VuZC5cbiIpOwogCWVsc2UgaWYgKCFyZXQpCiAJCXByX2VycigiQ2FuJ3QgZmluZCAnJXMnIGlu IGRldmljZSB0cmVlIVxuIiwKLQkJICAgICAgIGR0X3BhcmFtc1tpbmZvLmZvdW5kXS5uYW1lKTsK KwkJICAgICAgIGluZm8uZHRfcGFyYW1zW2luZm8uZm91bmRdLm5hbWUpOwogCiAJcmV0dXJuIHJl dDsKIH0KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpo dHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK