From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shannon Zhao Subject: [PATCH v5 17/17] Xen: EFI: Parse DT parameters for Xen specific UEFI Date: Fri, 4 Mar 2016 14:37:35 +0800 Message-ID: <1457073455-11516-18-git-send-email-zhaoshenglong__48138.0653255202$1457074243$gmane$org@huawei.com> References: <1457073455-11516-1-git-send-email-zhaoshenglong@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1457073455-11516-1-git-send-email-zhaoshenglong@huawei.com> 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, ard.biesheuvel@linaro.org, stefano.stabellini@citrix.com, david.vrabel@citrix.com Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, hangaohuai@huawei.com, linux-efi@vger.kernel.org, Matt Fleming , catalin.marinas@arm.com, will.deacon@arm.com, linux-kernel@vger.kernel.org, xen-devel@lists.xen.org, shannon.zhao@linaro.org List-Id: xen-devel@lists.xenproject.org RnJvbTogU2hhbm5vbiBaaGFvIDxzaGFubm9uLnpoYW9AbGluYXJvLm9yZz4KCkFkZCBhIG5ldyBm dW5jdGlvbiB0byBwYXJzZSBEVCBwYXJhbWV0ZXJzIGZvciBYZW4gc3BlY2lmaWMgVUVGSSBqdXN0 Cmxpa2UgdGhlIHdheSBmb3Igbm9ybWFsIFVFRkkuIFRoZW4gaXQgY291bGQgcmV1c2UgdGhlIGV4 aXN0aW5nIGNvZGVzLgoKSWYgWGVuIHN1cHBvcnRzIEVGSSwgaW5pdGlhbGl6ZSBydW50aW1lIHNl cnZpY2VzLgoKU2lnbmVkLW9mZi1ieTogU2hhbm5vbiBaaGFvIDxzaGFubm9uLnpoYW9AbGluYXJv Lm9yZz4KUmV2aWV3ZWQtYnk6IE1hdHQgRmxlbWluZyA8bWF0dEBjb2RlYmx1ZXByaW50LmNvLnVr PgpSZXZpZXdlZC1ieTogU3RlZmFubyBTdGFiZWxsaW5pIDxzdGVmYW5vLnN0YWJlbGxpbmlAZXUu Y2l0cml4LmNvbT4KLS0tCkNDOiBNYXR0IEZsZW1pbmcgPG1hdHRAY29kZWJsdWVwcmludC5jby51 az4KLS0tCiBhcmNoL2FybS94ZW4vZW5saWdodGVuLmMgICAgICAgICAgIHwgIDYgKysrKysKIGRy aXZlcnMvZmlybXdhcmUvZWZpL2FybS1ydW50aW1lLmMgfCAxNyArKysrKysrKystLS0tLQogZHJp dmVycy9maXJtd2FyZS9lZmkvZWZpLmMgICAgICAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDEy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3hlbi9lbmxpZ2h0ZW4uYyBiL2Fy Y2gvYXJtL3hlbi9lbmxpZ2h0ZW4uYwppbmRleCAwZTU0MmI4Li4wMjZiNWE3IDEwMDY0NAotLS0g YS9hcmNoL2FybS94ZW4vZW5saWdodGVuLmMKKysrIGIvYXJjaC9hcm0veGVuL2VubGlnaHRlbi5j CkBAIC0yNjEsNiArMjYxLDEyIEBAIHN0YXRpYyBpbnQgX19pbml0IGZkdF9maW5kX2h5cGVyX25v ZGUodW5zaWduZWQgbG9uZyBub2RlLCBjb25zdCBjaGFyICp1bmFtZSwKIAkgICAgIXN0cm5jbXAo aHlwZXJfbm9kZS5wcmVmaXgsIHMsIHN0cmxlbihoeXBlcl9ub2RlLnByZWZpeCkpKQogCQloeXBl cl9ub2RlLnZlcnNpb24gPSBzICsgc3RybGVuKGh5cGVyX25vZGUucHJlZml4KTsKIAorCWlmIChJ U19FTkFCTEVEKENPTkZJR19YRU5fRUZJKSkgeworCQkvKiBDaGVjayBpZiBYZW4gc3VwcG9ydHMg RUZJICovCisJCWlmIChvZl9nZXRfZmxhdF9kdF9zdWJub2RlX2J5X25hbWUobm9kZSwgInVlZmki KSA+IDApCisJCQlzZXRfYml0KEVGSV9QQVJBVklSVCwgJmVmaS5mbGFncyk7CisJfQorCiAJcmV0 dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2FybS1ydW50aW1l LmMgYi9kcml2ZXJzL2Zpcm13YXJlL2VmaS9hcm0tcnVudGltZS5jCmluZGV4IDZhZTIxZTQuLmFj NjA5YjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2FybS1ydW50aW1lLmMKKysr IGIvZHJpdmVycy9maXJtd2FyZS9lZmkvYXJtLXJ1bnRpbWUuYwpAQCAtMjcsNiArMjcsNyBAQAog I2luY2x1ZGUgPGFzbS9tbXUuaD4KICNpbmNsdWRlIDxhc20vcGdhbGxvYy5oPgogI2luY2x1ZGUg PGFzbS9wZ3RhYmxlLmg+CisjaW5jbHVkZSA8YXNtL3hlbi94ZW4tb3BzLmg+CiAKIGV4dGVybiB1 NjQgZWZpX3N5c3RlbV90YWJsZTsKIApAQCAtMTA3LDEzICsxMDgsMTkgQEAgc3RhdGljIGludCBf X2luaXQgYXJtX2VuYWJsZV9ydW50aW1lX3NlcnZpY2VzKHZvaWQpCiAJfQogCXNldF9iaXQoRUZJ X1NZU1RFTV9UQUJMRVMsICZlZmkuZmxhZ3MpOwogCi0JaWYgKCFlZmlfdmlydG1hcF9pbml0KCkp IHsKLQkJcHJfZXJyKCJObyBVRUZJIHZpcnR1YWwgbWFwcGluZyB3YXMgaW5zdGFsbGVkIC0tIHJ1 bnRpbWUgc2VydmljZXMgd2lsbCBub3QgYmUgYXZhaWxhYmxlXG4iKTsKLQkJcmV0dXJuIC1FTk9N RU07CisJaWYgKElTX0VOQUJMRUQoQ09ORklHX1hFTl9FRkkpICYmIGVmaV9lbmFibGVkKEVGSV9Q QVJBVklSVCkpIHsKKwkJLyogU2V0IHVwIHJ1bnRpbWUgc2VydmljZXMgZnVuY3Rpb24gcG9pbnRl cnMgZm9yIFhlbiBEb20wICovCisJCXhlbl9lZmlfcnVudGltZV9zZXR1cCgpOworCX0gZWxzZSB7 CisJCWlmICghZWZpX3ZpcnRtYXBfaW5pdCgpKSB7CisJCQlwcl9lcnIoIk5vIFVFRkkgdmlydHVh bCBtYXBwaW5nIHdhcyBpbnN0YWxsZWQgLS0gcnVudGltZSBzZXJ2aWNlcyB3aWxsIG5vdCBiZSBh dmFpbGFibGVcbiIpOworCQkJcmV0dXJuIC1FTk9NRU07CisJCX0KKworCQkvKiBTZXQgdXAgcnVu dGltZSBzZXJ2aWNlcyBmdW5jdGlvbiBwb2ludGVycyAqLworCQllZmlfbmF0aXZlX3J1bnRpbWVf c2V0dXAoKTsKIAl9CiAKLQkvKiBTZXQgdXAgcnVudGltZSBzZXJ2aWNlcyBmdW5jdGlvbiBwb2lu dGVycyAqLwotCWVmaV9uYXRpdmVfcnVudGltZV9zZXR1cCgpOwogCXNldF9iaXQoRUZJX1JVTlRJ TUVfU0VSVklDRVMsICZlZmkuZmxhZ3MpOwogCiAJZWZpLnJ1bnRpbWVfdmVyc2lvbiA9IGVmaS5z eXN0YWItPmhkci5yZXZpc2lvbjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2Vm aS5jIGIvZHJpdmVycy9maXJtd2FyZS9lZmkvZWZpLmMKaW5kZXggMmNkMzdkYS4uMTMyOGNiNyAx MDA2NDQKLS0tIGEvZHJpdmVycy9maXJtd2FyZS9lZmkvZWZpLmMKKysrIGIvZHJpdmVycy9maXJt d2FyZS9lZmkvZWZpLmMKQEAgLTUwMCwxMiArNTAwLDE0IEBAIGRldmljZV9pbml0Y2FsbChlZmlf bG9hZF9lZml2YXJzKTsKIAkJRklFTERfU0laRU9GKHN0cnVjdCBlZmlfZmR0X3BhcmFtcywgZmll bGQpIFwKIAl9CiAKLXN0YXRpYyBfX2luaXRkYXRhIHN0cnVjdCB7CitzdHJ1Y3QgcGFyYW1zIHsK IAljb25zdCBjaGFyIG5hbWVbMzJdOwogCWNvbnN0IGNoYXIgcHJvcG5hbWVbMzJdOwogCWludCBv ZmZzZXQ7CiAJaW50IHNpemU7Ci19IGR0X3BhcmFtc1tdID0geworfTsKKworc3RhdGljIHN0cnVj dCBwYXJhbXMgZmR0X3BhcmFtc1tdIF9faW5pdGRhdGEgPSB7CiAJVUVGSV9QQVJBTSgiU3lzdGVt IFRhYmxlIiwgImxpbnV4LHVlZmktc3lzdGVtLXRhYmxlIiwgc3lzdGVtX3RhYmxlKSwKIAlVRUZJ X1BBUkFNKCJNZW1NYXAgQWRkcmVzcyIsICJsaW51eCx1ZWZpLW1tYXAtc3RhcnQiLCBtbWFwKSwK IAlVRUZJX1BBUkFNKCJNZW1NYXAgU2l6ZSIsICJsaW51eCx1ZWZpLW1tYXAtc2l6ZSIsIG1tYXBf c2l6ZSksCkBAIC01MTMsMjQgKzUxNSw0NSBAQCBzdGF0aWMgX19pbml0ZGF0YSBzdHJ1Y3Qgewog CVVFRklfUEFSQU0oIk1lbU1hcCBEZXNjLiBWZXJzaW9uIiwgImxpbnV4LHVlZmktbW1hcC1kZXNj LXZlciIsIGRlc2NfdmVyKQogfTsKIAorc3RhdGljIHN0cnVjdCBwYXJhbXMgeGVuX2ZkdF9wYXJh bXNbXSBfX2luaXRkYXRhID0geworCVVFRklfUEFSQU0oIlN5c3RlbSBUYWJsZSIsICJ4ZW4sdWVm aS1zeXN0ZW0tdGFibGUiLCBzeXN0ZW1fdGFibGUpLAorCVVFRklfUEFSQU0oIk1lbU1hcCBBZGRy ZXNzIiwgInhlbix1ZWZpLW1tYXAtc3RhcnQiLCBtbWFwKSwKKwlVRUZJX1BBUkFNKCJNZW1NYXAg U2l6ZSIsICJ4ZW4sdWVmaS1tbWFwLXNpemUiLCBtbWFwX3NpemUpLAorCVVFRklfUEFSQU0oIk1l bU1hcCBEZXNjLiBTaXplIiwgInhlbix1ZWZpLW1tYXAtZGVzYy1zaXplIiwgZGVzY19zaXplKSwK KwlVRUZJX1BBUkFNKCJNZW1NYXAgRGVzYy4gVmVyc2lvbiIsICJ4ZW4sdWVmaS1tbWFwLWRlc2Mt dmVyIiwgZGVzY192ZXIpCit9OworCiBzdHJ1Y3QgcGFyYW1faW5mbyB7CiAJaW50IGZvdW5kOwog CXZvaWQgKnBhcmFtczsKKwlzdHJ1Y3QgcGFyYW1zICpkdF9wYXJhbXM7CisJaW50IHNpemU7CiB9 OwogCiBzdGF0aWMgaW50IF9faW5pdCBmZHRfZmluZF91ZWZpX3BhcmFtcyh1bnNpZ25lZCBsb25n IG5vZGUsIGNvbnN0IGNoYXIgKnVuYW1lLAogCQkJCSAgICAgICBpbnQgZGVwdGgsIHZvaWQgKmRh dGEpCiB7CiAJc3RydWN0IHBhcmFtX2luZm8gKmluZm8gPSBkYXRhOworCXN0cnVjdCBwYXJhbXMg KmR0X3BhcmFtcyA9IGluZm8tPmR0X3BhcmFtczsKIAljb25zdCB2b2lkICpwcm9wOwogCXZvaWQg KmRlc3Q7CiAJdTY0IHZhbDsKLQlpbnQgaSwgbGVuOworCWludCBpLCBsZW4sIG9mZnNldDsKIAot CWlmIChkZXB0aCAhPSAxIHx8IHN0cmNtcCh1bmFtZSwgImNob3NlbiIpICE9IDApCi0JCXJldHVy biAwOworCWlmIChlZmlfZW5hYmxlZChFRklfUEFSQVZJUlQpKSB7CisJCWlmIChkZXB0aCAhPSAx IHx8IHN0cmNtcCh1bmFtZSwgImh5cGVydmlzb3IiKSAhPSAwKQorCQkJcmV0dXJuIDA7CiAKLQlm b3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShkdF9wYXJhbXMpOyBpKyspIHsKKwkJb2Zmc2V0ID0g b2ZfZ2V0X2ZsYXRfZHRfc3Vibm9kZV9ieV9uYW1lKG5vZGUsICJ1ZWZpIik7CisJCWlmIChvZmZz ZXQgPCAwKQorCQkJcmV0dXJuIDA7CisJCW5vZGUgPSBvZmZzZXQ7CisJfSBlbHNlIHsKKwkJaWYg KGRlcHRoICE9IDEgfHwgc3RyY21wKHVuYW1lLCAiY2hvc2VuIikgIT0gMCkKKwkJCXJldHVybiAw OworCX0KKworCWZvciAoaSA9IDA7IGkgPCBpbmZvLT5zaXplOyBpKyspIHsKIAkJcHJvcCA9IG9m X2dldF9mbGF0X2R0X3Byb3Aobm9kZSwgZHRfcGFyYW1zW2ldLnByb3BuYW1lLCAmbGVuKTsKIAkJ aWYgKCFwcm9wKQogCQkJcmV0dXJuIDA7CkBAIC01NjEsMTIgKzU4NCwyMCBAQCBpbnQgX19pbml0 IGVmaV9nZXRfZmR0X3BhcmFtcyhzdHJ1Y3QgZWZpX2ZkdF9wYXJhbXMgKnBhcmFtcykKIAlpbmZv LmZvdW5kID0gMDsKIAlpbmZvLnBhcmFtcyA9IHBhcmFtczsKIAorCWlmIChlZmlfZW5hYmxlZChF RklfUEFSQVZJUlQpKSB7CisJCWluZm8uZHRfcGFyYW1zID0geGVuX2ZkdF9wYXJhbXM7CisJCWlu Zm8uc2l6ZSA9IEFSUkFZX1NJWkUoeGVuX2ZkdF9wYXJhbXMpOworCX0gZWxzZSB7CisJCWluZm8u ZHRfcGFyYW1zID0gZmR0X3BhcmFtczsKKwkJaW5mby5zaXplID0gQVJSQVlfU0laRShmZHRfcGFy YW1zKTsKKwl9CisKIAlyZXQgPSBvZl9zY2FuX2ZsYXRfZHQoZmR0X2ZpbmRfdWVmaV9wYXJhbXMs ICZpbmZvKTsKIAlpZiAoIWluZm8uZm91bmQpCiAJCXByX2luZm8oIlVFRkkgbm90IGZvdW5kLlxu Iik7CiAJZWxzZSBpZiAoIXJldCkKIAkJcHJfZXJyKCJDYW4ndCBmaW5kICclcycgaW4gZGV2aWNl IHRyZWUhXG4iLAotCQkgICAgICAgZHRfcGFyYW1zW2luZm8uZm91bmRdLm5hbWUpOworCQkgICAg ICAgaW5mby5kdF9wYXJhbXNbaW5mby5mb3VuZF0ubmFtZSk7CiAKIAlyZXR1cm4gcmV0OwogfQot LSAKMi4wLjQKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8v bGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK